Compare commits

...

17 commits

Author SHA1 Message Date
1cfe62e4a7 Graphical env for family
Some checks failed
/ check (push) Failing after 2m7s
2025-01-09 09:57:15 -06:00
604e19a794 Woohoo!
Some checks failed
/ check (push) Failing after 2m11s
2025-01-08 10:40:08 -06:00
78fcbbf4d7 Merge remote-tracking branch 'origin/main'
Some checks failed
/ check (push) Failing after 2m4s
2025-01-08 09:58:21 -06:00
0b5232d97f Flat 2025-01-08 09:58:16 -06:00
3c861454fb Add ssh config stuff
Some checks failed
/ check (push) Has been cancelled
2025-01-08 09:57:59 -06:00
5204aa90b6 chore: flake update
Some checks failed
/ check (push) Failing after 2m33s
2025-01-06 21:54:41 -06:00
9dd59c8232 Include kde-connect for graphical workstations
Some checks failed
/ check (push) Failing after 2m12s
2025-01-06 11:09:08 -06:00
6e0f806538 Roll dragon secrets again for second re-install
Some checks failed
/ check (push) Has been cancelled
2025-01-06 11:04:37 -06:00
5b52d1d0c5 Disk silliness
Some checks failed
/ check (push) Failing after 2m14s
2025-01-05 01:33:54 -06:00
5c3f1cf54a Merge remote-tracking branch 'origin/main'
Some checks failed
/ check (push) Failing after 4s
2025-01-05 01:08:55 -06:00
782dc4da70 Thablet things 2025-01-05 01:08:38 -06:00
b45ffc7a10 Generic name
All checks were successful
/ check (push) Successful in 5m12s
2025-01-02 21:46:22 -06:00
40bf5452f3 More rust template fixes
All checks were successful
/ check (push) Successful in 5m12s
2025-01-02 21:35:58 -06:00
134c4a8fd8 Fix rust template
All checks were successful
/ check (push) Successful in 5m19s
2025-01-02 21:16:51 -06:00
92d9dd8249 Better solution for focus problems
All checks were successful
/ check (push) Successful in 5m18s
2025-01-01 14:37:12 -06:00
81344afdba A few hyprland nitpick fixes:
All checks were successful
/ check (push) Successful in 6m21s
- spawn floating terminal with super+shift+enter
- indicate that the system prefers dark themes via gsettings and the QT6 envvar
- set no_focus_fallback to false so that we always try to fallback to a focus-able window so we don't occasionally have to click on windows manually when shifting workspaces or other weird situations
2025-01-01 11:17:08 -06:00
5a123f274c Foxtrot boots
All checks were successful
/ check (push) Successful in 5m13s
2024-12-28 13:57:03 -06:00
15 changed files with 427 additions and 248 deletions

View file

@ -1,6 +1,7 @@
keys: keys:
# list any public keys here # list any public keys here
# if you need the private key, refer to the readme
# pass age-key | rg '# pub' # pass age-key | rg '# pub'
- &daniel age1stdue5q5teskee057ced6rh9pzzr93xsy66w4sc3zu49rgxl7cjshztt45 - &daniel age1stdue5q5teskee057ced6rh9pzzr93xsy66w4sc3zu49rgxl7cjshztt45
@ -8,7 +9,7 @@ keys:
# ssh host "nix shell nixpkgs#ssh-to-age -c $SHELL -c 'cat /etc/ssh/ssh_host_ed25519_key.pub | ssh-to-age'" # ssh host "nix shell nixpkgs#ssh-to-age -c $SHELL -c 'cat /etc/ssh/ssh_host_ed25519_key.pub | ssh-to-age'"
- &sshd-at-beefcake age1etv56f7kf78a55lxqtydrdd32dpmsjnxndf4u28qezxn6p7xt9esqvqdq7 - &sshd-at-beefcake age1etv56f7kf78a55lxqtydrdd32dpmsjnxndf4u28qezxn6p7xt9esqvqdq7
- &sshd-at-router age1zd7c3g5d20shdftq8ghqm0r92488dg4pdp4gulur7ex3zx2yq35ssxawpn - &sshd-at-router age1zd7c3g5d20shdftq8ghqm0r92488dg4pdp4gulur7ex3zx2yq35ssxawpn
- &sshd-at-dragon age12x49p3mwf27r9gdkfmfqu7lr6gwcwznlhcvcgmv8dz3gac2mkdgsp36y9p - &sshd-at-dragon age14ewl97x5g52ajf269cmmwzrgf22m9dsr7mw7czfa356qugvf4gvq5dttfv
- &ssh-foxtrot age1njnet9ltjuxasqv3ckn67r5natke6xgd8wlx8psf64pyc4duvurqhedw80 - &ssh-foxtrot age1njnet9ltjuxasqv3ckn67r5natke6xgd8wlx8psf64pyc4duvurqhedw80
# after updating this file, you may need to update the keys for any associated files like so: # after updating this file, you may need to update the keys for any associated files like so:

View file

