feat: organize pkgs and remove abs dirs

This commit is contained in:
Jet Pham 2026-02-16 17:35:58 -08:00
parent 4e09fe222a
commit b954569da7
No known key found for this signature in database
5 changed files with 76 additions and 51 deletions

1
.gitignore vendored
View file

@ -1 +1,2 @@
.direnv
result

View file

@ -345,11 +345,13 @@
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.05"; # Did you read the comment?
# Set user profile picture for GNOME
# Set user profile picture for GNOME
system.activationScripts.script.text = ''
mkdir -p /var/lib/AccountsService/{icons,users}
if [ -f /home/jet/Documents/nix-config/cat.png ]; then
cp /home/jet/Documents/nix-config/cat.png /var/lib/AccountsService/icons/jet
img="/home/jet/Documents/nix-config/cat.png"
if [ -f "$img" ]; then
cp "$img" /var/lib/AccountsService/icons/jet
echo -e "[User]\nIcon=/var/lib/AccountsService/icons/jet\n" > /var/lib/AccountsService/users/jet
chown root:root /var/lib/AccountsService/users/jet
chmod 0600 /var/lib/AccountsService/users/jet

24
flake.lock generated
View file

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1771269455,
"narHash": "sha256-BZ31eN5F99YH6vkc4AhzKGE+tJgJ52kl8f01K7wCs8w=",
"lastModified": 1771531206,
"narHash": "sha256-1R3Wx6KUkMb4x4E5UOhW9p6rqiexzSGGWxZqSHqW5n0=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "5f1d42a97b19803041434f66681d5c44c9ae62e3",
"rev": "91be7cce763fa4022c7cf025a71b0c366d1b6e77",
"type": "github"
},
"original": {
@ -43,11 +43,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1771257191,
"narHash": "sha256-H1l+zHq+ZinWH7F1IidpJ2farmbfHXjaxAm1RKWE1KI=",
"lastModified": 1771423359,
"narHash": "sha256-yRKJ7gpVmXbX2ZcA8nFi6CMPkJXZGjie2unsiMzj3Ig=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "66e1a090ded57a0f88e2b381a7d4daf4a5722c3f",
"rev": "740a22363033e9f1bb6270fbfb5a9574067af15b",
"type": "github"
},
"original": {
@ -58,11 +58,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1771008912,
"narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=",
"lastModified": 1771369470,
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "a82ccc39b39b621151d6732718e3e250109076fa",
"rev": "0182a361324364ae3f436a63005877674cf45efb",
"type": "github"
},
"original": {
@ -88,11 +88,11 @@
]
},
"locked": {
"lastModified": 1771269662,
"narHash": "sha256-hOElvRG8mOCmYc9vhZOqnccqIJRoD6VR6vXOOj0attk=",
"lastModified": 1771562861,
"narHash": "sha256-6oT3rF68W8HERLXvFfEkpz8xpAVLKZsY1ZuR/BbDTO8=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "9294a1e30995dc950e2632296a74baae25252473",
"rev": "7783a3adf3d5a9599a82c75a44c7482e70398ac2",
"type": "github"
},
"original": {

View file

@ -19,6 +19,7 @@
nixos-hardware,
...
}: {
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt;
nixosConfigurations = {
framework = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";

View file

@ -4,10 +4,20 @@
imports = [ inputs.zen-browser.homeModules.default ];
home.username = "jet";
home.homeDirectory = "/home/jet";
home.stateVersion = "23.05";
# Define configuration directory
# Note: we can't use config.home.homeDirectory in the let block if we're also defining it in the set
# recursively without strict evaluation issues sometimes, but here it should be fine if we just use the string.
# Safer to just use /home/jet or home.homeDirectory if it was passed in.
# Actually, `config.home.homeDirectory` is safe to use inside simple attribute sets.
# Let's use a let binding for clarity.
# Configure GNOME settings
dconf.settings = {
dconf.settings = let
nixConfigDirectory = "${config.home.homeDirectory}/Documents/nix-config";
in {
"org/gnome/desktop/interface" = {
clock-format = "12h";
clock-show-weekday = true;
@ -19,10 +29,8 @@
enabled = true;
};
"org/gnome/desktop/background" = {
picture-uri =
"file:///home/jet/Documents/nix-config/cat.png";
picture-uri-dark =
"file:///home/jet/Documents/nix-config/cat.png";
picture-uri = "file://${nixConfigDirectory}/cat.png";
picture-uri-dark = "file://${nixConfigDirectory}/cat.png";
picture-options = "wallpaper";
};
"org/gnome/settings-daemon/plugins/power" = {
@ -64,46 +72,58 @@
};
home.packages = with pkgs; [
git
wget
helix
kitty
zellij
jujutsu
vlc
docker
nerd-fonts.commit-mono
qbittorrent-enhanced
gimp3
inkscape
# CLI Tools
bat
zoxide
eza
ripgrep
tree
wget
unzip
zoxide
direnv
nh
google-chrome
# Development
git
gh
jujutsu
helix
mkp224o
claude-code
nixfmt
# Terminal
kitty
zellij
nerd-fonts.commit-mono
fastfetch
# Desktop / GUI
vlc
gimp3
inkscape
qbittorrent-enhanced
signal-desktop
beeper
element-desktop
zulip
logseq
steam
prismlauncher
nemo-with-extensions
font-manager
antigravity-fhs
appimage-run
# GNOME Extensions
gnomeExtensions.hide-top-bar
gnomeExtensions.wifi-qrcode
gnomeExtensions.system-monitor-next
gnomeExtensions.clipboard-indicator
gnomeExtensions.emoji-copy
signal-desktop
tree
google-chrome
font-manager
steam
prismlauncher
appimage-run
gh
beeper
antigravity-fhs
mkp224o
claude-code
logseq
element-desktop
zulip
nemo-with-extensions
tor-browser
# Virtualization/Containerization
docker
];
@ -112,6 +132,8 @@
OCL_ICD_VENDORS = "/etc/OpenCL/vendors";
POCL_DEVICES = "cpu";
BROWSER = "zen";
# Set FLAKE for nh
NH_FLAKE = "${config.home.homeDirectory}/Documents/nix-config";
};
programs.helix = {
@ -205,14 +227,13 @@
jn = "jj new";
jdiff = "jj diff";
jsq = "jj squash";
nhs = "nh os switch ~/Documents/nix-config";
nhs = "nh os switch";
nd = "nix develop";
h = "hx";
vanity = "mkp224o-amd64-64-24k -d noisebridgevanitytor noisebridge{2..7}";
};
};
programs.kitty = {
enable = true;
settings = {