Compare commits

..
101 Commits
Author SHA1 Message Date
Cian-H a7c424e7da Update dotfiles 2026-07-30 11:50:44 +01:00
Cian-H 330e48d09d Updated dotfiles 2026-07-30 11:43:21 +01:00
Cian-H 5e58401b07 Removed rye config 2026-07-30 11:36:40 +01:00
Cian-H 759b219c36 Added atuin config 2026-07-30 11:36:36 +01:00
Cian-H f1480817f9 Updated dotfiles 2026-07-30 09:51:10 +01:00
Cian-H ccb5714ecd Updated dotfiles 2026-07-30 09:21:59 +01:00
Cian-H 9f328e3e73 Flake bump 2026-07-28 09:40:42 +01:00
Cian-H e90109b4ee Flake bump 2026-07-27 11:54:21 +01:00
Cian-H fe279323a0 Update dotfiles 2026-07-27 11:52:59 +01:00
Cian-H 36f3f5b4c1 Updated Dotfiles 2026-07-21 15:51:46 +01:00
Cian-H 39572de780 Updated dotfiles 2026-07-20 12:36:24 +01:00
Cian-H 3a7fbf1cc8 Bump 2026-07-20 11:57:57 +01:00
Cian-H 2b95358efc Flake bump 2026-07-17 12:54:22 +01:00
Cian-H f3830a1fe9 Update dotfiles 2026-07-17 12:54:15 +01:00
Cian-H 16ab94d392 Update dotfiles 2026-07-17 12:43:57 +01:00
Cian-H 9a4ee42bf5 Module bump 2026-07-16 08:23:09 +01:00
Cian-H ab9a7210eb Updated dotfiles 2026-07-14 18:14:23 +01:00
Cian-H d0300e49a0 Updated justfile 2026-07-14 16:07:48 +01:00
Cian-H 37d453b59e Updated dotfiles 2026-07-14 15:52:20 +01:00
Cian-H dd2adf6b0d Dotfiles update 2026-07-14 14:36:20 +01:00
Cian-H 1a66a5db02 Added fennel to main config 2026-07-14 14:19:51 +01:00
Cian-H 2020356adb Updated dotfiles 2026-07-14 14:03:33 +01:00
Cian-H 7c772445dd Moved bat and extras to unstable, to fix deprecated dependency error 2026-07-14 13:06:24 +01:00
Cian-H bd2b503d32 Flake bump 2026-07-14 12:50:03 +01:00
Cian-H 30b7fc282d Updated dotfiles 2026-07-14 12:45:06 +01:00
Cian-H 5c0bc90983 Update dotfiles 2026-07-14 12:38:07 +01:00
Cian-H ba3bbc68a5 Added statix linter 2026-07-13 19:11:47 +01:00
Cian-H ad8a7e6f86 Nix lint 2026-07-13 19:10:28 +01:00
Cian-H 937987ccfc Updated dotfiles 2026-07-13 13:38:08 +01:00
Cian-H 1f42aca2a1 Added emacs and helix configs to dotfiles 2026-07-13 11:28:06 +01:00
Cian-H 7960f7bbcf Updated dotfiles 2026-07-13 09:35:02 +01:00
Cian-H 5e2dbf7416 Flake bump 2026-07-06 09:16:37 +01:00
Cian-H 6e69ebcc88 Removed extra nix helper install 2026-07-06 09:16:32 +01:00
Cian-H 66b9844813 Flake lock bump 2026-07-01 09:41:05 +01:00
Cian-H bf33ed4d2e Switched signal to unstable 2026-06-29 11:02:28 +01:00
Cian-H 18675a4e52 Reapply "Added ty to setup"
This reverts commit 544c9d66be.
2026-06-29 11:01:56 +01:00
Cian-H 544c9d66be Revert "Added ty to setup"
This reverts commit c87e692006.
2026-06-29 10:43:58 +01:00
Cian-H b0cbb2ee91 Flake bump 2026-06-29 10:39:53 +01:00
Cian-H c87e692006 Added ty to setup 2026-06-29 10:39:49 +01:00
Cian-H 1fc240fc4e Added nil to setup 2026-06-23 15:28:20 +01:00
Cian-H 5ada0d4411 Add nextcloud redis and global security headers 2026-06-23 01:50:51 +01:00
Cian-H 2dfe47eb03 Updated metric dependencies 2026-06-23 01:37:52 +01:00
Cian-H 95a7f0f306 Attempt to fix caddy config 2026-06-23 01:29:42 +01:00
Cian-H 7962c7e7f4 Moved persistent caddy config to declarative module 2026-06-23 01:23:19 +01:00
Cian-H 251ca3907e Attempt to fix metrics header 2026-06-23 01:07:03 +01:00
Cian-H 8bf836e16a Attempt to fix metrics 2026-06-23 00:59:26 +01:00
Cian-H 7996c72dfc Improved network security 2026-06-23 00:39:03 +01:00
Cian-H 5c741e2281 Added hardware acceleration to jellyfin 2026-06-23 00:38:46 +01:00
Cian-H 951fc52b68 Added cron jobs for nextcloud background jobs 2026-06-22 23:22:40 +01:00
Cian-H 2e9320fae9 Flake bump 2026-06-22 18:02:45 +01:00
Cian-H 7fe169b484 Flake bump 2026-06-18 10:24:05 +01:00
Cian-H 2cd03bb1b8 Added poppler for pdf previews in TUIs 2026-06-17 17:50:37 +01:00
Cian-H b9d4c24606 Added texstudio as default for tex/latex files 2026-06-17 17:41:44 +01:00
Cian-H d66814459a Added tex processing packages 2026-06-17 16:07:15 +01:00
Cian-H 47316a6976 Removed auto gc from homeserver 2026-06-17 15:45:52 +01:00
Cian-H 3b712cab95 Pinned noctalia to stable (for now) 2026-06-16 13:02:59 +01:00
Cian-H 35aa494701 Flake bump 2026-06-16 11:39:23 +01:00
Cian-H 7016937b2a Added git-lfs 2026-06-12 14:11:42 +01:00
Cian-H 35e84f6a6a Updated default apps 2026-06-10 10:14:55 +01:00
Cian-H 493906ebe7 Added imv as a fast image viewer 2026-06-10 09:59:44 +01:00
Cian-H 06d4c9a21e Switched zathura to sioyek 2026-06-10 09:59:31 +01:00
Cian-H 745c9818ea Added blender to packages 2026-06-08 09:10:57 +01:00
Cian-H 28f5b1bf9e Added inkscape 2026-06-08 09:08:23 +01:00
Cian-H 7fa03a75b1 Added image programs to packages 2026-06-08 09:06:37 +01:00
Cian-H 07df506d57 Flake lock update 2026-06-08 08:40:00 +01:00
Cian-H 2276038b4d Fixed incorrect config attribute 2026-06-02 23:40:35 +01:00
Cian-H 3d3f75eab6 Submodule update 2026-06-02 23:34:00 +01:00
Cian-H 39a5ec7a62 Updated ghostty service to not crash on update 2026-06-02 23:18:02 +01:00
Cian-H c8a5cc0ed4 Added antigravity for quick integration of LLMs for housekeeping and boilerplate 2026-06-02 22:50:11 +01:00
Cian-H 4a05717387 Fixed config issues after version update 2026-06-02 13:32:16 +01:00
Cian-H 5b4d807c4b Pinned nvidia driver to legacy_535 2026-06-02 11:10:15 +01:00
Cian-H 0417c3f49e Silenced yazi warning 2026-06-02 10:55:02 +01:00
Cian-H 1e58131f67 Further updates to yazi config 2026-06-02 10:54:06 +01:00
Cian-H ae27fb0bf0 Dotfiles bump 2026-06-02 10:42:33 +01:00
Cian-H 835caf855b Updated for new packages 2026-06-02 10:28:02 +01:00
Cian-H e2df2e71ce Updated dotfiles 2026-06-02 10:23:01 +01:00
Cian-H b28cb8dcb9 Updated dotfiles 2026-06-02 10:15:51 +01:00
Cian-H 0979c4403b Fixed UWSM entries PROPERLY 2026-06-02 09:58:13 +01:00
Cian-H 98ae337bff Removed mistaken attribute 2026-06-02 09:56:09 +01:00
Cian-H ad6090477f Updated UWSM entry 2026-06-02 09:51:40 +01:00
Cian-H f7fd552478 Flake bump after 26.05 update 2026-06-02 09:39:35 +01:00
Cian-H 8cab147fa5 Updated NixOS to 26.05 2026-06-02 09:35:41 +01:00
Cian-H 1598bdb509 Update 2026-05-29 16:48:47 +01:00
Cian-H 8eb608e3c6 Dotfile update 2026-05-22 15:23:06 +01:00
Cian-H 8aea16cb59 Dotfile update 2026-05-22 15:09:51 +01:00
Cian-H 1cf295ea5b dotfiles updates 2026-05-20 14:30:34 +01:00
Cian-H 8d59eb6a33 Dotfile update 2026-05-20 14:26:44 +01:00
Cian-H 3f1e8b5be9 Dotfile updates 2026-05-20 14:03:44 +01:00
Cian-H 541cf20b85 Added tree-sitter to config 2026-05-20 13:08:45 +01:00
Cian-H 36f12af898 Dotfiles bump 2026-05-20 12:57:04 +01:00
Cian-H e715109bcc Doftiles bump 2026-05-20 12:52:15 +01:00
Cian-H 363969cc9e Added typst to work setup 2026-05-19 15:27:37 +01:00
Cian-H 266eca6265 Added quarto to main software suite 2026-05-19 15:10:11 +01:00
Cian-H 441d6f060c Dotfiles update 2026-05-19 12:28:32 +01:00
Cian-H 058241d80b Dotfiles update 2026-05-19 10:36:37 +01:00
Cian-H 33ba2634da Another dotfile update 2026-05-18 11:36:41 +01:00
Cian-H 1c9fe2bb23 Flake lock bump 2026-05-18 11:20:47 +01:00
Cian-H aa7fb1a2c7 Updated dotfiles 2026-05-18 11:20:41 +01:00
Cian-H 7995a87f71 Updated dotfiles 2026-05-08 00:05:25 +01:00
Cian-H 4678cadd72 Updated dotfiles 2026-05-07 13:10:08 +01:00
Cian-H b2645b5996 Updated dotfiles 2026-05-06 10:41:10 +01:00
25 changed files with 484 additions and 138 deletions
Generated
+90 -34
View File
@@ -1,9 +1,30 @@
{ {
"nodes": { "nodes": {
"antigravity-nix": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1785225335,
"narHash": "sha256-xzUNPgjfG06GvFNiZq+68euMeP05xydLwSv1cuS8Gq4=",
"owner": "jacopone",
"repo": "antigravity-nix",
"rev": "ab4c80d1e6524389fb4ccc05744e9e617ef363c4",
"type": "github"
},
"original": {
"owner": "jacopone",
"repo": "antigravity-nix",
"type": "github"
}
},
"elephant": { "elephant": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"systems": "systems" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1770910218, "lastModified": 1770910218,
@@ -35,6 +56,24 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -42,16 +81,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1777851538, "lastModified": 1785119570,
"narHash": "sha256-Gp8qwTEYNoy2yvmErVGlvLOQvrtEECCAKbonW7VJef8=", "narHash": "sha256-Rgs2xKnGLFWQscxUaXX07oyZeuMDOHEbqDOsgliLFGM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "cc09c0f9b7eaa95c2d9827338a5eb03d32505ca5", "rev": "d4fd24667c8cbef124bb70a20380cab75ec8474d",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.11", "ref": "release-26.05",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
@@ -154,11 +193,11 @@
}, },
"nixpkgs-unstable_2": { "nixpkgs-unstable_2": {
"locked": { "locked": {
"lastModified": 1777954456, "lastModified": 1785090369,
"narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", "narHash": "sha256-m0pDuRJG7EDo9ri+4Ksu83VsI+PlxNC9lNBfydejce4=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", "rev": "624af665418d3c65d544145b4d34ad696439570e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -218,27 +257,27 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1777673416, "lastModified": 1785104993,
"narHash": "sha256-5c2POKPOjU40Kh0MirOdScBLG0bu9TAuPYAtPRNZMBs=", "narHash": "sha256-eKbrvPoAOFutbYMdbB3r5EQVmFxKv24iKqHPPUXA0gM=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "26ef669cffa904b6f6832ab57b77892a37c1a671", "rev": "8623c4c20aa4ca2f5fb81510d2944066c3fb0d96",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-25.11", "ref": "nixos-26.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1775888245, "lastModified": 1782175435,
"narHash": "sha256-nwASzrRDD1JBEu/o8ekKYEXm/oJW6EMCzCRdrwcLe90=", "narHash": "sha256-EMzXKmnOtBQ2MnvpiNOm7E+kOMvdPrIKaeg52Tip2Uk=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "13043924aaa7375ce482ebe2494338e058282925", "rev": "89570f24e97e614aa34aa9ab1c927b6578a43775",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -256,15 +295,16 @@
"noctalia-qs": "noctalia-qs" "noctalia-qs": "noctalia-qs"
}, },
"locked": { "locked": {
"lastModified": 1777859147, "lastModified": 1783017890,
"narHash": "sha256-0vCgxdwrxBkHmqNgJtUMGCFwSV5a6AgYdKAgBCtFFPM=", "narHash": "sha256-bAzrtN0GDMH0dOZkgeI3zSxfFs2rdD3pMuzOxvTF0bs=",
"owner": "noctalia-dev", "owner": "noctalia-dev",
"repo": "noctalia-shell", "repo": "noctalia-shell",
"rev": "6b48834dd6c3913d211476ab2f964f3fb100675e", "rev": "a48885b9fec485c903c955749a7da6e30147cd38",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "noctalia-dev", "owner": "noctalia-dev",
"ref": "legacy-v4",
"repo": "noctalia-shell", "repo": "noctalia-shell",
"type": "github" "type": "github"
} }
@@ -275,15 +315,15 @@
"noctalia", "noctalia",
"nixpkgs" "nixpkgs"
], ],
"systems": "systems_3", "systems": "systems_4",
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1777773024, "lastModified": 1780799499,
"narHash": "sha256-pLU+KB84A0Jei/vTD6pOS4Ovkmq3QDfPQHg1MlKsRqM=", "narHash": "sha256-YloRtLqJabzYUWvdLyh67zH4DZrR3kQj+dlQJwLPmPM=",
"owner": "noctalia-dev", "owner": "noctalia-dev",
"repo": "noctalia-qs", "repo": "noctalia-qs",
"rev": "d3e26ccd9eecde9139be00caf5dc2d4260fb31ee", "rev": "f308426239665e3bc3d624014e9295b2ae2f58ff",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -294,6 +334,7 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"antigravity-nix": "antigravity-nix",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixers-repo": "nixers-repo", "nixers-repo": "nixers-repo",
"nixpkgs": "nixpkgs_5", "nixpkgs": "nixpkgs_5",
@@ -307,11 +348,11 @@
"nixpkgs": "nixpkgs_6" "nixpkgs": "nixpkgs_6"
}, },
"locked": { "locked": {
"lastModified": 1777944972, "lastModified": 1783174389,
"narHash": "sha256-VfGRo1qTBKOe3s2gOv8LSoA6Fk19PvBlwQ1ECN0Evn8=", "narHash": "sha256-aCWC8ngycU7OdJrU2+Je3qf+1a2ykuBvpPhZT/9tXMc=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "c591bf665727040c6cc5cb409079acb22dcce33c", "rev": "f1406619a3884cd5c47992a70b8b35c9c0fcb4c9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -322,16 +363,16 @@
}, },
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1689347949, "lastModified": 1681028828,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems", "owner": "nix-systems",
"repo": "default-linux", "repo": "default",
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-systems", "owner": "nix-systems",
"repo": "default-linux", "repo": "default",
"type": "github" "type": "github"
} }
}, },
@@ -365,6 +406,21 @@
"type": "github" "type": "github"
} }
}, },
"systems_4": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
"owner": "nix-systems",
"repo": "default-linux",
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default-linux",
"type": "github"
}
},
"treefmt-nix": { "treefmt-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -374,11 +430,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1775636079, "lastModified": 1780220602,
"narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=", "narHash": "sha256-eynAfOmbmxJnkp7YewvCEbShNnnYJ9gLLqkzsYtBPeM=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba", "rev": "db947814a175b7ca6ded66e21383d938df01c227",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -394,7 +450,7 @@
"elephant" "elephant"
], ],
"nixpkgs": "nixpkgs_4", "nixpkgs": "nixpkgs_4",
"systems": "systems_2" "systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1771062828, "lastModified": 1771062828,
+12 -5
View File
@@ -9,19 +9,24 @@
inputs = { inputs = {
# Nixpkgs # Nixpkgs
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05";
# Nixpkgs-unstable # Nixpkgs-unstable
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
# Nixers # Nixers
nixers-repo.url = "github:Cian-H/Nixers"; nixers-repo.url = "github:Cian-H/Nixers";
# Home manager # Home manager
home-manager.url = "github:nix-community/home-manager/release-25.11"; home-manager.url = "github:nix-community/home-manager/release-26.05";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.inputs.nixpkgs.follows = "nixpkgs";
# Add sops for secret management # Add sops for secret management
sops-nix.url = "github:Mic92/sops-nix"; sops-nix.url = "github:Mic92/sops-nix";
# Add Noctalia input # Add Noctalia input
noctalia = { noctalia = {
url = "github:noctalia-dev/noctalia-shell"; url = "github:noctalia-dev/noctalia-shell/legacy-v4";
inputs.nixpkgs.follows = "nixpkgs";
};
# Antigravity, for managing busywork and chores
antigravity-nix = {
url = "github:jacopone/antigravity-nix";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
}; };
@@ -31,6 +36,7 @@
nixpkgs, nixpkgs,
nixpkgs-unstable, nixpkgs-unstable,
nixers-repo, nixers-repo,
antigravity-nix,
home-manager, home-manager,
... ...
} @ inputs: let } @ inputs: let
@@ -135,7 +141,7 @@
inherit inputs outputs; inherit inputs outputs;
unstablePkgs = import nixpkgs-unstable { unstablePkgs = import nixpkgs-unstable {
# We also need to do the same for unstable # We also need to do the same for unstable
system = pkgs.stdenv.hostPlatform.system; inherit (pkgs.stdenv.hostPlatform) system;
config = { config = {
allowUnfree = true; allowUnfree = true;
allowUnfreePredicate = _: true; allowUnfreePredicate = _: true;
@@ -170,8 +176,9 @@
}; };
}; };
nixers = inputs.nixers-repo.packages.${pkgs.stdenv.hostPlatform.system}; nixers = inputs.nixers-repo.packages.${pkgs.stdenv.hostPlatform.system};
antigravityPkgs = antigravity-nix.packages.${pkgs.stdenv.hostPlatform.system};
in { in {
inherit inputs outputs unstablePkgs nixers; inherit inputs outputs unstablePkgs nixers antigravityPkgs;
theme = worklaptopTheme {inherit pkgs unstablePkgs nixers;}; theme = worklaptopTheme {inherit pkgs unstablePkgs nixers;};
}; };
+38 -7
View File
@@ -51,6 +51,11 @@ in {
target = ".config/nushell/my_config"; target = ".config/nushell/my_config";
recursive = true; recursive = true;
}; };
"atuin" = {
source = ./dotfiles/dot_config/atuin;
target = ".config/atuin";
recursive = true;
};
"fish" = { "fish" = {
source = ./dotfiles/dot_config/fish; source = ./dotfiles/dot_config/fish;
target = ".config/fish"; target = ".config/fish";
@@ -64,7 +69,7 @@ in {
in in
! ( ! (
(lib.hasPrefix "*/nvim/*" name) (lib.hasPrefix "*/nvim/*" name)
|| (lib.hasPrefix "." baseName) || ((lib.hasPrefix "." baseName) && (baseName != ".hotpot.fnl"))
|| (lib.hasPrefix "devenv" baseName) || (lib.hasPrefix "devenv" baseName)
|| (lib.hasSuffix ".toml" baseName) || (lib.hasSuffix ".toml" baseName)
|| (lib.hasSuffix ".yml" baseName) || (lib.hasSuffix ".yml" baseName)
@@ -73,6 +78,38 @@ in {
target = ".config/nvim"; target = ".config/nvim";
recursive = true; recursive = true;
}; };
"helix" = {
source = lib.cleanSourceWith {
src = ./dotfiles/dot_config/helix;
filter = name: type: let
baseName = baseNameOf name;
in
! (
(lib.hasPrefix "*/helix/*" name)
|| (lib.hasPrefix "." baseName)
|| (lib.hasPrefix "devenv" baseName)
);
};
target = ".config/helix";
recursive = true;
};
"emacs" = {
source = lib.cleanSourceWith {
src = ./dotfiles/dot_config/emacs;
filter = name: type: let
baseName = baseNameOf name;
in
! (
(lib.hasPrefix "*/emacs/*" name)
|| (lib.hasPrefix "." baseName)
|| (lib.hasPrefix "devenv" baseName)
|| (lib.hasSuffix ".toml" baseName)
|| (lib.hasSuffix ".yml" baseName)
);
};
target = ".config/emacs";
recursive = true;
};
"noctalia" = { "noctalia" = {
source = lib.cleanSourceWith { source = lib.cleanSourceWith {
src = ./dotfiles/dot_config/noctalia; src = ./dotfiles/dot_config/noctalia;
@@ -103,11 +140,6 @@ in {
source = ./dotfiles/dot_config/Thunar; source = ./dotfiles/dot_config/Thunar;
target = ".config/Thunar"; target = ".config/Thunar";
}; };
"rye" = {
source = ./dotfiles/dot_config/.rye;
target = ".config/.rye";
recursive = true;
};
} }
// noctaliaPluginFiles // noctaliaPluginFiles
// customPluginFiles; // customPluginFiles;
@@ -122,7 +154,6 @@ in {
"bat".source = ./dotfiles/dot_config/bat; "bat".source = ./dotfiles/dot_config/bat;
"path.env".source = ./dotfiles/dot_config/path.env; "path.env".source = ./dotfiles/dot_config/path.env;
"fastfetch".source = ./dotfiles/dot_config/fastfetch; "fastfetch".source = ./dotfiles/dot_config/fastfetch;
"helix".source = ./dotfiles/dot_config/helix;
"home-manager".source = ./dotfiles/dot_config/home-manager; "home-manager".source = ./dotfiles/dot_config/home-manager;
"hypr".source = ./dotfiles/dot_config/hypr; "hypr".source = ./dotfiles/dot_config/hypr;
"just".source = ./dotfiles/dot_config/just; "just".source = ./dotfiles/dot_config/just;
+1
View File
@@ -12,6 +12,7 @@
pkgs.git-extras pkgs.git-extras
pkgs.git-credential-manager pkgs.git-credential-manager
pkgs.meld pkgs.meld
pkgs.statix
pkgs.unzip pkgs.unzip
unstablePkgs.devenv unstablePkgs.devenv
unstablePkgs.lazygit unstablePkgs.lazygit
+3 -2
View File
@@ -10,6 +10,7 @@
enable = true; enable = true;
package = unstablePkgs.yazi; package = unstablePkgs.yazi;
enableNushellIntegration = true; enableNushellIntegration = true;
shellWrapperName = "y";
}; };
# Manually place plugins for now, until home-manager updates for newer yazi versions # Manually place plugins for now, until home-manager updates for newer yazi versions
@@ -19,16 +20,16 @@
"yazi/theme.toml".source = ../dotfiles/dot_config/yazi/theme.toml; "yazi/theme.toml".source = ../dotfiles/dot_config/yazi/theme.toml;
"yazi/yazi.toml".source = ../dotfiles/dot_config/yazi/yazi.toml; "yazi/yazi.toml".source = ../dotfiles/dot_config/yazi/yazi.toml;
"yazi/plugins/chmod.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/chmod.yazi; "yazi/plugins/chmod.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/chmod.yazi;
"yazi/plugins/clipboard.yazi".source = ../dotfiles/dot_config/yazi/plugins/clipboard.yazi;
"yazi/plugins/full-border.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/full-border.yazi; "yazi/plugins/full-border.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/full-border.yazi;
"yazi/plugins/git.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/git.yazi; "yazi/plugins/git.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/git.yazi;
"yazi/plugins/hexyl.yazi".source = ../dotfiles/dot_config/yazi/plugins/hexyl.yazi;
"yazi/plugins/max-preview.yazi".source = ../dotfiles/dot_config/yazi/plugins/max-preview.yazi; "yazi/plugins/max-preview.yazi".source = ../dotfiles/dot_config/yazi/plugins/max-preview.yazi;
"yazi/plugins/mime-ext.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/mime-ext.yazi; "yazi/plugins/mime-ext.yazi".source = ../dotfiles/dot_config/yazi/plugins/core/mime-ext.yazi;
"yazi/plugins/ouch.yazi".source = ../dotfiles/dot_config/yazi/plugins/ouch.yazi; "yazi/plugins/ouch.yazi".source = ../dotfiles/dot_config/yazi/plugins/ouch.yazi;
"yazi/plugins/piper.yazi".source = ../dotfiles/dot_config/yazi/plugins/yazi-rs-plugins/piper.yazi;
"yazi/plugins/rich-preview.yazi".source = ../dotfiles/dot_config/yazi/plugins/rich-preview.yazi; "yazi/plugins/rich-preview.yazi".source = ../dotfiles/dot_config/yazi/plugins/rich-preview.yazi;
"yazi/plugins/starship.yazi".source = ../dotfiles/dot_config/yazi/plugins/starship.yazi; "yazi/plugins/starship.yazi".source = ../dotfiles/dot_config/yazi/plugins/starship.yazi;
"yazi/plugins/sudo.yazi".source = ../dotfiles/dot_config/yazi/plugins/sudo.yazi; "yazi/plugins/sudo.yazi".source = ../dotfiles/dot_config/yazi/plugins/sudo.yazi;
"yazi/plugins/wl-clipboard.yazi".source = ../dotfiles/dot_config/yazi/plugins/wl-clipboard.yazi;
"yazi/flavors/tokyo-night.yazi".source = ../dotfiles/dot_config/yazi/flavors/tokyo-night.yazi; "yazi/flavors/tokyo-night.yazi".source = ../dotfiles/dot_config/yazi/flavors/tokyo-night.yazi;
}; };
} }
+1 -1
View File
@@ -21,7 +21,7 @@
imports = [ imports = [
./containers/media.nix ./containers/media.nix
# ./containers/metrics.nix ./containers/metrics.nix
./containers/caddy.nix ./containers/caddy.nix
./containers/work_tools.nix ./containers/work_tools.nix
./containers/nextcloud.nix ./containers/nextcloud.nix
@@ -20,6 +20,7 @@
]; ];
volumes = [ volumes = [
"/home/cianh/caddy/config:/etc/caddy" "/home/cianh/caddy/config:/etc/caddy"
"${./caddy/Caddyfile.persistent}:/etc/caddy/Caddyfile.persistent:ro"
"/home/cianh/caddy/data:/data:Z" "/home/cianh/caddy/data:/data:Z"
"/home/cianh/caddy/logs:/var/log/caddy" "/home/cianh/caddy/logs:/var/log/caddy"
"/home/cianh/caddy/placeholder_site:/var/www/site:Z" "/home/cianh/caddy/placeholder_site:/var/www/site:Z"
@@ -0,0 +1,125 @@
(web_analytics) {
log {
output file /var/log/caddy/access.log
format json
}
}
(security_headers) {
header {
X-Content-Type-Options "nosniff"
X-Frame-Options "SAMEORIGIN"
Referrer-Policy "no-referrer"
Strict-Transport-Security "max-age=15552000; includeSubDomains; preload"
X-XSS-Protection "1; mode=block"
X-Permitted-Cross-Domain-Policies "none"
}
}
bulba.space {
root * /var/www/site
file_server
import web_analytics
import security_headers
}
freshrss.bulba.space {
reverse_proxy freshrss:80
import web_analytics
import security_headers
}
vikunja.bulba.space {
reverse_proxy vikunja:3456
import web_analytics
import security_headers
}
blog.bulba.space {
root * /var/www/blog
file_server
import web_analytics
import security_headers
}
gitea.bulba.space {
reverse_proxy gitea:3000
import web_analytics
import security_headers
}
jellyfin.bulba.space {
reverse_proxy jellyfin:8096
import web_analytics
import security_headers
}
nextcloud.bulba.space {
header {
X-Robots-Tag "noindex, nofollow"
}
request_body {
max_size 5GB
}
root * /var/www/nextcloud/
file_server
php_fastcgi nextcloud:9000 {
root /var/www/html/
# This is required to inform Nextcloud that it shouldn't be setting
# headers itself. That's the job of the reverse proxy
env modHeadersAvailable true
}
redir /.well-known/carddav /remote.php/dav 301 permanent
redir /.well-known/caldav /remote.php/dav 301 permanent
@forbidden {
path /.htaccess
path /data/*
path /config/*
path /db_structure
path /.xml
path /README
path /3rdparty/*
path /lib/*
path /templates/*
path /occ
path /console.php
}
respond @forbidden "Access Denied" 403 {
close
}
import web_analytics
import security_headers
}
metrics.bulba.space {
import security_headers
import web_analytics
basic_auth {
admin $2a$14$/pMYYzIlniwZgFO7IvNCveax0OXzRpzROnE5krjtiZi5OhECQwpNi
}
handle /ws* {
reverse_proxy goaccess:7890
}
handle {
root * /var/www/goaccess
file_server
}
}
collabora.bulba.space {
reverse_proxy https://nextcloud-collabora:9980 {
transport http {
tls
tls_insecure_skip_verify
}
}
import web_analytics
import security_headers
}
@@ -20,6 +20,7 @@
"/home/cianh/TV_Archive/jf_cache:/cache:Z" "/home/cianh/TV_Archive/jf_cache:/cache:Z"
]; ];
userNS = "keep-id"; userNS = "keep-id";
devices = [ "/dev/dri:/dev/dri" ];
}; };
}; };
} }
@@ -11,7 +11,7 @@
containers = { containers = {
goaccess = { goaccess = {
image = "docker.io/allinurl/goaccess:latest"; image = "docker.io/allinurl/goaccess:latest";
exec = "--output=/var/www/goaccess/index.html --log-file=/var/log/caddy/access.log --log-format=CADDY --tz=Europe/Dublin --anonymize-ip --real-time-html --ws-url=wss://metrics.bulba.space:443/ws --port=7890 --origin=metrics.bulba.space"; exec = "--output=/var/www/goaccess/index.html --log-file=/var/log/caddy/access.log --log-format=CADDY --tz=Europe/Dublin --anonymize-ip --real-time-html --ws-url=wss://metrics.bulba.space:443/ws --port=7890 --origin=https://metrics.bulba.space";
autoUpdate = "registry"; autoUpdate = "registry";
network = [ network = [
"proxy-net" "proxy-net"
@@ -20,6 +20,13 @@
"/home/cianh/caddy/logs:/var/log/caddy:Z" "/home/cianh/caddy/logs:/var/log/caddy:Z"
"/home/cianh/goaccess/site:/var/www/goaccess" "/home/cianh/goaccess/site:/var/www/goaccess"
]; ];
extraConfig = {
Unit = {
After = "podman-caddy.service";
Requires = "podman-caddy.service";
PartOf = "podman-caddy.service";
};
};
}; };
}; };
}; };
@@ -27,14 +27,15 @@
MYSQL_DATABASE = "nextcloud"; MYSQL_DATABASE = "nextcloud";
MYSQL_USER = "nextcloud"; MYSQL_USER = "nextcloud";
MYSQL_PASSWORD = config.sops.secrets.nextcloud-db_password.path; MYSQL_PASSWORD = config.sops.secrets.nextcloud-db_password.path;
REDIS_HOST = "nextcloud-redis";
}; };
volumes = [ volumes = [
"/home/cianh/Nextcloud/:/var/www/html" "/home/cianh/Nextcloud/:/var/www/html"
]; ];
extraConfig = { extraConfig = {
Unit = { Unit = {
After = "podman-nextcloud-db.service"; After = [ "podman-nextcloud-db.service" "podman-nextcloud-redis.service" ];
Requires = "podman-nextcloud-db.service"; Requires = [ "podman-nextcloud-db.service" "podman-nextcloud-redis.service" ];
}; };
}; };
}; };
@@ -52,6 +53,11 @@
"/home/cianh/nextcloud_db:/var/lib/mysql" "/home/cianh/nextcloud_db:/var/lib/mysql"
]; ];
}; };
nextcloud-redis = {
image = "docker.io/library/redis:alpine";
autoUpdate = "registry";
network = ["nextcloud-net"];
};
nextcloud-collabora = { nextcloud-collabora = {
image = "docker.io/collabora/code:latest"; image = "docker.io/collabora/code:latest";
autoUpdate = "registry"; autoUpdate = "registry";
@@ -59,9 +65,6 @@
"nextcloud-net" "nextcloud-net"
"proxy-net" "proxy-net"
]; ];
ports = [
"9980:9980"
];
environment = { environment = {
username = "admin"; username = "admin";
password = config.sops.secrets.nextcloud-collabora_password.path; password = config.sops.secrets.nextcloud-collabora_password.path;
@@ -72,4 +75,30 @@
}; };
}; };
}; };
systemd.user.services.nextcloud-cron = {
Unit = {
Description = "Nextcloud cron.php job";
Requires = [ "podman-nextcloud.service" ];
After = [ "podman-nextcloud.service" ];
};
Service = {
Type = "oneshot";
ExecStart = "${pkgs.podman}/bin/podman exec --user www-data nextcloud php -f /var/www/html/cron.php";
};
};
systemd.user.timers.nextcloud-cron = {
Unit = {
Description = "Run Nextcloud cron.php every 5 minutes";
};
Timer = {
OnBootSec = "5m";
OnUnitActiveSec = "5m";
Unit = "nextcloud-cron.service";
};
Install = {
WantedBy = [ "timers.target" ];
};
};
} }
@@ -71,7 +71,6 @@
"/home/cianh/freshrss/data:/var/www/FreshRSS/data" "/home/cianh/freshrss/data:/var/www/FreshRSS/data"
"/home/cianh/freshrss/extensions:/var/www/FreshRSS/extensions" "/home/cianh/freshrss/extensions:/var/www/FreshRSS/extensions"
]; ];
ports = ["3457:80"];
extraPodmanArgs = [ extraPodmanArgs = [
"--log-opt max-size=10m" "--log-opt max-size=10m"
]; ];
+45 -8
View File
@@ -7,13 +7,50 @@
unstablePkgs, unstablePkgs,
... ...
}: { }: {
xdg.mimeApps.defaultApplications = { xdg.mimeApps = {
"inode/directory" = "thunar.desktop"; enable = true;
"application/zip" = "xarchiver.desktop"; defaultApplications = {
"text/html" = "zen.desktop"; # Directories and Archives
"x-scheme-handler/http" = "zen.desktop"; "inode/directory" = "thunar.desktop";
"x-scheme-handler/https" = "zen.desktop"; "application/zip" = "xarchiver.desktop";
"x-scheme-handler/about" = "zen.desktop";
"x-scheme-handler/unknown" = "zen.desktop"; # PDFs
"application/pdf" = "sioyek.desktop";
# Web Browser (Vivaldi)
"text/html" = "vivaldi-stable.desktop";
"x-scheme-handler/http" = "vivaldi-stable.desktop";
"x-scheme-handler/https" = "vivaldi-stable.desktop";
"x-scheme-handler/about" = "vivaldi-stable.desktop";
"x-scheme-handler/unknown" = "vivaldi-stable.desktop";
# Text and Code (Neovide)
"text/plain" = "neovide.desktop";
"text/markdown" = "neovide.desktop";
# TeX and LaTeX (TeXstudio)
"text/x-tex" = "texstudio.desktop";
"text/x-latex" = "texstudio.desktop";
# Images (imv)
"image/jpeg" = "imv.desktop";
"image/png" = "imv.desktop";
"image/gif" = "imv.desktop";
"image/webp" = "imv.desktop";
"image/svg+xml" = "imv.desktop";
"image/tiff" = "imv.desktop";
"image/bmp" = "imv.desktop";
# Office Files (OnlyOffice)
"application/vnd.openxmlformats-officedocument.wordprocessingml.document" = "onlyoffice-desktopeditors.desktop"; # .docx
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" = "onlyoffice-desktopeditors.desktop"; # .xlsx
"application/vnd.openxmlformats-officedocument.presentationml.presentation" = "onlyoffice-desktopeditors.desktop"; # .pptx
"application/msword" = "onlyoffice-desktopeditors.desktop"; # .doc
"application/vnd.ms-excel" = "onlyoffice-desktopeditors.desktop"; # .xls
"application/vnd.ms-powerpoint" = "onlyoffice-desktopeditors.desktop"; # .ppt
"application/vnd.oasis.opendocument.text" = "onlyoffice-desktopeditors.desktop"; # .odt
"application/vnd.oasis.opendocument.spreadsheet" = "onlyoffice-desktopeditors.desktop"; # .ods
"application/vnd.oasis.opendocument.presentation" = "onlyoffice-desktopeditors.desktop"; # .odp
};
}; };
} }
+31 -8
View File
@@ -6,37 +6,50 @@
pkgs, pkgs,
unstablePkgs, unstablePkgs,
nixers, nixers,
antigravityPkgs,
... ...
}: let }: let
patchedQuarto = pkgs.quarto.overrideAttrs (oldAttrs: {
postPatch =
(oldAttrs.postPatch or "")
+ ''
substituteInPlace bin/quarto.js \
--replace-fail "syntax-highlighting" "highlight-style"
'';
});
in { in {
home.packages = [ home.packages = [
pkgs.bitwarden-desktop
pkgs.babashka pkgs.babashka
pkgs.bat-extras.batman unstablePkgs.bat-extras.batman
pkgs.bat-extras.batdiff unstablePkgs.bat-extras.batdiff
pkgs.bat-extras.batgrep unstablePkgs.bat-extras.batgrep
pkgs.bat-extras.prettybat unstablePkgs.bat-extras.prettybat
unstablePkgs.blender
pkgs.broot pkgs.broot
pkgs.clapper pkgs.clapper
pkgs.cliphist pkgs.cliphist
pkgs.distrobox pkgs.distrobox
pkgs.dvc pkgs.dvc
pkgs.feh pkgs.feh
unstablePkgs.gimp-with-plugins
pkgs.git-lfs pkgs.git-lfs
pkgs.go pkgs.go
unstablePkgs.gurk-rs unstablePkgs.gurk-rs
pkgs.has pkgs.has
pkgs.hyperfine pkgs.hyperfine
pkgs.imagemagick pkgs.imagemagick
pkgs.imv
unstablePkgs.inkscape
pkgs.jujutsu pkgs.jujutsu
unstablePkgs.krita
pkgs.kubectl pkgs.kubectl
pkgs.lnav pkgs.lnav
pkgs.lynx pkgs.lynx
pkgs.minikube pkgs.minikube
unstablePkgs.mission-center unstablePkgs.mission-center
pkgs.neovide pkgs.neovide
unstablePkgs.nil
pkgs.nix-tree pkgs.nix-tree
pkgs.nh
pkgs.nodejs_24 pkgs.nodejs_24
pkgs.nwg-look pkgs.nwg-look
unstablePkgs.obsidian unstablePkgs.obsidian
@@ -46,13 +59,20 @@ in {
unstablePkgs.podman-compose unstablePkgs.podman-compose
unstablePkgs.podman-desktop unstablePkgs.podman-desktop
unstablePkgs.podman-tui unstablePkgs.podman-tui
pkgs.poppler
pkgs.popsicle pkgs.popsicle
nixers.python-env nixers.python-env
patchedQuarto
nixers.rbw-autofill nixers.rbw-autofill
unstablePkgs.ruff unstablePkgs.ruff
pkgs.signal-desktop unstablePkgs.signal-desktop
pkgs.sioyek
unstablePkgs.sone unstablePkgs.sone
pkgs.sshs pkgs.sshs
pkgs.texliveFull
pkgs.texstudio
unstablePkgs.ty
unstablePkgs.typst
unstablePkgs.uv unstablePkgs.uv
pkgs.vial pkgs.vial
nixers.vivaldi-wayland nixers.vivaldi-wayland
@@ -63,7 +83,6 @@ in {
pkgs.xarchiver pkgs.xarchiver
pkgs.yubikey-agent pkgs.yubikey-agent
pkgs.yubikey-manager pkgs.yubikey-manager
pkgs.zathura
pkgs.zeal pkgs.zeal
unstablePkgs.zed-editor unstablePkgs.zed-editor
unstablePkgs.zotero unstablePkgs.zotero
@@ -79,5 +98,9 @@ in {
pkgs.steam-run pkgs.steam-run
pkgs.tree-sitter pkgs.tree-sitter
unstablePkgs.vimPlugins.mason-lspconfig-nvim unstablePkgs.vimPlugins.mason-lspconfig-nvim
# LLM Agentic DE
antigravityPkgs.google-antigravity-no-fhs
antigravityPkgs.google-antigravity-ide-no-fhs
antigravityPkgs.google-antigravity-cli
]; ];
} }
+1 -1
View File
@@ -15,8 +15,8 @@
Unit = { Unit = {
Description = "Ghostty Terminal Emulator"; Description = "Ghostty Terminal Emulator";
X-SwitchMethod = "keep-old"; X-SwitchMethod = "keep-old";
X-RestartIfChanged = false;
After = ["graphical-session.target"]; After = ["graphical-session.target"];
PartOf = ["graphical-session.target"];
}; };
Service = { Service = {
ExecStart = "${lib.getExe config.programs.ghostty.package}"; ExecStart = "${lib.getExe config.programs.ghostty.package}";
+13 -10
View File
@@ -12,16 +12,16 @@
gtk = { gtk = {
enable = true; enable = true;
iconTheme = { iconTheme = {
name = theme.iconTheme.name; inherit (theme.iconTheme) name;
package = theme.iconTheme.package; inherit (theme.iconTheme) package;
}; };
theme = { theme = {
name = theme.gtkTheme.name; inherit (theme.gtkTheme) name;
package = theme.gtkTheme.package; inherit (theme.gtkTheme) package;
}; };
cursorTheme = { cursorTheme = {
name = theme.cursorTheme.name; inherit (theme.cursorTheme) name;
package = theme.cursorTheme.package; inherit (theme.cursorTheme) package;
}; };
gtk2.extraConfig = '' gtk2.extraConfig = ''
gtk-theme-name="Tokyonight-Dark" gtk-theme-name="Tokyonight-Dark"
@@ -33,10 +33,13 @@
gtk-application-prefer-dark-theme=1 gtk-application-prefer-dark-theme=1
''; '';
}; };
gtk4.extraConfig = { gtk4 = {
Settings = '' inherit (config.gtk) theme;
gtk-application-prefer-dark-theme=1 extraConfig = {
''; Settings = ''
gtk-application-prefer-dark-theme=1
'';
};
}; };
}; };
+14
View File
@@ -39,6 +39,20 @@ commit-lock:
# Sync git and update flake inputs (override with git=false or flake=false) # Sync git and update flake inputs (override with git=false or flake=false)
prebuild: prebuild:
@if [ -n "$(git ls-files --others --exclude-standard)" ]; then \
echo "⚠️ WARNING: You have untracked files in your repository."; \
echo "Nix flakes cannot see untracked files. They will not be included in this build."; \
echo "The untracked files are:"; \
git ls-files --others --exclude-standard; \
echo ""; \
read -p "Do you want to run 'git add -A' before building? (y/N) " choice; \
if [[ "$choice" == [Yy]* ]]; then \
echo ">> Staging files..."; \
git add -A; \
else \
echo ">> Proceeding without staging. Untracked files will be ignored by Nix."; \
fi; \
fi
@if [ "{{git}}" == "true" ]; then \ @if [ "{{git}}" == "true" ]; then \
echo ">> Syncing Git..."; \ echo ">> Syncing Git..."; \
just _git-sync; \ just _git-sync; \
+4 -1
View File
@@ -8,7 +8,7 @@
}: { }: {
environment.systemPackages = [ environment.systemPackages = [
pkgs.atuin pkgs.atuin
pkgs.bat unstablePkgs.bat
pkgs.bottom pkgs.bottom
pkgs.delta pkgs.delta
pkgs.dust pkgs.dust
@@ -21,6 +21,7 @@
pkgs.git pkgs.git
pkgs.git-extras pkgs.git-extras
pkgs.git-filter-repo pkgs.git-filter-repo
pkgs.git-lfs
pkgs.glab pkgs.glab
pkgs.glow pkgs.glow
pkgs.gnupg pkgs.gnupg
@@ -28,6 +29,7 @@
pkgs.hexyl pkgs.hexyl
pkgs.killall pkgs.killall
pkgs.libsecret pkgs.libsecret
pkgs.luaPackages.fennel
pkgs.micro pkgs.micro
pkgs.netcat-gnu pkgs.netcat-gnu
pkgs.nix-index pkgs.nix-index
@@ -42,6 +44,7 @@
pkgs.rm-improved pkgs.rm-improved
pkgs.starship pkgs.starship
pkgs.tealdeer pkgs.tealdeer
pkgs.tree-sitter
pkgs.wget pkgs.wget
pkgs.wl-clipboard pkgs.wl-clipboard
pkgs.wtype pkgs.wtype
-5
View File
@@ -50,11 +50,6 @@
nix = { nix = {
registry = (lib.mapAttrs (_: flake: {inherit flake;})) ((lib.filterAttrs (_: lib.isType "flake")) inputs); registry = (lib.mapAttrs (_: flake: {inherit flake;})) ((lib.filterAttrs (_: lib.isType "flake")) inputs);
nixPath = ["nixpkgs=${inputs.nixpkgs}"]; nixPath = ["nixpkgs=${inputs.nixpkgs}"];
gc = {
automatic = true;
dates = "daily";
options = "--delete-older-than 14d";
};
settings = { settings = {
experimental-features = "nix-command flakes"; experimental-features = "nix-command flakes";
auto-optimise-store = true; auto-optimise-store = true;
+25 -18
View File
@@ -1,32 +1,39 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = config,
[ (modulesPath + "/installer/scan/not-detected.nix") lib,
]; pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "sdhci_pci" ]; boot = {
boot.initrd.kernelModules = [ ]; initrd.availableKernelModules = ["xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "sdhci_pci"];
boot.kernelModules = [ "kvm-intel" ]; initrd.kernelModules = [];
boot.extraModulePackages = [ ]; kernelModules = ["kvm-intel"];
extraModulePackages = [];
};
fileSystems."/" = fileSystems = {
{ device = "/dev/disk/by-uuid/b6757b17-330d-4820-a45f-bad5e7f06516"; "/" = {
device = "/dev/disk/by-uuid/b6757b17-330d-4820-a45f-bad5e7f06516";
fsType = "ext4"; fsType = "ext4";
}; };
"/boot" = {
fileSystems."/boot" = device = "/dev/disk/by-uuid/AAE3-7115";
{ device = "/dev/disk/by-uuid/AAE3-7115";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ]; options = ["fmask=0077" "dmask=0077"];
}; };
};
swapDevices = swapDevices = [
[ { device = "/dev/disk/by-uuid/173de2f3-09e8-4175-9f52-c8b6ea970ad5"; } {device = "/dev/disk/by-uuid/173de2f3-09e8-4175-9f52-c8b6ea970ad5";}
]; ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's
+1 -1
View File
@@ -42,13 +42,13 @@
]; ];
}; };
nvidia = { nvidia = {
branch = "legacy_535";
# Modesetting is required. # Modesetting is required.
modesetting.enable = true; modesetting.enable = true;
powerManagement.enable = false; powerManagement.enable = false;
powerManagement.finegrained = false; powerManagement.finegrained = false;
open = false; open = false;
nvidiaSettings = true; nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
prime = { prime = {
sync.enable = true; sync.enable = true;
intelBusId = "PCI:0:2:0"; intelBusId = "PCI:0:2:0";
+19 -17
View File
@@ -12,25 +12,27 @@
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"]; boot = {
boot.initrd.kernelModules = []; initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
boot.kernelModules = ["kvm-intel"]; initrd.kernelModules = [];
boot.extraModulePackages = []; kernelModules = ["kvm-intel"];
extraModulePackages = [];
fileSystems."/" = {
device = "/dev/disk/by-uuid/1eec95dd-9663-4a46-8b6f-10f7754322fa";
fsType = "ext4";
}; };
fileSystems."/boot/efi" = { fileSystems = {
device = "/dev/disk/by-uuid/056D-249D"; "/" = {
fsType = "vfat"; device = "/dev/disk/by-uuid/1eec95dd-9663-4a46-8b6f-10f7754322fa";
options = ["fmask=0022" "dmask=0022"]; fsType = "ext4";
}; };
"/boot/efi" = {
fileSystems."/home" = { device = "/dev/disk/by-uuid/056D-249D";
device = "/dev/disk/by-uuid/92c16a05-22ad-436d-a6ca-37d5f0c2cc3d"; fsType = "vfat";
fsType = "ext4"; options = ["fmask=0022" "dmask=0022"];
};
"/home" = {
device = "/dev/disk/by-uuid/92c16a05-22ad-436d-a6ca-37d5f0c2cc3d";
fsType = "ext4";
};
}; };
swapDevices = [ swapDevices = [
+2 -2
View File
@@ -26,8 +26,8 @@
nixers.walker nixers.walker
pkgs.wayland pkgs.wayland
pkgs.wayland-utils pkgs.wayland-utils
pkgs.xfce.thunar pkgs.thunar
pkgs.xfce.tumbler pkgs.tumbler
pkgs.xh pkgs.xh
unstablePkgs.ghostty unstablePkgs.ghostty
unstablePkgs.hyprland unstablePkgs.hyprland
+14 -10
View File
@@ -13,21 +13,25 @@ in {
programs = { programs = {
uwsm = { uwsm = {
enable = true; enable = true;
waylandCompositors.hyprland.binPath = lib.mkForce "/run/current-system/sw/bin/start-hyprland"; waylandCompositors.hyprland = {
binPath = lib.mkForce "/run/current-system/sw/bin/start-hyprland";
prettyName = "Hyprland";
comment = "Hyprland managed by UWSM";
};
}; };
regreet = { regreet = {
enable = true; enable = true;
theme = { theme = {
name = theme.gtkTheme.name; inherit (theme.gtkTheme) name;
package = theme.gtkTheme.package; inherit (theme.gtkTheme) package;
}; };
cursorTheme = { cursorTheme = {
name = theme.cursorTheme.name; inherit (theme.cursorTheme) name;
package = theme.cursorTheme.package; inherit (theme.cursorTheme) package;
}; };
iconTheme = { iconTheme = {
name = theme.iconTheme.name; inherit (theme.iconTheme) name;
package = theme.iconTheme.package; inherit (theme.iconTheme) package;
}; };
font = { font = {
name = "Noto Sans"; name = "Noto Sans";
@@ -54,9 +58,9 @@ in {
thunar = { thunar = {
enable = true; enable = true;
plugins = [ plugins = [
pkgs.xfce.thunar-volman pkgs.thunar-volman
pkgs.xfce.thunar-archive-plugin pkgs.thunar-archive-plugin
pkgs.xfce.thunar-media-tags-plugin pkgs.thunar-media-tags-plugin
]; ];
}; };
xfconf.enable = true; xfconf.enable = true;