@ -98,12 +98,20 @@ in rec {
disk = "nvme0n1"; disk = "nvme0n1";
swapSize = "32G"; swapSize = "32G";
esp = { esp = {
label = "EFI"; label = "disk-primary-ESP";
name = "EFI"; name = "disk-primary-ESP";
}; };
}; };
standard = {disk, ...}: { standard = {
esp ? {
label = "ESP";
size = "4G";
name = "ESP";
},
disk,
...
}: {
# this is my standard partitioning scheme for my machines: an LUKS-encrypted # this is my standard partitioning scheme for my machines: an LUKS-encrypted
# btrfs volume # btrfs volume
disko.devices = { disko.devices = {
@ -114,7 +122,7 @@ in rec {
content = { content = {
type = "gpt"; type = "gpt";
partitions = { partitions = {
ESP = ESP {size = "4G";}; ESP = ESP esp;
luks = { luks = {
size = "100%"; size = "100%";
content = { content = {
@ -152,6 +160,15 @@ in rec {
}; };
}; };
thablet = standard {
disk = "nvme0n1";
esp = {
label = "EFI";
size = "4G";
name = "EFI";
};
};
unencrypted = {disk, ...}: { unencrypted = {disk, ...}: {
disko.devices = { disko.devices = {
disk = { disk = {

View file

@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1731959031, "lastModified": 1736102453,
"narHash": "sha256-TGcvIjftziC1CjuiHCzrYDwmOoSFYIhdiKmLetzB5L0=", "narHash": "sha256-5qb4kb7Xbt8jJFL/oDqOor9Z2+E+A+ql3PiyDvsfWZ0=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "4468981c1c50999f315baa1508f0e53c4ee70c52", "rev": "4846091641f3be0ad7542086d52769bb7932bde6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -55,11 +55,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1732988076, "lastModified": 1736165297,
"narHash": "sha256-2uMaVAZn7fiyTUGhKgleuLYe5+EAAYB/diKxrM7g3as=", "narHash": "sha256-OT+sF4eNDFN/OdyUfIQwyp28+CFQL7PAdWn0wGU7F0U=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "2814a5224a47ca19e858e027f7e8bff74a8ea9f1", "rev": "76816af65d5294761636a838917e335992a52e0c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -171,14 +171,14 @@
}, },
"flake-utils_3": { "flake-utils_3": {
"inputs": { "inputs": {
"systems": "systems_4" "systems": "systems_5"
}, },
"locked": { "locked": {
"lastModified": 1726560853, "lastModified": 1731533236,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -190,17 +190,17 @@
"freetype2": { "freetype2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1687587065, "lastModified": 1723459814,
"narHash": "sha256-+Fh+/k+NWL5Ow9sDLtp8Cv/8rLNA1oByQQCIQS/bysY=", "narHash": "sha256-4l90lDtpgm5xlh2m7ifrqNy373DTRTULRkAzicrM93c=",
"owner": "wez", "owner": "freetype",
"repo": "freetype2", "repo": "freetype",
"rev": "e4586d960f339cf75e2e0b34aee30a0ed8353c0d", "rev": "42608f77f20749dd6ddc9e0536788eaad70ea4b5",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "wez", "owner": "freetype",
"repo": "freetype2", "ref": "VER-2-13-3",
"rev": "e4586d960f339cf75e2e0b34aee30a0ed8353c0d", "repo": "freetype",
"type": "github" "type": "github"
} }
}, },
@ -216,11 +216,11 @@
"zig": "zig" "zig": "zig"
}, },
"locked": { "locked": {
"lastModified": 1735330177, "lastModified": 1736186781,
"narHash": "sha256-JGoqNnhSr632eLo1NWKJWoZyepCZlXT0o1/2A6e1Ph4=", "narHash": "sha256-jiKBu/hVN6bKxShMCFS4RHXUQkRfmiuRYZXNc4iAiIc=",
"owner": "ghostty-org", "owner": "ghostty-org",
"repo": "ghostty", "repo": "ghostty",
"rev": "8111f5b9958c21e0157f63cc4ce2dfc2329c67ac", "rev": "037de64ea2c3f6201948236559524986f41a72f7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -235,15 +235,14 @@
"gitignore": "gitignore", "gitignore": "gitignore",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ]
"nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1732021966, "lastModified": 1735882644,
"narHash": "sha256-mnTbjpdqF0luOkou8ZFi2asa1N3AA2CchR/RqCNmsGE=", "narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "3308484d1a443fc5bc92012435d79e80458fe43c", "rev": "a5a961387e75ae44cc20f0a57ae463da5e959656",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -260,7 +259,7 @@
"slippi", "slippi",
"nixpkgs" "nixpkgs"
], ],
"nixpkgs-stable": "nixpkgs-stable_3" "nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1721042469, "lastModified": 1721042469,
@ -343,11 +342,11 @@
}, },
"hardware": { "hardware": {
"locked": { "locked": {
"lastModified": 1733139194, "lastModified": 1735388221,
"narHash": "sha256-PVQW9ovo0CJbhuhCsrhFJGGdD1euwUornspKpBIgdok=", "narHash": "sha256-e5IOgjQf0SZcFCEV/gMGrsI0gCJyqOKShBQU0iiM3Kg=",
"owner": "nixos", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "c6c90887f84c02ce9ebf33b95ca79ef45007bf88", "rev": "7c674c6734f61157e321db595dbfcd8523e04e19",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -359,16 +358,16 @@
"harfbuzz": { "harfbuzz": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1711722720, "lastModified": 1719502711,
"narHash": "sha256-GdxcAPx5QyniSHPAN1ih28AD9JLUPR0ItqW9JEsl3pU=", "narHash": "sha256-2ieCf3ftNk851FZBDPVl+7QHWBqD729KiUxUyxi26Yg=",
"owner": "harfbuzz", "owner": "harfbuzz",
"repo": "harfbuzz", "repo": "harfbuzz",
"rev": "63973005bc07aba599b47fdd4cf788647b601ccd", "rev": "9c03576c49db6e7207d9bcdfe3abd170a809157f",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "harfbuzz", "owner": "harfbuzz",
"ref": "8.4.0", "ref": "9.0.0",
"repo": "harfbuzz", "repo": "harfbuzz",
"type": "github" "type": "github"
} }
@ -377,15 +376,17 @@
"inputs": { "inputs": {
"crane": "crane", "crane": "crane",
"flake-utils": "flake-utils_2", "flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs", "nixpkgs": [
"nixpkgs-unstable"
],
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1733164621, "lastModified": 1736185193,
"narHash": "sha256-AhYHB343nLY4bkm9yyOT9I7LIg799ouuIBWb31gORcA=", "narHash": "sha256-uDjpxrYzZjARa8UlM97pGPRP7Gz6/aNBTHRNARc7Fh0=",
"owner": "helix-editor", "owner": "helix-editor",
"repo": "helix", "repo": "helix",
"rev": "c0bfdd7bfe8b5a3d13e7e8631eec2e8ea0b726a5", "rev": "217818681ea9bbc7f995c87f8794c46eeb012b1c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -402,11 +403,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1733050161, "lastModified": 1735344290,
"narHash": "sha256-lYnT+EYE47f5yY3KS/Kd4pJ6CO9fhCqumkYYkQ3TK20=", "narHash": "sha256-oJDtWPH1oJT34RJK1FSWjwX4qcGOBRkcNQPD0EbSfNM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "62d536255879be574ebfe9b87c4ac194febf47c5", "rev": "613691f285dad87694c2ba1c9e6298d04736292d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -423,11 +424,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1733133928, "lastModified": 1736089250,
"narHash": "sha256-gU40r9AfpIr4eq+0noM8yH1Hxf+EA3dqfIpFtQl8Y1E=", "narHash": "sha256-/LPWMiiJGPHGd7ZYEgmbE2da4zvBW0acmshUjYC3WG4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "873e39d5f4437d2f3ab06881fea8e63e45e1d011", "rev": "172b91bfb2b7f5c4a8c6ceac29fd53a01ef07196",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -452,11 +453,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1728669738, "lastModified": 1734906540,
"narHash": "sha256-EDNAU9AYcx8OupUzbTbWE1d3HYdeG0wO6Msg3iL1muk=", "narHash": "sha256-vQ/L9hZFezC0LquLo4TWXkyniWtYBlFHAKIsDc7PYJE=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprcursor", "repo": "hyprcursor",
"rev": "0264e698149fcb857a66a53018157b41f8d97bb0", "rev": "69270ba8f057d55b0e6c2dca0e165d652856e613",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -465,25 +466,78 @@
"type": "github" "type": "github"
} }
}, },
"hyprgraphics": {
"inputs": {
"hyprutils": [
"hyprland",
"hyprutils"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1736115290,
"narHash": "sha256-Jcn6yAzfUMcxy3tN/iZRbi/QgrYm7XLyVRl9g/nbUl4=",
"owner": "hyprwm",
"repo": "hyprgraphics",
"rev": "52202272d89da32a9f866c0d10305a5e3d954c50",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprgraphics",
"type": "github"
}
},
"hyprgrass": {
"inputs": {
"hyprland": [
"hyprland"
]
},
"locked": {
"lastModified": 1735782927,
"narHash": "sha256-78/J6ACmSgHwKUzDPCT9XZdh7rS2gtesUphxXh4y8I0=",
"owner": "horriblename",
"repo": "hyprgrass",
"rev": "bdfa960b97ac98ad9d05c908ee20e053e2942928",
"type": "github"
},
"original": {
"owner": "horriblename",
"repo": "hyprgrass",
"type": "github"
}
},
"hyprland": { "hyprland": {
"inputs": { "inputs": {
"aquamarine": "aquamarine", "aquamarine": "aquamarine",
"hyprcursor": "hyprcursor", "hyprcursor": "hyprcursor",
"hyprgraphics": "hyprgraphics",
"hyprland-protocols": "hyprland-protocols", "hyprland-protocols": "hyprland-protocols",
"hyprland-qtutils": "hyprland-qtutils",
"hyprlang": "hyprlang", "hyprlang": "hyprlang",
"hyprutils": "hyprutils", "hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner", "hyprwayland-scanner": "hyprwayland-scanner",
"nixpkgs": "nixpkgs_2", "nixpkgs": [
"nixpkgs-unstable"
],
"pre-commit-hooks": "pre-commit-hooks", "pre-commit-hooks": "pre-commit-hooks",
"systems": "systems_3", "systems": "systems_3",
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1733157082, "lastModified": 1736182379,
"narHash": "sha256-rmJkUKyvaejRaQeEOpInjGjQv6rgFkm2uJ2iVlMEuOk=", "narHash": "sha256-YwC0+PnFjRskg9XGm71MqO12mYDRhTrmNbj92RB5UK0=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "92186898c0ca1b3f72922b72c4af1723f0d9b888", "rev": "1bf4937b0292dc156e2530185c231608280be27f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -504,11 +558,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1728345020, "lastModified": 1735774328,
"narHash": "sha256-xGbkc7U/Roe0/Cv3iKlzijIaFBNguasI31ynL2IlEoM=", "narHash": "sha256-vIRwLS9w+N99EU1aJ+XNOU6mJTxrUBa31i1r82l0V7s=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-protocols", "repo": "hyprland-protocols",
"rev": "a7c183800e74f337753de186522b9017a07a8cee", "rev": "e3b6af97ddcfaafbda8e2828c719a5af84f662cb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -517,6 +571,35 @@
"type": "github" "type": "github"
} }
}, },
"hyprland-qtutils": {
"inputs": {
"hyprutils": [
"hyprland",
"hyprutils"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1736114838,
"narHash": "sha256-FxbuGQExtN37ToWYnGmO6weOYN6WPHN/RAqbr7gNPek=",
"owner": "hyprwm",
"repo": "hyprland-qtutils",
"rev": "6997fe382dcf396704227d2b98ffdd5066da6959",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprland-qtutils",
"type": "github"
}
},
"hyprlang": { "hyprlang": {
"inputs": { "inputs": {
"hyprutils": [ "hyprutils": [
@ -533,11 +616,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1728168612, "lastModified": 1735393019,
"narHash": "sha256-AnB1KfiXINmuiW7BALYrKqcjCnsLZPifhb/7BsfPbns=", "narHash": "sha256-NPpqA8rtmDLsEmZOmz+qR67zsB6Y503Jnv+nSFLKJZ8=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "f054f2e44d6a0b74607a6bc0f52dba337a3db38e", "rev": "55608efdaa387af7bfdc0eddb404c409958efa43",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -558,11 +641,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1732288281, "lastModified": 1736164519,
"narHash": "sha256-XTU9B53IjGeJiJ7LstOhuxcRjCOFkQFl01H78sT9Lg4=", "narHash": "sha256-1LimBKvDpBbeX+qW7T240WEyw+DBVpDotZB4JYm8Aps=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "b26f33cc1c8a7fd5076e19e2cce3f062dca6351c", "rev": "3c895da64b0eb19870142196fa48c07090b441c4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -583,11 +666,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1726874836, "lastModified": 1735493474,
"narHash": "sha256-VKR0sf0PSNCB0wPHVKSAn41mCNVCnegWmgkrneKDhHM=", "narHash": "sha256-fktzv4NaqKm94VAkAoVqO/nqQlw+X0/tJJNAeCSfzK4=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "500c81a9e1a76760371049a8d99e008ea77aa59e", "rev": "de913476b59ee88685fdc018e77b8f6637a2ae0b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -596,6 +679,27 @@
"type": "github" "type": "github"
} }
}, },
"iio-hyprland": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"systems": "systems_4"
},
"locked": {
"lastModified": 1727632156,
"narHash": "sha256-gfH/jcrmI27OEge8OGPe7JpC0jrQJuX7v9hM/ObjjW8=",
"owner": "JeanSchoeller",
"repo": "iio-hyprland",
"rev": "bd6be6b7e0fbc8ca1a5ccbf536602838e52c347e",
"type": "github"
},
"original": {
"owner": "JeanSchoeller",
"repo": "iio-hyprland",
"type": "github"
}
},
"jovian": { "jovian": {
"inputs": { "inputs": {
"nix-github-actions": "nix-github-actions", "nix-github-actions": "nix-github-actions",
@ -604,11 +708,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1732739177, "lastModified": 1735931035,
"narHash": "sha256-iL32+TA/8geCzcL1r3uthrH/GPvbUak5QE++WJUkaiI=", "narHash": "sha256-f3WRxasPYVKzrvAlLq+/3FRHQVfxVf5xxf0WWwnO99k=",
"owner": "Jovian-Experiments", "owner": "Jovian-Experiments",
"repo": "Jovian-NixOS", "repo": "Jovian-NixOS",
"rev": "8d7b2149e618696d5100c2683af1ffa893f02a75", "rev": "7e530766a5fd9b7577296fedd655f3255f7495d8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -621,17 +725,17 @@
"libpng": { "libpng": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1549245649, "lastModified": 1726173884,
"narHash": "sha256-1+cRp0Ungme/OGfc9kGJbklYIWAFxk8Il1M+NV4KSgw=", "narHash": "sha256-gBfHgGaqVYdmhWXoNKZzPyGzyw2rr3zp+DjWmfC41jk=",
"owner": "glennrp", "owner": "pnggroup",
"repo": "libpng", "repo": "libpng",
"rev": "8439534daa1d3a5705ba92e653eda9251246dd61", "rev": "f5e92d76973a7a53f517579bc95d61483bf108c0",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "glennrp", "owner": "pnggroup",
"ref": "v1.6.44",
"repo": "libpng", "repo": "libpng",
"rev": "8439534daa1d3a5705ba92e653eda9251246dd61",
"type": "github" "type": "github"
} }
}, },
@ -675,53 +779,21 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1728018373, "lastModified": 1736061677,
"narHash": "sha256-NOiTvBbRLIOe5F6RbHaAh6++BNjsb149fGZd1T4+KBg=", "narHash": "sha256-DjkQPnkAfd7eB522PwnkGhOMuT9QVCZspDpJJYyOj60=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "bc947f541ae55e999ffdb4013441347d83b00feb", "rev": "cbd8ec4de4469333c82ff40d057350c30e9f7d36",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-unstable", "ref": "nixos-24.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": {
"lastModified": 1730741070,
"narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1730741070,
"narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_3": {
"locked": { "locked": {
"lastModified": 1720386169, "lastModified": 1720386169,
"narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=", "narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=",
@ -739,11 +811,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1733064805, "lastModified": 1736042175,
"narHash": "sha256-7NbtSLfZO0q7MXPl5hzA0sbVJt6pWxxtGWbaVUDDmjs=", "narHash": "sha256-jdd5UWtLVrNEW8K6u5sy5upNAFmF3S4Y+OIeToqJ1X8=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "31d66ae40417bb13765b0ad75dd200400e98de84", "rev": "bf689c40d035239a489de5997a4da5352434632e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -753,38 +825,6 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": {
"locked": {
"lastModified": 1732758367,
"narHash": "sha256-RzaI1RO0UXqLjydtz3GAXSTzHkpb/lLD1JD8a0W4Wpo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fa42b5a5f401aab8a32bd33c9a4de0738180dc59",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1732981179,
"narHash": "sha256-F7thesZPvAMSwjRu0K8uFshTk3ZZSNAsXTIFvXBT+34=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "62c435d93bf046a5396f3016472e8f7c8e2aed65",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"pre-commit-hooks": { "pre-commit-hooks": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_3", "flake-compat": "flake-compat_3",
@ -792,15 +832,14 @@
"nixpkgs": [ "nixpkgs": [
"hyprland", "hyprland",
"nixpkgs" "nixpkgs"
], ]
"nixpkgs-stable": "nixpkgs-stable_2"
}, },
"locked": { "locked": {
"lastModified": 1732021966, "lastModified": 1735882644,
"narHash": "sha256-mnTbjpdqF0luOkou8ZFi2asa1N3AA2CchR/RqCNmsGE=", "narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "3308484d1a443fc5bc92012435d79e80458fe43c", "rev": "a5a961387e75ae44cc20f0a57ae463da5e959656",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -818,10 +857,12 @@
"helix": "helix", "helix": "helix",
"home-manager": "home-manager", "home-manager": "home-manager",
"home-manager-unstable": "home-manager-unstable", "home-manager-unstable": "home-manager-unstable",
"hyprgrass": "hyprgrass",
"hyprland": "hyprland", "hyprland": "hyprland",
"iio-hyprland": "iio-hyprland",
"jovian": "jovian", "jovian": "jovian",
"mobile-nixos": "mobile-nixos", "mobile-nixos": "mobile-nixos",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"slippi": "slippi", "slippi": "slippi",
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
@ -857,11 +898,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1729477859, "lastModified": 1735871325,
"narHash": "sha256-r0VyeJxy4O4CgTB/PNtfQft9fPfN1VuGvnZiCxDArvg=", "narHash": "sha256-6Ta5E4mhSfCP6LdkzkG2+BciLOCPeLKuYTJ6lOHW+mI=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "ada8266712449c4c0e6ee6fcbc442b3c217c79e1", "rev": "a599f011db521766cbaf7c2f5874182485554f00",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -881,11 +922,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1725994332, "lastModified": 1736194140,
"narHash": "sha256-gla6TlSG6MIczpJ7xhXA66amcaJPAZ9lFHSUrLmR/QY=", "narHash": "sha256-tIKtqleb34l+6ARdpATPfCqeJgrxsXAOKlfJ9Q8trgg=",
"owner": "lytedev", "owner": "lytedev",
"repo": "slippi-nix", "repo": "slippi-nix",
"rev": "68e971a57de45fb3f2081e837962f2c9b8c34240", "rev": "e0c56d5c4cddd89fb2cc4b194ffb9ba64ba9e174",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -901,11 +942,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1733128155, "lastModified": 1736064798,
"narHash": "sha256-m6/qwJAJYcidGMEdLqjKzRIjapK4nUfMq7rDCTmZajc=", "narHash": "sha256-xJRN0FmX9QJ6+w8eIIIxzBU1AyQcLKJ1M/Gp6lnSD20=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "c6134b6fff6bda95a1ac872a2a9d5f32e3c37856", "rev": "5dc08f9cc77f03b43aacffdfbc8316807773c930",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -960,6 +1001,21 @@
} }
}, },
"systems_4": { "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"
}
},
"systems_5": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
@ -988,11 +1044,11 @@
}, },
"locked": { "locked": {
"dir": "nix", "dir": "nix",
"lastModified": 1732918908, "lastModified": 1735931735,
"narHash": "sha256-k43oaC+35/LGqJ+3MjIhn4Ko+ap3wTvHCJ4sj9W/o+k=", "narHash": "sha256-4wzEN5IPYmqLP8TAdFatoRhCZ7W9y65AWoYN0Qgvbg8=",
"owner": "wez", "owner": "wez",
"repo": "wezterm", "repo": "wezterm",
"rev": "4906789a6d61da58f73b95f89b59c41af60e0f3b", "rev": "8e9cf912e66f704f300fac6107206a75036de1e7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1030,11 +1086,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1731703417, "lastModified": 1734907020,
"narHash": "sha256-rheDc/7C+yI+QspYr9J2z9kQ5P9F4ATapI7qyFAe1XA=", "narHash": "sha256-p6HxwpRKVl1KIiY5xrJdjcEeK3pbmc///UOyV6QER+w=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "8070f36deec723de71e7557441acb17e478204d3", "rev": "d7f18dda5e511749fa1511185db3536208fb1a63",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1071,16 +1127,16 @@
"zlib": { "zlib": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1484501380, "lastModified": 1705948357,
"narHash": "sha256-j5b6aki1ztrzfCqu8y729sPar8GpyQWIrajdzpJC+ww=", "narHash": "sha256-TkPLWSN5QcPlL9D0kc/yhH0/puE9bFND24aj5NVDKYs=",
"owner": "madler", "owner": "madler",
"repo": "zlib", "repo": "zlib",
"rev": "cacf7f1d4e3d44d871b605da3b647f07d718623f", "rev": "51b7f2abdade71cd9bb0e7a373ef2610ec6f9daf",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "madler", "owner": "madler",
"ref": "v1.2.11", "ref": "v1.3.1",
"repo": "zlib", "repo": "zlib",
"type": "github" "type": "github"
} }

View file

@ -2,6 +2,7 @@
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11"; nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable";
hardware.url = "github:nixos/nixos-hardware";
disko.url = "github:nix-community/disko/master"; disko.url = "github:nix-community/disko/master";
disko.inputs.nixpkgs.follows = "nixpkgs"; disko.inputs.nixpkgs.follows = "nixpkgs";
@ -20,8 +21,16 @@
home-manager-unstable.inputs.nixpkgs.follows = "nixpkgs-unstable"; home-manager-unstable.inputs.nixpkgs.follows = "nixpkgs-unstable";
helix.url = "github:helix-editor/helix/master"; helix.url = "github:helix-editor/helix/master";
hardware.url = "github:nixos/nixos-hardware"; helix.inputs.nixpkgs.follows = "nixpkgs-unstable";
hyprland.url = "github:hyprwm/Hyprland"; hyprland.url = "github:hyprwm/Hyprland";
hyprland.inputs.nixpkgs.follows = "nixpkgs-unstable";
hyprgrass.url = "github:horriblename/hyprgrass";
hyprgrass.inputs.hyprland.follows = "hyprland";
iio-hyprland.url = "github:JeanSchoeller/iio-hyprland";
iio-hyprland.inputs.nixpkgs.follows = "nixpkgs";
wezterm.url = "github:wez/wezterm?dir=nix"; wezterm.url = "github:wez/wezterm?dir=nix";
wezterm.inputs.nixpkgs.follows = "nixpkgs-unstable"; wezterm.inputs.nixpkgs.follows = "nixpkgs-unstable";
@ -526,15 +535,16 @@
system = "x86_64-linux"; system = "x86_64-linux";
modules = with nixosModules; [ modules = with nixosModules; [
home-manager-unstable-defaults home-manager-unstable-defaults
outputs.diskoConfigurations.standard outputs.diskoConfigurations.thablet
hardware.nixosModules.lenovo-thinkpad-x1-yoga hardware.nixosModules.lenovo-thinkpad-x1-yoga
common common
password-manager password-manager
graphical-workstation graphical-workstation
plasma6 # plasma6
music-production music-production
laptop laptop
touchscreen
gaming gaming
./nixos/thablet.nix ./nixos/thablet.nix

View file

@ -157,6 +157,7 @@
jujutsu jujutsu
zellij zellij
htop htop
sshconfig
/* /*
broot broot
@ -1984,4 +1985,36 @@
z = "zellij"; z = "zellij";
}; };
}; };
sshconfig = {
programs.ssh = {
enable = true;
matchBlocks = {
"git.lyte.dev" = {
# hostname = "git.lyte.dev";
user = "forgejo";
};
"github.com" = {
user = "git";
};
"gitlab.com" = {
user = "git";
};
"codeberg.org" = {
user = "git";
};
"git.hq.bill.com" = {
user = "git";
};
work = {
user = "daniel.flanagan";
};
};
extraConfig = ''
Include config.d/*
# pass obscure/keys/ssh-key-ed25519 | tail -n 7
IdentityFile ~/.ssh/id_ed25519
'';
};
};
} }

View file

@ -11,6 +11,7 @@ in {
# TODO: Hyprland seems to sometimes use a ton of CPU? # TODO: Hyprland seems to sometimes use a ton of CPU?
home.packages = with pkgs; [ home.packages = with pkgs; [
glib
swayosd swayosd
]; ];
@ -47,8 +48,15 @@ in {
"hypridle" "hypridle"
]; ];
exec = [
''gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark"''
''gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"''
];
env = [ env = [
"XCURSOR_SIZE,24" "XCURSOR_SIZE,24"
"QT_QPA_PLATFORMTHEME,qt6ct"
"GTK_THEME,Adwaita-dark"
]; ];
input = { input = {
@ -96,7 +104,7 @@ in {
gaps_out = 6; gaps_out = 6;
border_size = 2; border_size = 2;
resize_on_border = true; resize_on_border = true;
no_focus_fallback = true; no_focus_fallback = false;
layout = "dwindle"; layout = "dwindle";
}; };
@ -129,7 +137,7 @@ in {
"$mod SHIFT, return, exec, wezterm" "$mod SHIFT, return, exec, wezterm"
*/ */
"$mod, return, exec, wezterm" "$mod, return, exec, wezterm"
"$mod SHIFT, return, exec, kitty" "$mod SHIFT, return, exec, [float] wezterm start --always-new-process"
"$mod, U, exec, firefox" "$mod, U, exec, firefox"
"$mod, space, exec, tofi-run | xargs hyprctl dispatch exec --" "$mod, space, exec, tofi-run | xargs hyprctl dispatch exec --"
"$mod, C, killactive," "$mod, C, killactive,"
@ -150,10 +158,10 @@ in {
"$mod, l, movefocus, r" "$mod, l, movefocus, r"
"$mod, k, movefocus, u" "$mod, k, movefocus, u"
"$mod, j, movefocus, d" "$mod, j, movefocus, d"
"$mod SHIFT, H, movewindow, l" "$mod SHIFT, H, movewindow, l silent"
"$mod SHIFT, L, movewindow, r" "$mod SHIFT, L, movewindow, r silent"
"$mod SHIFT, K, movewindow, u" "$mod SHIFT, K, movewindow, u silent"
"$mod SHIFT, J, movewindow, d" "$mod SHIFT, J, movewindow, d silent"
"$mod SHIFT, V, exec, swayosd-client --input-volume mute-toggle" "$mod SHIFT, V, exec, swayosd-client --input-volume mute-toggle"
", XF86AudioMicMute, exec, swayosd-client --input-volume mute-toggle" ", XF86AudioMicMute, exec, swayosd-client --input-volume mute-toggle"
@ -184,16 +192,16 @@ in {
"$mod, 0, workspace, 10" "$mod, 0, workspace, 10"
# Move active window to a workspace with mod + SHIFT + [0-9] # Move active window to a workspace with mod + SHIFT + [0-9]
"$mod SHIFT, 1, movetoworkspace, 1" "$mod SHIFT, 1, movetoworkspacesilent, 1"
"$mod SHIFT, 2, movetoworkspace, 2" "$mod SHIFT, 2, movetoworkspacesilent, 2"
"$mod SHIFT, 3, movetoworkspace, 3" "$mod SHIFT, 3, movetoworkspacesilent, 3"
"$mod SHIFT, 4, movetoworkspace, 4" "$mod SHIFT, 4, movetoworkspacesilent, 4"
"$mod SHIFT, 5, movetoworkspace, 5" "$mod SHIFT, 5, movetoworkspacesilent, 5"
"$mod SHIFT, 6, movetoworkspace, 6" "$mod SHIFT, 6, movetoworkspacesilent, 6"
"$mod SHIFT, 7, movetoworkspace, 7" "$mod SHIFT, 7, movetoworkspacesilent, 7"
"$mod SHIFT, 8, movetoworkspace, 8" "$mod SHIFT, 8, movetoworkspacesilent, 8"
"$mod SHIFT, 9, movetoworkspace, 9" "$mod SHIFT, 9, movetoworkspacesilent, 9"
"$mod SHIFT, 0, movetoworkspace, 10" "$mod SHIFT, 0, movetoworkspacesilent, 10"
"$mod SHIFT, S, exec, clipshot" "$mod SHIFT, S, exec, clipshot"
# Scroll through existing workspaces with mod + scroll # Scroll through existing workspaces with mod + scroll
@ -272,7 +280,7 @@ in {
general = { general = {
grace = 0; grace = 0;
no_face_out = true; no_fade_out = true;
}; };
input-field = [ input-field = [

View file

@ -86,9 +86,11 @@
xdg.portal = { xdg.portal = {
enable = true; enable = true;
wlr.enable = true; wlr.enable = true;
# gtk.enable = true;
extraPortals = with pkgs; [ extraPortals = with pkgs; [
xdg-desktop-portal-wlr xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
]; ];
}; };
@ -422,6 +424,10 @@
wifi wifi
]; ];
environment.systemPackages = with pkgs; [
acpi
];
services.udev.extraRules = '' services.udev.extraRules = ''
ACTION=="add", SUBSYSTEM=="backlight", RUN+="${pkgs.coreutils}/bin/chgrp video /sys/class/backlight/%k/brightness" ACTION=="add", SUBSYSTEM=="backlight", RUN+="${pkgs.coreutils}/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", RUN+="${pkgs.coreutils}/bin/chmod g+w /sys/class/backlight/%k/brightness" ACTION=="add", SUBSYSTEM=="backlight", RUN+="${pkgs.coreutils}/bin/chmod g+w /sys/class/backlight/%k/brightness"
@ -452,6 +458,14 @@
}; };
}; };
touchscreen = {pkgs, ...}: {
environment.systemPackages = with pkgs; [
wvkbd # on-screen keyboard
flakeInputs.iio-hyprland.outputs.packages.${system}.default # auto-rotate hyprland displays
flakeInputs.hyprgrass.outputs.packages.${system}.hyprgrass # hyprland touch gestures
];
};
emacs = {pkgs, ...}: { emacs = {pkgs, ...}: {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
emacs emacs
@ -646,11 +660,24 @@
development-tools development-tools
printing printing
music-consumption music-consumption
kde-connect
plasma6
video-tools video-tools
radio-tools radio-tools
android-dev android-dev
]; ];
services.displayManager.sddm = {
enable = true;
package = lib.mkForce pkgs.kdePackages.sddm;
settings = {};
# theme = "";
wayland = {
enable = true;
compositor = "weston";
};
};
xdg.portal.enable = true; xdg.portal.enable = true;
hardware = hardware =
@ -793,8 +820,8 @@
gaming = {pkgs, ...}: { gaming = {pkgs, ...}: {
imports = with nixosModules; [ imports = with nixosModules; [
lutris # lutris # use the flatpak
steam steam # TODO: use the flatpak?
]; ];
environment = { environment = {

View file

@ -189,6 +189,7 @@
kernelParams = [ kernelParams = [
"rtc_cmos.use_acpi_alarm=1" "rtc_cmos.use_acpi_alarm=1"
"amdgpu.sg_display=0" "amdgpu.sg_display=0"
"boot.shell_on_fail=1"
"acpi_osi=\"!Windows 2020\"" "acpi_osi=\"!Windows 2020\""
# "nvme.noacpi=1" # maybe causing crashes upon waking? # "nvme.noacpi=1" # maybe causing crashes upon waking?

View file

@ -75,6 +75,61 @@
}; };
home-manager.users.daniel = { home-manager.users.daniel = {
home = {
pointerCursor = {
size = 40;
};
};
programs.hyprlock.settings = {
label = [
{
monitor = "";
font_size = 32;
halign = "center";
valign = "center";
text_align = "center";
color = "rgba(255, 255, 255, 0.5)";
position = "0 -500";
font_family = "IosevkaLyteTerm";
text = "cmd[update:30000] acpi";
shadow_passes = 3;
shadow_size = 1;
shadow_color = "rgba(0, 0, 0, 1.0)";
shadow_boost = 1.0;
}
];
};
services.hypridle = let
secondsPerMinute = 60;
lockSeconds = 10 * secondsPerMinute;
in {
settings = {
listener = [
{
timeout = lockSeconds + 55;
on-timeout = ''systemctl suspend'';
}
];
};
};
wayland.windowManager.hyprland = {
settings = {
exec-once = [
"eww open bar0"
];
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
monitor = [
"eDP-1,2560x1440@60Hz,0x0,1.25"
];
};
};
wayland.windowManager.sway = { wayland.windowManager.sway = {
config = { config = {
output = { output = {

View file

@ -8,20 +8,20 @@ sops:
- recipient: age1stdue5q5teskee057ced6rh9pzzr93xsy66w4sc3zu49rgxl7cjshztt45 - recipient: age1stdue5q5teskee057ced6rh9pzzr93xsy66w4sc3zu49rgxl7cjshztt45
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBlSFVjMEhNUEF5Q1ZWRmRB YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA1RW5FaXYrSWxUQ1BQa0xl
cUQvQ0JYY2ZzNndPeVN4UTNhTUxZVzBvc3hBCkcwNHUyeEhMZFFHU3RIQWlONTRT eU9GSGNqVitqeTcvOHRwTTBSSG13cEZHTUNJCjVYT2JpaGxrU2VBS3hPOWtJemlR
dUhlZUlHRjJQeGZwRk9td1FSZzZtR0kKLS0tIHphbVpncE9HLys2bWJicUtmU2Fp S1hHck1qczhlTytWV3ZkdnE0aWVhT1UKLS0tIEoyWXczU3FmMXZiQkRJZEUwV0lV
b05GOEpRVURQYnJSZzhhalp3TW1kbHMKk/z68IP6WMZV+PbjJvM2EWhacJZoLMj3 YldzL212ZlVaUStXcWRIN1lVMXVjd1UKqcfnuSxm19ClrxaH8koodgI3ZBlzKNWa
iSGt5TqerVUOrQT00+Gx3laImdismLp9CjulEl82QyaYpmUvVYkEMA== fR/jUQMOGike43A383AprwnW7Y6ReLUOfixW2mMteT/ofEJeohEhEA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age12x49p3mwf27r9gdkfmfqu7lr6gwcwznlhcvcgmv8dz3gac2mkdgsp36y9p - recipient: age14ewl97x5g52ajf269cmmwzrgf22m9dsr7mw7czfa356qugvf4gvq5dttfv
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB6eW9QekJRTzlNWHVvK3hD YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBuNlkzNXZDWUY0VmtOTlBz
b0ZTWDdWY2RiZTBwZEZMcnpEMjlydkJrOGlrCldxZFhHcjlGRVRYNVJEc0R4Y1BZ U2dmaWlJcFo3czJjUm8yYzRFTEJzNzdBc1ZZCjg4OUdzN0QvLzFONXhmL3pYVll0
TldMNW81a2VjMm5SWHhHNFRVMWlFQTgKLS0tIEIycWtsT3pEbVZIc2FvZGpsbENz Ym1RNHovNWF5WENMM3FXckliT3hRL1kKLS0tIGNLaG9hY25zOThrZDJCV05nbENx
MENZdE13U2J0eWtoOHJSbEJ3TVFUS2sK23t+MAjYfBI1j7B97mU0akq8zuRh7pOv UWpwTSs2L1NIYXpZYkpDWjNWbWVQWlkKUIwLyA1EzSbJj9MJsBQ5f0bJawtbXQHT
admjZR86rxMqs/Guj+nKhQ2pn/JeozlPOvwiaxD9eIVJBtIQK2my4A== 21TIp1Ki3juXLvsz0n7Pl+r2/lF907HpriDI7zWK+I/iviTpw+TwTA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2024-09-14T12:41:15Z" lastmodified: "2024-09-14T12:41:15Z"
mac: ENC[AES256_GCM,data:sO3omCYH1urB/qcW3VippCinCUO1cmp5KrUSQk5ms7k+i9xUhdL3tTYHGVTa4PHV6VluukKnHuwAijo+rneNdCeMdIkAEskk/X6SDYgkwmjXuNcNEA4la22EqSrenJ8W3UafHDvP8+vpUKAzVo0E82Vmo9/YNJaqvqQM8PtciSc=,iv:2GboNZpAezZsWK3CbcwVw40zW4CucP3JhsYlvZ/Hy2M=,tag:w3XmkN76oYV+PmliPB01MQ==,type:str] mac: ENC[AES256_GCM,data:sO3omCYH1urB/qcW3VippCinCUO1cmp5KrUSQk5ms7k+i9xUhdL3tTYHGVTa4PHV6VluukKnHuwAijo+rneNdCeMdIkAEskk/X6SDYgkwmjXuNcNEA4la22EqSrenJ8W3UafHDvP8+vpUKAzVo0E82Vmo9/YNJaqvqQM8PtciSc=,iv:2GboNZpAezZsWK3CbcwVw40zW4CucP3JhsYlvZ/Hy2M=,tag:w3XmkN76oYV+PmliPB01MQ==,type:str]

View file

@ -1,3 +1,4 @@
/target /target
/result
/.direnv /.direnv
/.pre-commit-config.yaml /.pre-commit-config.yaml

View file

@ -3,12 +3,12 @@
inputs.git-hooks.url = "github:cachix/git-hooks.nix"; inputs.git-hooks.url = "github:cachix/git-hooks.nix";
inputs.git-hooks.inputs.nixpkgs.follows = "nixpkgs"; inputs.git-hooks.inputs.nixpkgs.follows = "nixpkgs";
outputs = inputs: let outputs = inputs: let
inherit (import nix/boilerplate.nix inputs) fullImport genPkgs; inherit (import nix/boilerplate.nix inputs) call genPkgs;
in { in {
# overlays = import nix/overlays.nix; # overlays = import nix/overlays.nix;
checks = fullImport nix/checks.nix; checks = call (import nix/checks.nix);
packages = fullImport nix/packages.nix; packages = call (import nix/packages.nix);
devShells = fullImport nix/shells.nix; devShells = call (import nix/shells.nix);
formatter = genPkgs (p: p.alejandra); formatter = genPkgs (p: p.alejandra);
}; };
} }

View file

@ -4,7 +4,7 @@ inputs @ {
... ...
}: let }: let
forSelfOverlay = forSelfOverlay =
if builtins.hasAttr "forSelf" self.overlays if builtins.hasAttr "overlays" self && builtins.hasAttr "forSelf" self.overlays
then self.overlays.forSelf then self.overlays.forSelf
else (_: p: p); else (_: p: p);
in rec { in rec {

View file

@ -1,6 +1,6 @@
{pkgs, ...}: rec { {pkgs, ...}: rec {
lyrs = pkgs.rustPlatform.buildRustPackage { my-package = pkgs.rustPlatform.buildRustPackage {
pname = "lyrs"; pname = "my-binary";
version = "0.1.0"; version = "0.1.0";
/* /*
@ -15,38 +15,8 @@
src = ./..; src = ./..;
hash = pkgs.lib.fakeHash; hash = pkgs.lib.fakeHash;
cargoHash = "sha256-XHCXOlG4sdr1A3lqIK/7bB3soms1jxMIdfsFABmHVog="; cargoHash = pkgs.lib.fakeHash;
}; };
pwatch = pkgs.writeShellScriptBin "pwatch" '' default = my-package;
dir="$(dirname "$(cargo locate-project --workspace --message-format plain)")"
pushd "$dir"
additional_watchexec_args=""
if [[ -f apps/$pkg/build.rs ]]; then
additional_watchexec_args="--watch apps/$pkg/build.rs"
fi
pkg="$1"; shift
cargo_subcmd="$1"; shift
cargo_subcmd_args="$@"; shift
argfile="apps/$pkg/.watchexec.argfile"
argfile_args=""
if [[ -f $argfile ]]; then
argfile_args="@$argfile"
fi
watchexec $argfile_args --stop-timeout 0s --restart \
--watch Cargo.toml \
--watch libs \
--watch apps/$pkg/src/ \
--watch apps/$pkg/Cargo.toml \
$additional_watchexec_args \
cargo "$cargo_subcmd" --package "$pkg" "$cargo_subcmd_args"
popd
'';
default = lyrs;
} }

View file

@ -5,9 +5,9 @@
}: let }: let
inherit (pkgs) system; inherit (pkgs) system;
in rec { in rec {
lyrs-dev = pkgs.mkShell { my-package-dev = pkgs.mkShell {
inherit (self.checks.${system}.git-hooks) shellHook; inherit (self.checks.${system}.git-hooks) shellHook;
inputsFrom = [self.packages.${system}.lyrs]; inputsFrom = [self.packages.${system}.my-package];
packages = with pkgs; [ packages = with pkgs; [
convco convco
rustPackages.clippy rustPackages.clippy
@ -18,5 +18,5 @@ in rec {
lldb lldb
]; ];
}; };
default = lyrs-dev; default = my-package-dev;
} }