Compare commits

...
Sign in to create a new pull request.

329 commits
new ... main

Author SHA1 Message Date
2d1a773417 update 2025-04-11 17:31:03 +02:00
311c8d9d5e email: cert not needed explicitly 2025-04-11 17:29:48 +02:00
1447f86c3a email: add listeners 2025-04-10 12:30:27 +02:00
dc34a72853 email: explicit tls 2025-04-10 12:00:57 +02:00
7e01f476db email: open ports maybe 2025-04-10 11:51:37 +02:00
1c47b57987 acme: lower time period 2025-04-10 11:20:15 +02:00
7641e741e0 update 2025-04-10 10:42:37 +02:00
63e4365ffb removed generator inputs 2025-03-29 21:59:39 +01:00
4df818415d remove nixos iso 2025-03-29 21:59:13 +01:00
714259545b bootable usb: init 2025-03-29 21:55:27 +01:00
1ecc3f6f53 add krita too 2025-03-29 19:28:44 +01:00
01d3f942a0 update 2025-03-29 11:46:16 +01:00
661fef1caa higher sample rate 2025-03-27 16:56:23 +01:00
38e6adf01a stalwart: explicit tls with ports 2025-03-26 11:48:32 +01:00
7e8c2ea3c4 fedi: enable admin-fe 2025-03-25 21:09:24 +01:00
2bfe2dd4ac akkoma: enable registrations 2025-03-25 20:56:09 +01:00
c6d887c0c9 corrected again 2025-03-25 20:36:23 +01:00
237f1e2ec3 update theme link 2025-03-25 20:33:10 +01:00
bb1cbf1c49 add some whitespace for structure 2025-03-25 20:28:27 +01:00
b395075081 fedi: fix local emoji builds 2025-03-23 22:58:42 +01:00
d45e4e9d02 fedi emojis: source local 2025-03-23 22:43:51 +01:00
3809dce1c5 disable iceshrimp by default 2025-03-23 22:27:27 +01:00
854d3175e8 firefox: change bookmarks to new submodule style 2025-03-23 22:17:55 +01:00
cb208cac4e lix: remove input 2025-03-23 22:17:34 +01:00
5a55164f54 lix: remove 2025-03-23 22:16:16 +01:00
764d93a4ec update 2025-03-23 22:01:54 +01:00
12bc14657e nicer versioning for easier updates i think 2025-03-23 22:01:12 +01:00
0733f4d2d1 init for better maintainable versions and defaults 2025-03-23 21:44:25 +01:00
94cf4c2005 started writing module 2025-03-23 21:14:34 +01:00
09a71fb1ac iceshrimp: cleanup 2025-03-23 15:40:22 +01:00
ac151edf2a ll as alias 2025-03-23 15:35:24 +01:00
aa02a442a2 iceshrimp: use tarball 2025-03-23 15:28:15 +01:00
8ee2d1a953 akkoma-fe new name 2025-03-21 20:46:59 +01:00
998607e3ea updated firefox config 2025-03-21 20:44:12 +01:00
f1a7f71f0f update 2025-03-21 20:20:54 +01:00
cb17da672d initdev and shorter ls 2025-03-21 19:49:00 +01:00
6559a836f5 init dev 2025-03-21 19:40:06 +01:00
bd08882fc8 nicer ll 2025-03-21 19:38:42 +01:00
b2f5485fc1 enable push to create 2025-03-21 17:53:36 +01:00
587ef7df27 fix for ghidra 2025-03-19 21:33:16 +01:00
c2a5b6b617 added script to connect and disconnect headset 2025-03-19 11:20:05 +01:00
6d005a373a added keybind with script to switch sink 2025-03-19 02:57:07 +01:00
cb999ee36c added ghidra and cutter 2025-03-16 22:35:32 +01:00
f7f82416e2 some more setup for xwayland-satellite to work 2025-03-16 22:35:20 +01:00
562ea5cb0b add generated deps.json 2025-03-16 16:11:41 +01:00
0afc458787 best so far but urgh 2025-03-15 19:25:01 +01:00
ff6c8e2ace Revert "trying this but go back after"
This reverts commit 7207a125cf.
2025-03-15 18:32:29 +01:00
a8f4fd368e added deps added so far but not sure that's the best way 2025-03-15 17:39:48 +01:00
7207a125cf trying this but go back after 2025-03-15 13:27:20 +01:00
fa3eacab09 non-lts forgejo 2025-03-15 13:11:10 +01:00
af6cc74b9c Revert "no lix"
This reverts commit 0fa9654211.
2025-03-15 13:08:56 +01:00
0fa9654211 no lix 2025-03-15 12:49:38 +01:00
388781a196 update blobfox hash 2025-03-15 12:23:29 +01:00
019fd7cf40 update neocat hash 2025-03-15 12:21:49 +01:00
c658ec46ad update neofox 2025-03-15 12:19:21 +01:00
2e3ac4cb0c trying more stuff 2025-03-15 12:07:41 +01:00
e8c92c9d3c remove old niri stuff and use xwl satellite again 2025-03-15 01:37:56 +01:00
d99782af05 update 2025-03-15 01:01:14 +01:00
f5e561fa43 disable iceshrimp 2025-03-15 00:58:30 +01:00
8523564441 some more consistency and yubioath bind 2025-03-15 00:58:09 +01:00
862c2b904d dependency issues again 2025-03-15 00:51:08 +01:00
7f4c6202f0 dependency issues again 2025-03-15 00:49:36 +01:00
d1e43e7b7d lower spam filter 2025-03-14 20:24:25 +01:00
d69f3e0bef iceshrimp: does not fail to build but doesn't work 2025-03-13 22:43:18 +01:00
82742e291d fix typo 2025-03-12 23:39:35 +01:00
a8bb98a917 try adding install phase 2025-03-12 23:35:27 +01:00
6a06290881 added iceshrimp init 2025-03-12 23:30:57 +01:00
cbf8cd125f added new domain 2025-03-12 15:17:07 +01:00
fdef3b09ad remove unused key 2025-03-11 19:22:00 +01:00
4c05b7a2a1 rename firefox for more consistency 2025-03-11 19:08:49 +01:00
52c844ac28 nix wiki search engine 2025-03-11 19:02:28 +01:00
8c43ffb75a don't open in new tab 2025-03-11 16:21:35 +01:00
c9d76dd13d remove fallback admin 2025-03-10 23:05:34 +01:00
9efa528b23 add website 2025-03-10 15:59:54 +01:00
d541baaf76 update gitignore 2025-03-10 15:59:40 +01:00
9d51d447f3 improve prompt a bit more 2025-03-09 23:51:10 +01:00
c6983b6f5a add ssh to prompt 2025-03-09 22:46:53 +01:00
2bcd8a0601 unix sockets for git 2025-03-09 22:43:03 +01:00
c855ff5bfe fix unix socket 2025-03-09 21:32:06 +01:00
c9640ad7f5 test unix sockets 2025-03-09 21:13:13 +01:00
25d02e5d3a some more cleanup and started crafting new prompt 2025-03-09 18:37:02 +01:00
2f24f85e44 restructure apps 2025-03-09 16:40:32 +01:00
5cbc2cc675 enable microcode on server 2025-03-09 15:54:52 +01:00
2da44acb6d no os prober 2025-03-09 15:02:10 +01:00
4ab970aea9 more stuff moved to options and some more consistency 2025-03-09 14:52:03 +01:00
6d9dbe38cb update 2025-03-09 03:45:45 +01:00
697ddd5459 improve config a little 2025-03-09 03:44:43 +01:00
9f9358cfd5 use xbk config for console keymap 2025-03-09 03:21:10 +01:00
70f1a21740 testing greetd 2025-03-08 14:52:59 +01:00
41c64868b3 fix warning 2025-03-08 13:55:15 +01:00
dd93d696b9 nix run alias and removed packages better used through that 2025-03-08 13:54:36 +01:00
aacd8a5fad options to use firefox without tab bar 2025-03-07 21:28:57 +01:00
51af7cf05e back to implicit 2025-03-07 15:09:53 +01:00
9df0a60b59 no implicit tls 2025-03-07 15:04:41 +01:00
3641a241a1 niri and yubikey login config 2025-03-07 12:48:04 +01:00
b40f1fc5fb yubikey + password login 2025-03-07 12:04:51 +01:00
6f36d70cdf added pam u2f auth 2025-03-07 11:27:49 +01:00
27dd02777d added backup ssh key 2025-03-06 16:48:01 +01:00
cbdea403d3 added main yubikey ssh key 2025-03-06 16:39:47 +01:00
0936a5d28f first yubikey stuff added 2025-03-06 16:37:29 +01:00
5848a4e3f8 framework for yubikey but nothing done yet 2025-03-06 15:24:56 +01:00
2e89390dd0 added papers 2025-03-06 02:44:18 +01:00
ab7f3976ee trying lix again 2025-03-05 18:37:14 +01:00
a79ff35f54 enable nix-alien again 2025-03-05 18:24:55 +01:00
c53a848919 no ssh for root 2025-03-03 15:08:15 +01:00
292c7602f7 or not 2025-03-03 15:07:11 +01:00
16403fc68d hardened kernel 2025-03-03 15:06:27 +01:00
twoneis
5d67f7c33d unfree per device 2025-03-03 15:03:50 +01:00
twoneis
444a4cb511 btrfs autoscrub on server 2025-03-03 14:34:00 +01:00
twoneis
d5dfdf8e71 nginx optimisations and email 2025-03-03 11:42:49 +01:00
twoneis
44d6373784 update 2025-03-02 01:16:18 +01:00
twoneis
2d40953bd8 new email addresses 2025-03-02 01:15:14 +01:00
twoneis
1bc8ea24df works now 2025-03-02 00:23:02 +01:00
twoneis
1d33c05128 try this proxy config 2025-03-01 23:24:58 +01:00
twoneis
bfab9f3598 blocklist in seperate file 2025-03-01 23:21:19 +01:00
twoneis
f0af00e1c2 theme works but not as default but urgh 2025-03-01 21:11:37 +01:00
twoneis
da1bd71d73 adde rosepine.json 2025-03-01 19:00:19 +01:00
twoneis
0648d7d0d3 added rosepine in nix 2025-03-01 18:59:20 +01:00
twoneis
c9063ff778 try sodiboos suggestion 2025-03-01 18:46:45 +01:00
twoneis
fbdce20e93 not quite figured out passing files to runcommand 2025-03-01 03:46:12 +01:00
twoneis
a44015b02a forgot the most important part 2025-03-01 03:35:40 +01:00
twoneis
ff7a37a433 trying this again 2025-03-01 03:34:41 +01:00
twoneis
dd1418b55a fix favicon derivation 2025-03-01 03:22:34 +01:00
twoneis
9dd0b4327d move file 2025-03-01 03:04:44 +01:00
twoneis
07b44f179b added favicon 2025-03-01 03:01:44 +01:00
twoneis
741c7e4ca4 added favicon 2025-03-01 02:51:05 +01:00
twoneis
e53536ca0f added button 2025-03-01 02:25:48 +01:00
twoneis
533852f2ad added mira icon 2025-03-01 00:57:03 +01:00
twoneis
606e382083 format 2025-02-28 19:32:44 +01:00
twoneis
42d04f49fe vm -> containers 2025-02-27 14:05:19 +01:00
twoneis
a1bfa2c1f5 no containers, yes vm 2025-02-26 17:55:39 +01:00
twoneis
addd455f27 argh whatever 2025-02-26 02:42:25 +01:00
twoneis
4c9b59885c recommended proxy settings by default 2025-02-26 01:53:36 +01:00
twoneis
2832f7b608 tried stream config, this doesn't work still 2025-02-26 01:22:34 +01:00
twoneis
545a491ac8 remove all that stuff again 2025-02-24 23:06:07 +01:00
twoneis
19a6ddd6e6 write text instead 2025-02-24 22:22:13 +01:00
twoneis
92d3bd4d4a added rosepine 2025-02-24 22:19:54 +01:00
twoneis
6f9317ac63 added libresprite 2025-02-24 22:09:06 +01:00
twoneis
650412f300 remove sourceroot 2025-02-24 21:00:15 +01:00
twoneis
e35f4398dc added blobhaj flags 2025-02-24 20:57:37 +01:00
twoneis
1edd932f5c added blobhaj files 2025-02-24 20:48:06 +01:00
twoneis
0efe8702c4 trying local src 2025-02-24 20:46:25 +01:00
twoneis
c35aec21f0 added blobhaj flags 2025-02-24 20:28:56 +01:00
twoneis
36853433f5 added blobhaj 2025-02-24 20:24:55 +01:00
twoneis
3e715817fc added hashes for emojis 2025-02-24 20:20:07 +01:00
twoneis
f7a50f22e2 add volpeon emojis 2025-02-24 19:48:01 +01:00
twoneis
66c98fe365 neocats 2025-02-24 19:45:01 +01:00
twoneis
94f5d87fd9 disable email 2025-02-24 19:37:39 +01:00
twoneis
cabc9e52e5 remove empty blocked ip 2025-02-23 16:34:30 +01:00
twoneis
a8fd58774d enable email again 2025-02-23 16:32:20 +01:00
twoneis
26c05010d7 remove netdata 2025-02-23 16:05:28 +01:00
twoneis
f51d625422 rename option 2025-02-23 15:48:43 +01:00
twoneis
6b8f0afde8 netdata again 2025-02-23 15:47:51 +01:00
twoneis
7185fdc514 change port 2025-02-23 15:32:40 +01:00
twoneis
202c7aed6c switch to grafana 2025-02-23 15:26:58 +01:00
twoneis
e16ccb1ac1 added netdata 2025-02-23 15:06:53 +01:00
twoneis
54c81c7ccf rename option 2025-02-23 14:55:26 +01:00
twoneis
e708b07e8b update 2025-02-23 12:25:48 +01:00
twoneis
5e8be92b98 add inital blocklist 2025-02-23 03:30:07 +01:00
twoneis
34b351e6b4 added akkoma config 2025-02-23 03:17:13 +01:00
twoneis
010165d1e5 try this 2025-02-23 02:49:49 +01:00
twoneis
75405128b6 prepare to steal from sodiboo 2025-02-23 02:25:49 +01:00
twoneis
f4462c2c22 play around with email more, no real results 2025-02-22 00:36:17 +01:00
twoneis
8c28158095 can be simpler, issue before was caching 2025-02-20 01:09:39 +01:00
twoneis
55e8323783 website works now 2025-02-20 01:06:02 +01:00
twoneis
8d9da997e4 fixed website path 2025-02-20 00:36:38 +01:00
twoneis
a402f425ce quick fix for matrix, should not listen on all 2025-02-20 00:25:27 +01:00
twoneis
a2338ad3b8 update 2025-02-19 22:43:07 +01:00
twoneis
7425dc1baa add all the matrix well-knowns 2025-02-19 21:12:00 +01:00
twoneis
bc3093eccb add fractal 2025-02-19 21:04:15 +01:00
twoneis
5940883d82 don't mark broken anymore 2025-02-19 20:44:32 +01:00
twoneis
6820f4dbe1 matrix works 2025-02-19 20:44:06 +01:00
twoneis
caba7f3420 not more working but who knows 2025-02-18 21:46:34 +01:00
twoneis
a27addf7ca trying some fixes 2025-02-18 19:49:21 +01:00
twoneis
8bb634a237 fixed field name 2025-02-18 17:02:40 +01:00
twoneis
19b0d8b375 some more config for email, almost fully works 2025-02-18 16:52:42 +01:00
twoneis
75558aeee3 remove old ssh keys 2025-02-18 13:58:21 +01:00
twoneis
8cc6dfd2a5 too much hassle, whatever 2025-02-18 13:35:34 +01:00
twoneis
4b44cea935 also change database user 2025-02-18 13:17:17 +01:00
twoneis
ff5131639f rename forgejo user to git 2025-02-18 13:15:55 +01:00
twoneis
a9e793cb55 added new ssh key 2025-02-18 13:08:11 +01:00
twoneis
2de692b99a update 2025-02-17 20:30:50 +01:00
twoneis
c113b544ca shortcut for input volume 2025-02-15 12:49:40 +01:00
twoneis
5a432249f1 update 2025-02-15 12:45:11 +01:00
twoneis
0ec6f262c6 remove zoom 2025-02-15 12:44:22 +01:00
twoneis
e9627d6344 added zoom 2025-02-13 22:37:00 +01:00
twoneis
723e4676df niri stacking 2025-02-13 22:36:53 +01:00
twoneis
13adbfab7d update 2025-02-12 23:31:16 +01:00
twoneis
1b2ff2b8ba update 2025-02-11 20:27:08 +01:00
twoneis
667c698a7a disable stuff that's broken 2025-02-09 20:37:32 +01:00
twoneis
9121162d30 last try stalwart 2025-02-09 19:16:30 +01:00
twoneis
67152beb07 sawe state 2025-02-09 18:29:44 +01:00
twoneis
66a4bef740 certs not fully working yet 2025-02-09 17:22:54 +01:00
twoneis
cd8658c042 correct name 2025-02-09 14:28:18 +01:00
twoneis
718a8c08cf allow chpu.eu subdomains 2025-02-09 14:27:04 +01:00
twoneis
66cf3f28c6 web interface works but login broken 2025-02-09 14:23:02 +01:00
twoneis
d34a1a4f1f SSL for email website 2025-02-09 13:28:09 +01:00
twoneis
2f857b6892 semi working 2025-02-09 13:27:01 +01:00
twoneis
47a8407bcf spelling 2025-02-08 23:18:06 +01:00
twoneis
8404bfca3d update 2025-02-08 22:52:29 +01:00
twoneis
2db6931385 consistent names 2025-02-08 22:46:42 +01:00
twoneis
69641f2aed added mail stuff 2025-02-08 22:45:17 +01:00
twoneis
b2dcd00b30 add mail option 2025-02-08 21:01:53 +01:00
twoneis
40051640a6 add file 2025-02-08 17:20:18 +01:00
twoneis
36eb89f9c9 initial iceshrimp package 2025-02-08 17:18:54 +01:00
twoneis
06617a2e1d git test 2025-02-08 16:18:34 +01:00
twoneis
1bf0ff35fc clear fedi module 2025-02-08 16:03:26 +01:00
twoneis
6efa1dde3a last akkoma try 2025-02-08 12:46:57 +01:00
twoneis
8ff6659ebc open ports for matrix 2025-02-08 03:02:32 +01:00
twoneis
f1dbab5a52 switch fractal for element 2025-02-08 02:51:37 +01:00
twoneis
ad4888171c no registration 2025-02-08 02:43:44 +01:00
twoneis
0a88324751 acme and allow registration 2025-02-08 02:28:19 +01:00
twoneis
47fc9f9fc9 no password based ssh login 2025-02-08 02:10:40 +01:00
twoneis
552a324750 remove programs failing to build for now 2025-02-08 02:10:27 +01:00
twoneis
6b8045e955 switch to latest kernel 2025-02-08 01:29:11 +01:00
twoneis
ccee136e8c some more website stuff idk 2025-02-08 01:20:21 +01:00
twoneis
96baf34521 init forgejo 2025-02-08 01:19:49 +01:00
twoneis
912e0a1617 update 2025-02-08 01:08:51 +01:00
twoneis
8eee70e8ee acme working 2025-02-07 22:48:46 +01:00
twoneis
1d44a056b9 plsplspls 2025-02-07 22:36:30 +01:00
twoneis
12186e8005 slowly getting to acme setup 2025-02-07 22:33:31 +01:00
twoneis
9634b57b86 init matrix config 2025-02-07 21:16:16 +01:00
twoneis
256ff49887 added fractal 2025-02-07 21:16:03 +01:00
twoneis
42fca7dc7d trying to fix fedi but leave for now 2025-02-07 21:02:04 +01:00
twoneis
519ab25773 add default set again 2025-02-07 20:48:04 +01:00
twoneis
6c3b01d6a5 test this 2025-02-07 20:46:05 +01:00
twoneis
d1fe8fcbb3 set user 2025-02-07 20:41:29 +01:00
twoneis
0878df7673 follow guide 2025-02-07 20:32:25 +01:00
twoneis
b5d0923199 disable init db? 2025-02-07 20:28:29 +01:00
twoneis
a09edd8478 doesn't fail check at least 2025-02-07 20:20:02 +01:00
twoneis
fe0bf55df2 enable fedi 2025-02-07 17:40:12 +01:00
twoneis
9bd1efb7d6 fedi servername 2025-02-07 17:36:30 +01:00
twoneis
4d283f61a5 remove testing 2025-02-07 17:28:14 +01:00
twoneis
4b23e72a67 correct status code on not found 2025-02-07 17:27:44 +01:00
twoneis
8b22d0f4fc maybe 2025-02-07 17:22:22 +01:00
twoneis
0ac46bf246 like this? 2025-02-07 17:20:47 +01:00
twoneis
ffe57934b9 who now? 2025-02-07 17:20:22 +01:00
twoneis
8aee697fea let's test 2025-02-07 17:16:31 +01:00
twoneis
c30549724f consistent 2025-02-07 17:14:25 +01:00
twoneis
a9aaa9bfcf checking some stuff 2025-02-06 21:56:43 +01:00
twoneis
5c1af20894 open firewall 2025-02-06 18:58:53 +01:00
twoneis
704cf3e2af spelling 2025-02-06 18:53:28 +01:00
twoneis
3e96b08562 website maybe 2025-02-06 18:51:46 +01:00
twoneis
65139a31ac added nginx option 2025-02-06 18:35:28 +01:00
twoneis
ddccfdb328 added example for keybind option 2025-02-06 18:33:01 +01:00
twoneis
2415cd8d57 optional ssh 2025-02-06 18:20:31 +01:00
twoneis
b3628f16a1 update 2025-02-06 18:14:28 +01:00
twoneis
b9a69ff3c5 clean? more like bad 2025-02-06 18:12:25 +01:00
twoneis
78241b550d prepare for server config 2025-02-06 17:27:03 +01:00
twoneis
d745c36a31 added bios compat partition 2025-02-06 15:35:54 +01:00
twoneis
867876be63 grub correctly maybe 2025-02-06 15:28:51 +01:00
twoneis
c2b825502c boot loader and disko 2025-02-06 15:18:50 +01:00
twoneis
acc28f0d3b changes to server 2025-02-06 14:56:17 +01:00
twoneis
4ef562c1da initial server config 2025-02-04 20:08:19 +01:00
twoneis
1071e51afd update 2025-02-03 13:46:28 +01:00
twoneis
bf7b2fb209 update 2025-02-03 02:23:13 +01:00
twoneis
669103a3bb update 2025-01-31 12:05:46 +01:00
twoneis
249e29642b update 2025-01-28 15:36:40 +01:00
twoneis
7f136d474e updated and bump lanzaboote version 2025-01-25 18:37:16 +01:00
twoneis
2d261827e0 syntax 2025-01-23 18:59:08 +01:00
twoneis
ea6ae2f957 added adb 2025-01-23 18:57:53 +01:00
twoneis
7673d1f9a5 Revert "update"
This reverts commit ba5462eee7.
2025-01-23 18:55:19 +01:00
twoneis
ba5462eee7 update 2025-01-23 14:56:20 +01:00
twoneis
7936fcb5aa added some stuff for vial please 2025-01-22 21:54:31 +01:00
twoneis
bf21a86365 let window decide default column width 2025-01-20 02:24:26 +01:00
twoneis
22f0c2c895 generate uni monitors all the same just by adding id 2025-01-20 02:17:06 +01:00
twoneis
908dc45aed update 2025-01-20 01:44:07 +01:00
twoneis
74d2b9e665 update 2025-01-16 16:49:58 +01:00
twoneis
05a51246e3 new uni monitor 2025-01-16 16:47:56 +01:00
twoneis
a526f5fa10 fuzzel bigger please 2025-01-15 00:11:50 +01:00
twoneis
bfdbc3771c added more uni displays, when will it end 2025-01-15 00:08:42 +01:00
twoneis
29a5311a70 update 2025-01-13 21:03:23 +01:00
twoneis
f472668dc6 update 2025-01-10 22:44:41 +01:00
twoneis
87e33f4ea0 remove wezterm 2025-01-10 21:36:55 +01:00
twoneis
9f31b9f3db safe wezterm color scheme, will remove 2025-01-10 21:36:35 +01:00
twoneis
0e422172cf new key folder 2025-01-08 20:48:03 +01:00
twoneis
d319ab0c53 enable secure boot 2025-01-08 20:43:35 +01:00
twoneis
1e1449f37e added nix-alien 2025-01-08 20:40:38 +01:00
twoneis
ce6cc745b7 fix stuff 2025-01-08 20:29:46 +01:00
Mira Chacku Purakal
e2dd48bc22
Update default.nix 2025-01-08 19:51:44 +01:00
Mira Chacku Purakal
47f20759c0
correct device maybe 2025-01-08 19:07:40 +01:00
Mira Chacku Purakal
81b3f4d1ca
minimal to get started 2025-01-08 19:00:43 +01:00
Mira Chacku Purakal
9b50c12736
hopefully set by disko 2025-01-08 18:57:16 +01:00
Mira Chacku Purakal
b65758792e
add disko to args 2025-01-08 18:55:10 +01:00
Mira Chacku Purakal
b2a2542c2c
add missing semicolon 2025-01-08 18:54:02 +01:00
twoneis
4e56e135c9 bump state version 2025-01-08 18:37:03 +01:00
twoneis
dc42d6d36f name without / 2025-01-08 18:24:19 +01:00
twoneis
53d20b0745 remove old disk config 2025-01-08 18:19:21 +01:00
twoneis
b1f0060e15 add persist subvol 2025-01-08 18:15:25 +01:00
twoneis
3abec60b83 initial disko config 2025-01-08 18:13:44 +01:00
twoneis
c3f1d785e4 remove unused systems 2025-01-08 18:13:30 +01:00
twoneis
59435c357f update 2024-12-30 00:17:00 +01:00
twoneis
435436d2ba enable docker, disable vm 2024-12-27 11:40:51 +01:00
twoneis
26c3e9f727 update 2024-12-27 11:40:06 +01:00
twoneis
1efd72f865 update 2024-12-25 15:16:56 +01:00
twoneis
efedce48ca replace nur.overlay with nur.overlays.default 2024-12-18 11:24:48 +01:00
twoneis
3aabb6a015 update 2024-12-18 11:21:33 +01:00
twoneis
b361d27493 add libreoffice again 2024-12-18 11:17:31 +01:00
twoneis
b500cef20d use nerdfonts package 2024-12-06 14:54:23 +01:00
twoneis
ccd4214df5 update 2024-12-06 14:52:38 +01:00
twoneis
6ed4da67b8 add tor-browser 2024-12-01 23:02:56 +01:00
twoneis
580e203105 no more games here 2024-11-29 22:44:14 +01:00
twoneis
1b71d89194 update 2024-11-29 22:41:46 +01:00
twoneis
32048ca4e8 remove libreoffice 2024-11-23 17:48:05 +01:00
twoneis
9b8c953e1c update 2024-11-23 16:08:42 +01:00
twoneis
16197037e9 update 2024-11-21 00:07:04 +01:00
twoneis
62bad74793 update 2024-11-18 01:05:12 +01:00
twoneis
4f9b07241a better button for layout switch 2024-11-18 01:05:07 +01:00
twoneis
6bc538dc43 don't include blender 2024-11-11 12:24:00 +01:00
twoneis
3b733e6baa update 2024-11-09 12:02:32 +01:00
twoneis
1877e1cc9c update 2024-11-07 11:34:42 +01:00
twoneis
e87a215ff1 sroll to move workspace 2024-10-31 16:21:05 +01:00
twoneis
e2aeb36ed1 add element instead 2024-10-31 13:26:46 +01:00
twoneis
73c22e4e16 update 2024-10-31 12:56:22 +01:00
twoneis
444e7ca754 move entire workspace instead of columns 2024-10-31 12:55:49 +01:00
twoneis
586462785d update 2024-10-30 16:29:00 +01:00
twoneis
af7bcf8de1 good monitor positions 2024-10-25 16:38:00 +02:00
twoneis
9f09586b67 update 2024-10-25 13:55:13 +02:00
twoneis
5953c1b38c add fragments 2024-10-22 23:45:35 +02:00
twoneis
827e27895e update 2024-10-20 15:39:29 +02:00
twoneis
eb481f5531 lower res again 2024-10-20 15:38:44 +02:00
twoneis
4218d34ab9 lower res to avoid flicker 2024-10-19 21:12:23 +02:00
twoneis
761889f6f8 higher resolution 2024-10-19 20:00:57 +02:00
twoneis
746d33066a start steam in big picture 2024-10-18 10:57:02 +02:00
twoneis
213db71582 better xwl wrapper 2024-10-15 17:04:44 +02:00
twoneis
d739e2cc35 cleanup and secure boot 2024-10-14 23:54:16 +02:00
twoneis
89788833f0 this was actually the problem 2024-10-14 23:33:52 +02:00
twoneis
80aa739ff5 some cleanup 2024-10-14 22:36:21 +02:00
twoneis
e9e0917f95 update 2024-10-14 22:21:20 +02:00
1085 changed files with 3328 additions and 1270 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
.direnv/

View file

@ -1,77 +1,37 @@
{ config, pkgs, ... }: let
inherit (config.device) disks;
in{
{pkgs, ...}: {
imports = [
./options.nix
./disks.nix
./disko.nix
];
nixpkgs.hostPlatform = "x86_64-linux";
networking.hostName = "ellaca";
networking = {
hostName = "ellaca";
domain = "twoneis.site";
};
boot = {
initrd = {
availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
};
kernelModules = [ "kvm-amd" ];
kernelPackages = pkgs.linuxPackages_zen;
initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod"];
kernelPackages = pkgs.linuxPackages_latest;
loader = {
efi.canTouchEfiVariables = true;
grub = {
enable = true;
devices = ["/dev/sda"];
efiSupport = true;
device = "nodev";
useOSProber = true;
font = null;
splashImage = null;
efiInstallAsRemovable = true;
};
};
};
fileSystems = {
"/boot" = {
device = "/dev/disk/by-uuid/${disks.boot}";
fsType = "vfat";
};
"/" = {
device = "/dev/disk/by-uuid/${disks.root}";
fsType = "btrfs";
options = [ "subvol=root" "compress=zstd" "noatime" ];
};
"/nix" = {
device = "/dev/disk/by-uuid/${disks.root}";
fsType = "btrfs";
options = [ "subvol=nix" "compress=zstd" "noatime" ];
};
"/ext" = {
device = "/dev/disk/by-uuid/${disks.ext}";
fsType = "btrfs";
options = [ "subvol=ext" "compress=zstd" "noatime" ];
};
};
services = {
xserver.videoDrivers = ["nvidia"];
btrfs.autoScrub = {
enable = true;
fileSystems = ["/"];
};
};
hardware = {
enableRedistributableFirmware = true;
enableAllFirmware = true;
cpu.amd.updateMicrocode = true;
nvidia = {
modesetting.enable = true;
nvidiaSettings = false;
package = config.boot.kernelPackages.nvidiaPackages.vulkan_beta;
};
graphics = {
enable = true;
enable32Bit = true;
};
};
}

54
devices/ellaca/disko.nix Normal file
View file

@ -0,0 +1,54 @@
{
disko.devices = {
disk = {
main = {
type = "disk";
device = "/dev/sda";
content = {
type = "gpt";
partitions = {
boot = {
size = "1M";
type = "EF02";
};
esp = {
priority = 1;
name = "BOOT";
size = "2G";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = ["umask=0077"];
};
};
root = {
size = "100%";
content = {
type = "btrfs";
extraArgs = ["-f"]; # Override existing partition
subvolumes = {
"/root" = {
mountOptions = ["compress=zstd" "noatime"];
mountpoint = "/";
};
"/nix" = {
mountOptions = ["compress=zstd" "noatime"];
mountpoint = "/nix";
};
"/swap" = {
mountpoint = "/.swapvol";
swap = {
swapfile.size = "20M";
};
};
};
};
};
};
};
};
};
};
}

View file

@ -1,7 +0,0 @@
{ ... }: {
device.disks = {
boot = "12CE-A600";
root = "b4a61b48-017f-4d16-ab05-d5c867f2ca6f";
ext = "3ed92a26-775a-4e39-ac1c-84b2822cd3dd";
};
}

View file

@ -1,9 +1,63 @@
{ ... }: {
{...}: let
email-domain = "chpu.eu";
web-domain = "twoneis.site";
new-domain = "miraculous.place";
in {
conf = {
apps.enable = true;
niri.enable = true;
host = "server";
nginx = {
domains = [
email-domain
web-domain
new-domain
];
email = "porkbun@${email-domain}";
};
stateVersion = "24.05";
hmStateVersion = "24.11";
email = {
enable = true;
domain = email-domain;
ports = {
local = 9000;
};
};
website = {
enable = true;
domain = {
full = web-domain;
base = web-domain;
};
};
fedi = {
enable = true;
domain = {
full = "fedi.${web-domain}";
base = web-domain;
};
email = "akkoma@${email-domain}";
};
matrix = {
enable = true;
domain = {
full = "matrix.${web-domain}";
base = web-domain;
};
email = "matrix@${email-domain}";
};
git = {
enable = true;
domain = {
full = "git.${web-domain}";
base = web-domain;
};
};
stateVersion = "25.05";
hmStateVersion = "25.05";
};
}

View file

@ -1,23 +1,30 @@
{ lib, config, pkgs, ... }: let
{
lib,
pkgs,
...
}: let
inherit (lib) mkDefault;
inherit (config.device) disks;
in {
imports = [
./disks.nix
./options.nix
];
nixpkgs.hostPlatform = "x86_64-linux";
nixpkgs = {
hostPlatform = "x86_64-linux";
config = {
allowUnfree = true;
};
};
networking.hostName = "inkvine";
boot = {
initrd = {
availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod" ];
luks.devices.root.device = "/dev/disk/by-uuid/${disks.crypt}";
kernelModules = [ "amdgpu" ];
availableKernelModules = ["nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod"];
luks.devices.root.device = "/dev/disk/by-label/CRYPT";
kernelModules = ["amdgpu"];
};
kernelPackages = pkgs.linuxPackages_zen;
kernelPackages = pkgs.linuxPackages_latest;
loader = {
systemd-boot = {
enable = mkDefault true;
@ -29,18 +36,35 @@ in {
fileSystems = {
"/boot" = {
device = "/dev/disk/by-uuid/${disks.boot}";
device = "/dev/disk/by-label/BOOT";
fsType = "vfat";
};
"/" = {
device = "/dev/disk/by-uuid/${disks.root}";
fsType = "ext4";
device = "/dev/disk/by-label/ROOT";
fsType = "btrfs";
options = ["subvol=root" "compress=zstd" "noatime"];
};
"/nix" = {
device = "/dev/disk/by-label/ROOT";
fsType = "btrfs";
options = ["subvol=nix" "compress=zstd" "noatime"];
neededForBoot = true;
};
"/swap" = {
device = "/dev/disk/by-label/ROOT";
fsType = "btrfs";
options = ["subvol=swap" "noatime"];
};
};
swapDevices = [{device = "/swap/swapfile";}];
services = {
fwupd.enable = true;
fwupd.enable = true;
power-profiles-daemon.enable = true;
btrfs.autoScrub = {
enable = true;
fileSystems = ["/"];
};
};
hardware = {

57
devices/inkvine/disko.nix Normal file
View file

@ -0,0 +1,57 @@
{...}: {
disko.devices = {
disk = {
main = {
type = "disk";
device = "/dev/nvme0n1";
content = {
type = "gpt";
partitions = {
ESP = {
size = "1G";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = ["umask=0077"];
};
};
luks = {
size = "100%";
content = {
type = "luks";
name = "crypted";
settings = {
allowDiscards = true;
};
content = {
type = "btrfs";
extraArgs = ["-f"];
subvolumes = {
"root" = {
mountpoint = "/";
mountOptions = ["compress=zstd" "noatime"];
};
"nix" = {
mountpoint = "/nix";
mountOptions = ["compress=zstd" "noatime"];
};
"persist" = {
mountpoint = "/persist";
mountOptions = ["compress=zstd" "noatime"];
};
"swap" = {
mountpoint = "/.swapvol";
swap.swapfile.size = "8G";
};
};
};
};
};
};
};
};
};
};
}

View file

@ -1,7 +0,0 @@
{ ... }: {
device.disks = {
boot = "5BD3-FDE6";
crypt = "7171d4c2-fd27-45ed-b058-31bab14681e8";
root = "f2b17157-1e79-4a44-8349-e611c4768949";
};
}

View file

@ -1,12 +1,10 @@
{ ... }: {
{...}: {
conf = {
apps.enable = true;
niri.enable = true;
games.enable = true;
extraLayout.enable = true;
vm.enable = false;
host = "laptop";
secureboot.enable = true;
yubikey.login = true;
stateVersion = "24.05";
stateVersion = "24.11";
hmStateVersion = "24.11";
};
}

View file

@ -1,70 +0,0 @@
{ config, pkgs, ... }: let
inherit (config.device) disks;
in {
imports = [
./options.nix
./disks.nix
];
nixpkgs.hostPlatform = "x86_64-linux";
networking.hostName = "pleniscenta";
boot = {
initrd = {
availableKernelModules = [ "ahci" "xhci_pci" "ums_realtek" "usbhid" "usb_storage" "sd_mod" "sdhci_pci" ];
luks.devices.root.device = "/dev/disk/by-uuid/${disks.crypt}";
};
kernelModules = [ "kvm-intel" ];
kernelPackages = pkgs.linuxPackages_latest;
loader = {
systemd-boot = {
enable = true;
};
efi.canTouchEfiVariables = true;
};
};
fileSystems = {
"/boot" = {
device = "/dev/disk/by-uuid/${disks.boot}";
fsType = "vfat";
};
"/" = {
device = "/dev/disk/by-uuid/${disks.root}";
fsType = "btrfs";
options = [ "subvol=root" "compress=zstd" "noatime" ];
};
"/nix" = {
device = "/dev/disk/by-uuid/${disks.root}";
fsType = "btrfs";
options = [ "subvol=nix" "compress=zstd" "noatime" ];
};
"/persist" = {
device = "/dev/disk/by-uuid/${disks.root}";
fsType = "btrfs";
options = [ "subvol=persist" "compress=zstd" "noatime" ];
};
"/swap" = {
device = "/dev/disk/by-uuid/${disks.root}";
fsType = "btrfs";
options = [ "subvol=swap" "noatime" ];
};
};
swapDevices = [ { device = "/swap/swapfile"; } ];
services.thermald.enable = true;
hardware = {
enableRedistributableFirmware = true;
enableAllFirmware = true;
cpu.intel.updateMicrocode = true;
graphics = {
enable = true;
enable32Bit = true;
};
};
}

View file

@ -1,7 +0,0 @@
{ ... }: {
device.disks = {
crypt = "470a6d23-9f08-4c4d-afbb-63d6df1ab6a6";
boot = "4A39-D0DF";
root = "75e6536a-4836-4f50-86b3-f9250edca3c0";
};
}

View file

@ -1,6 +0,0 @@
{ ... }: {
conf = {
stateVersion = "24.05";
hmStateVersion = "24.11";
};
}

468
flake.lock generated
View file

@ -1,18 +1,35 @@
{
"nodes": {
"crane": {
"alejandra": {
"inputs": {
"fenix": "fenix",
"flakeCompat": "flakeCompat",
"nixpkgs": [
"lanzaboote",
"nixpkgs"
]
},
"locked": {
"lastModified": 1717535930,
"narHash": "sha256-1hZ/txnbd/RmiBPNUs7i8UQw2N89uAK3UzrGAWdnFfU=",
"lastModified": 1730688725,
"narHash": "sha256-g0SSfTWZ5mtMOpQic+eqq9sXMy1E/7yKxxfupZd9V4A=",
"owner": "kamadorueda",
"repo": "alejandra",
"rev": "2bb91e309ca99656addff5c74545acbf5813636d",
"type": "github"
},
"original": {
"owner": "kamadorueda",
"ref": "3.1.0",
"repo": "alejandra",
"type": "github"
}
},
"crane": {
"locked": {
"lastModified": 1731098351,
"narHash": "sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp+4cAgkut+NNE=",
"owner": "ipetkov",
"repo": "crane",
"rev": "55e7754ec31dac78980c8be45f8a28e80e370946",
"rev": "ef80ead953c1b28316cc3f8613904edc2eb90c28",
"type": "github"
},
"original": {
@ -21,6 +38,49 @@
"type": "github"
}
},
"disko": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1736864502,
"narHash": "sha256-ItkIZyebGvNH2dK9jVGzJHGPtb6BSWLN8Gmef16NeY0=",
"owner": "nix-community",
"repo": "disko",
"rev": "0141aabed359f063de7413f80d906e1d98c0c123",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "latest",
"repo": "disko",
"type": "github"
}
},
"fenix": {
"inputs": {
"nixpkgs": [
"alejandra",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1730615655,
"narHash": "sha256-2HBR3zLn57LXKNRtxBb+O+uDqHM4n0pz51rPayMl4cg=",
"owner": "nix-community",
"repo": "fenix",
"rev": "efeb50e2535b17ffd4a135e6e3e5fd60a525180c",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
@ -37,6 +97,21 @@
"type": "github"
}
},
"flake-compat_2": {
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
@ -45,11 +120,11 @@
]
},
"locked": {
"lastModified": 1717285511,
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
"lastModified": 1730504689,
"narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
"rev": "506278e768c2a08bec68eb62932193e341f55c90",
"type": "github"
},
"original": {
@ -60,14 +135,17 @@
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
"nixpkgs-lib": [
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1727826117,
"narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
@ -76,54 +154,19 @@
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
},
"flakeCompat": {
"flake": false,
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flakey-profile": {
"locked": {
"lastModified": 1712898590,
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
"owner": "lf-",
"repo": "flakey-profile",
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
"type": "github"
},
"original": {
"owner": "lf-",
"repo": "flakey-profile",
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
@ -156,11 +199,11 @@
]
},
"locked": {
"lastModified": 1728791962,
"narHash": "sha256-nr5QiXwQcZmf6/auC1UpX8iAtINMtdi2mH+OkqJQVmU=",
"lastModified": 1744380363,
"narHash": "sha256-cXjAUuAfQDPSLSsckZuTioQ986iqSPTzx8D7dLAcC+Q=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "64c6325b28ebd708653dd41d88f306023f296184",
"rev": "e43c6bcb101ba3301522439c459288c4a248f624",
"type": "github"
},
"original": {
@ -174,7 +217,6 @@
"crane": "crane",
"flake-compat": "flake-compat",
"flake-parts": "flake-parts",
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs"
],
@ -182,58 +224,22 @@
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1718178907,
"narHash": "sha256-eSZyrQ9uoPB9iPQ8Y5H7gAmAgAvCw3InStmU3oEjqsE=",
"lastModified": 1737639419,
"narHash": "sha256-AEEDktApTEZ5PZXNDkry2YV2k6t0dTgLPEmAZbnigXU=",
"owner": "nix-community",
"repo": "lanzaboote",
"rev": "b627ccd97d0159214cee5c7db1412b75e4be6086",
"rev": "a65905a09e2c43ff63be8c0e86a93712361f871e",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "v0.4.1",
"ref": "v0.4.2",
"repo": "lanzaboote",
"type": "github"
}
},
"lix": {
"inputs": {
"flake-utils": "flake-utils_2",
"flakey-profile": "flakey-profile",
"lix": "lix_2",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1727752861,
"narHash": "sha256-jowmo2aEzrEpPSM96IWtajuogdJm7DjAWxFTEb7Ct0s=",
"rev": "fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d.tar.gz?rev=fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz"
}
},
"lix_2": {
"flake": false,
"locked": {
"lastModified": 1727712632,
"narHash": "sha256-7kaZRZCWG8PmxwIDTVKjJo3VtAGDun7mqfAMlucQbdQ=",
"rev": "a16ceb9411c57993d811c6bebb517742fe3d34e3",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/a16ceb9411c57993d811c6bebb517742fe3d34e3.tar.gz?rev=a16ceb9411c57993d811c6bebb517742fe3d34e3"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/lix/archive/main.tar.gz"
}
},
"niri": {
"inputs": {
"flake-parts": "flake-parts_2",
"niri-stable": "niri-stable",
"niri-unstable": "niri-unstable",
"nixpkgs": [
@ -244,11 +250,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1728804056,
"narHash": "sha256-56PIycP8j95LmZzcOKgcoNm4e7yvnjFz7+b4dxIDGKE=",
"lastModified": 1744381460,
"narHash": "sha256-ay8Vijc8IuQiA+bMmKaKFy/2iTtvB9K7xqrirhnwivU=",
"owner": "sodiboo",
"repo": "niri-flake",
"rev": "1a782646d0ae5563d333095dfa3eadd756331e32",
"rev": "4e592d48fb54ed742fb1ab14972a11432b2cbc31",
"type": "github"
},
"original": {
@ -260,16 +266,16 @@
"niri-stable": {
"flake": false,
"locked": {
"lastModified": 1726304152,
"narHash": "sha256-4YDrKMwXGVOBkeaISbxqf24rLuHvO98TnqxWYfgiSeg=",
"lastModified": 1740117926,
"narHash": "sha256-mTTHA0RAaQcdYe+9A3Jx77cmmyLFHmRoZdd8RpWa+m8=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "6a48728ffb1e638839b07f9ab2f06b2adb41dc61",
"rev": "b94a5db8790339cf9134873d8b490be69e02ac71",
"type": "github"
},
"original": {
"owner": "YaLTeR",
"ref": "v0.1.9",
"ref": "v25.02",
"repo": "niri",
"type": "github"
}
@ -277,11 +283,11 @@
"niri-unstable": {
"flake": false,
"locked": {
"lastModified": 1728716283,
"narHash": "sha256-v6hhDJNLhdCiuFn6ic7D3lk/lk27+6OOzG213ikRu4w=",
"lastModified": 1744271375,
"narHash": "sha256-W4h6ZX2WHJ6k0ApUTpuxkDPZ5JAI3MLWFP4lpfu3iv8=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "33b39913c7121a6c7b112beb0e329c3e64e4f57a",
"rev": "df9466243504a00240f7048a1f9644cb002776a8",
"type": "github"
},
"original": {
@ -290,13 +296,54 @@
"type": "github"
}
},
"nix-alien": {
"inputs": {
"flake-compat": "flake-compat_2",
"nix-index-database": "nix-index-database",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1742038403,
"narHash": "sha256-mzZdujmFWC+wHRvm0tKUlXL0LLz3YI3EDUCnFCtzgxY=",
"owner": "thiagokokada",
"repo": "nix-alien",
"rev": "876d83ac35fc52145674282f87898824182edc48",
"type": "github"
},
"original": {
"owner": "thiagokokada",
"repo": "nix-alien",
"type": "github"
}
},
"nix-index-database": {
"inputs": {
"nixpkgs": [
"nix-alien",
"nixpkgs"
]
},
"locked": {
"lastModified": 1741619381,
"narHash": "sha256-koZtlJRqi0/MD/AKd0KrXLA2NuBOVzlIyAJprjzpxZE=",
"owner": "nix-community",
"repo": "nix-index-database",
"rev": "66537fb185462ba9b07f4e6f2d54894a1b2d04ab",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nix-index-database",
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1728729581,
"narHash": "sha256-oazkQ/z7r43YkDLLQdMg8oIB3CwWNb+2ZrYOxtLEWTQ=",
"lastModified": 1744366945,
"narHash": "sha256-OuLhysErPHl53BBifhesrRumJNhrlSgQDfYOTXfgIMg=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "a8dd1b21995964b115b1e3ec639dd6ce24ab9806",
"rev": "1fe3cc2bc5d2dc9c81cb4e63d2f67c1543340df1",
"type": "github"
},
"original": {
@ -307,55 +354,27 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1728492678,
"narHash": "sha256-9UTxR8eukdg+XZeHgxW5hQA9fIKHsKCdOIUycTryeVw=",
"owner": "nixos",
"lastModified": 1741851582,
"narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5633bcff0c6162b9e4b5f1264264611e950c8ec7",
"rev": "6607cf789e541e7873d40d3a8f7815ea92204f32",
"type": "github"
},
"original": {
"owner": "nixos",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1727825735,
"narHash": "sha256-0xHYkMkeLVQAMa7gvkddbPqpxph+hDzdu1XdGPJR+Os=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1710695816,
"narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=",
"lastModified": 1730741070,
"narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "614b4613980a522ba49f0d194531beddbb7220d3",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-23.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1728740863,
"narHash": "sha256-u+rxA79a0lyhG+u+oPBRtTDtzz8kvkc9a6SWSt9ekVc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a3f9ad65a0bf298ed5847629a57808b97e6e8077",
"rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
"type": "github"
},
"original": {
@ -365,13 +384,66 @@
"type": "github"
}
},
"nur": {
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1728816488,
"narHash": "sha256-LzHbTre1XBb8G6mOOMiVo0a18zEQn4FgL6Qkc0UlP/Y=",
"lastModified": 1744309437,
"narHash": "sha256-QZnNHM823am8apCqKSPdtnzPGTy2ZB4zIXOVoBp5+W0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f9ebe33a928b5d529c895202263a5ce46bdf12f7",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1744232761,
"narHash": "sha256-gbl9hE39nQRpZaLjhWKmEu5ejtQsgI5TWYrIVVJn30U=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "f675531bc7e6657c10a18b565cfebd8aa9e24c14",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1744232761,
"narHash": "sha256-gbl9hE39nQRpZaLjhWKmEu5ejtQsgI5TWYrIVVJn30U=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "f675531bc7e6657c10a18b565cfebd8aa9e24c14",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_3",
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1744383978,
"narHash": "sha256-lx1XXdOTRa5ntY6GbSlu+h0XqMFVptpDIm3r7LoFwO4=",
"owner": "nix-community",
"repo": "nur",
"rev": "f4b5dd4bba09018564cbf60ddb4bdd5b5784e869",
"rev": "5b4559e4f4a968dac414504be84a135a7818cbce",
"type": "github"
},
"original": {
@ -394,11 +466,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1717664902,
"narHash": "sha256-7XfBuLULizXjXfBYy/VV+SpYMHreNRHk9nKMsm1bgb4=",
"lastModified": 1731363552,
"narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=",
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
"rev": "cc4d466cb1254af050ff7bdf47f6d404a7c646d1",
"rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0",
"type": "github"
},
"original": {
@ -409,32 +481,47 @@
},
"root": {
"inputs": {
"alejandra": "alejandra",
"disko": "disko",
"home-manager": "home-manager",
"lanzaboote": "lanzaboote",
"lix": "lix",
"niri": "niri",
"nix-alien": "nix-alien",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
"nixpkgs": "nixpkgs_2",
"nur": "nur"
}
},
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1730555913,
"narHash": "sha256-KNHZUlqsEibg3YtfUyOFQSofP8hp1HKoY+laoesBxRM=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "f17a5bbfd0969ba2e63a74505a80e55ecb174ed9",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"rust-overlay": {
"inputs": {
"flake-utils": [
"lanzaboote",
"flake-utils"
],
"nixpkgs": [
"lanzaboote",
"nixpkgs"
]
},
"locked": {
"lastModified": 1717813066,
"narHash": "sha256-wqbRwq3i7g5EHIui0bIi84mdqZ/It1AXBSLJ5tafD28=",
"lastModified": 1731897198,
"narHash": "sha256-Ou7vLETSKwmE/HRQz4cImXXJBr/k9gp4J4z/PF8LzTE=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "6dc3e45fe4aee36efeed24d64fc68b1f989d5465",
"rev": "0be641045af6d8666c11c2c40e45ffc9667839b5",
"type": "github"
},
"original": {
@ -443,49 +530,40 @@
"type": "github"
}
},
"systems": {
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"xwayland-satellite-stable": {
"flake": false,
"locked": {
"lastModified": 1718165778,
"narHash": "sha256-dwF9nI54a6Fo9XU5s4qmvMXSgCid3YQVGxch00qEMvI=",
"lastModified": 1739246919,
"narHash": "sha256-/hBM43/Gd0/tW+egrhlWgOIISeJxEs2uAOIYVpfDKeU=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "b6d281967cb0b7bf1dfdb8d0f597b517dc4aa5c5",
"rev": "44590a416d4a3e8220e19e29e0b6efe64a80315d",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"ref": "v0.4",
"ref": "v0.5.1",
"repo": "xwayland-satellite",
"type": "github"
}
@ -493,11 +571,11 @@
"xwayland-satellite-unstable": {
"flake": false,
"locked": {
"lastModified": 1726378112,
"narHash": "sha256-OANPb73V/RQDqtpIcbzeJ93KuOHKFQv+1xXC44Ut7tY=",
"lastModified": 1743346993,
"narHash": "sha256-i7rWd/5BcqLgQEtB5L/6gKN5R5GUJcmm34F+iBivH60=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "b962a0f33b503aa39c9cf6919f488b664e5b79b4",
"rev": "45c055696437a08e3989d9b91d9c617b84cc2bc3",
"type": "github"
},
"original": {

View file

@ -4,20 +4,25 @@
url = "github:nixos/nixpkgs/nixos-unstable";
};
lix = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
alejandra = {
url = "github:kamadorueda/alejandra/3.1.0";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-hardware = {
url = "github:nixos/nixos-hardware";
};
disko = {
url = "github:nix-community/disko/latest";
inputs.nixpkgs.follows = "nixpkgs";
};
nur = {
url = "github:nix-community/nur";
};
@ -28,9 +33,13 @@
};
lanzaboote = {
url = "github:nix-community/lanzaboote/v0.4.1";
url = "github:nix-community/lanzaboote/v0.4.2";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-alien = {
url = "github:thiagokokada/nix-alien";
};
};
outputs = inputs: import ./outputs.nix inputs;

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
icons/button/button.ase Normal file

Binary file not shown.

BIN
icons/button/button.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 687 B

BIN
icons/favicon/favicon.ase Normal file

Binary file not shown.

BIN
icons/favicon/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 B

BIN
icons/mira/mira-large.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

BIN
icons/mira/mira.ase Normal file

Binary file not shown.

BIN
icons/mira/mira.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 470 B

View file

@ -1,4 +1,4 @@
{ config, ... }: let
config: let
inherit (config) theme;
in {
# Rose Pine

14
modules/apps/cursor.nix Normal file
View file

@ -0,0 +1,14 @@
{
runCommand,
fetchzip,
name ? "BreezX-Rosepine-Cursor",
version,
...
}:
runCommand "rosepine-cursor" {} ''
mkdir -p $out/share/icons
ln -s ${fetchzip {
url = "https://github.com/rose-pine/cursor/releases/download/v${version.version}/BreezeX-RosePine-Linux.tar.xz";
hash = version.hash;
}} $out/share/icons/${name}
''

View file

@ -1,26 +1,45 @@
{ lib, config, pkgs, ... }: let
{
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf mkForce;
inherit (config) conf;
in {
imports = [
./media.nix
./notes.nix
./programs.nix
./themes.nix
];
config = mkIf conf.apps.enable {
inherit (config) conf versions;
time = pkgs.makeDesktopItem {
name = "peaclock-desktop";
desktopName = "Time";
exec = "alacritty -e ${pkgs.peaclock}/bin/peaclock";
};
in
mkIf (conf.host != "server") {
# Audio
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = mkForce false;
services = {
pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = mkForce false;
extraConfig.pipewire = {
"90-hifi" = {
"context.properties" = {
"default.clock.rate" = 384000;
};
};
};
};
# Needed for some features in nautilus such as auto-mounting and trash
gvfs.enable = true;
};
# Run statically linked and more
environment.systemPackages = [pkgs.nix-alien];
programs.nix-ld.enable = true;
# Bluetooth
hardware.bluetooth = {
enable = true;
@ -33,10 +52,12 @@ in {
};
};
hardware.opentabletdriver.enable = true;
# Regularly clean download folder
systemd = {
timers."clean-download" = {
wantedBy = [ "timers.target" ];
wantedBy = ["timers.target"];
timerConfig = {
OnCalendar = "*-*-* 03:00:00";
Unit = "clean-download.service";
@ -55,5 +76,119 @@ in {
};
services.blueman.enable = true;
};
}
home-manager.users.${conf.username} = {
home = {
packages = with pkgs;
[
adwaita-icon-theme
adwaita-qt
adwaita-qt6
loupe
spotify
amberol
snapshot
papers
nautilus
gnome-disk-utility
fragments
krita
gimp
inkscape
libresprite
tor-browser
chromium
libreoffice-qt6
prusa-slicer
ghidra
peaclock
(cutter.withPlugins (ps:
with ps; [
jsdec
sigdb
rz-ghidra
]))
signal-desktop
vesktop
element-desktop
fractal
]
++ [
time
];
file = {
".config/vesktop/settings.json" = {
source = ./vesktop.conf.json;
};
".config/vesktop/settings/settings.json" = {
source = ./vencord.conf.json;
};
};
pointerCursor = rec {
gtk.enable = true;
x11.enable = true;
name = "BreezX-RosePine-Linux";
size = 24;
package = pkgs.callPackage ./cursor.nix {
name = name;
version = versions.rosepine-cursor;
};
};
};
qt = {
enable = true;
platformTheme.name = "adwaita";
style.name = "adwaita-dark";
};
gtk = {
enable = true;
gtk4.extraConfig = {
gtk-application-prefer-dark-theme = true;
};
gtk3.extraConfig = {
gtk-application-prefer-dark-theme = true;
};
gtk2.extraConfig = "gtk-application-prefer-dark-theme=1\n";
theme.name = "Adwaita Dark";
};
dconf = {
enable = true;
settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
};
};
programs = {
firefox = import ./firefox.conf.nix pkgs;
thunderbird = {
enable = true;
profiles = {
"default" = {
isDefault = true;
};
};
};
mpv.enable = true;
pandoc.enable = true;
alacritty = {
enable = true;
settings = import ./alacritty.conf.nix config;
};
};
};
}

View file

@ -0,0 +1,227 @@
pkgs: {
enable = true;
profiles = {
"default" = {
id = 0;
search = {
default = "duckduckgo";
privateDefault = "duckduckgo";
engines = {
"ddg".metaData.hidden = true;
"google".metaData.hidden = true;
"amazondotcom-us".metaData.hidden = true;
"bing".metaData.hidden = true;
"wikipedia".metaData.hidden = true;
duckduckgo = {
urls = [
{
template = "https://duckduckgo.com/";
params = [
{
name = "q";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@ddg"];
};
google = {
urls = [
{
template = "https://google.com/search";
params = [
{
name = "q";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@g"];
};
wikipedia = {
urls = [
{
template = "https://en.wikipedia.org/wiki/Special:Search";
params = [
{
name = "search";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@wiki"];
};
youtube = {
urls = [
{
template = "https://youtube.com/results";
params = [
{
name = "search_query";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@yt"];
};
nix-packages = {
urls = [
{
template = "https://search.nixos.org/packages";
params = [
{
name = "channel";
value = "unstable";
}
{
name = "type";
value = "packages";
}
{
name = "query";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@np"];
};
nix-options = {
urls = [
{
template = "https://search.nixos.org/options";
params = [
{
name = "channel";
value = "unstable";
}
{
name = "type";
value = "packages";
}
{
name = "query";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@no"];
};
nix-wiki = {
urls = [
{
template = "https://wiki.nixos.org/w/index.php";
params = [
{
name = "search";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@nw"];
};
arch-wiki = {
urls = [
{
template = "https://wiki.archlinux.org/index.php";
params = [
{
name = "search";
value = "{searchTerms}";
}
{
name = "fulltext";
value = "1";
}
];
}
];
definedAliases = ["@aw"];
};
github = {
urls = [
{
template = "https://github.com/search";
params = [
{
name = "q";
value = "{searchTerms}";
}
{
name = "type";
value = "repositories";
}
];
}
];
definedAliases = ["@gh"];
};
};
force = true;
order = [
"duckduckgo"
"google"
"wikipedia"
"youtube"
"nix-packages"
"nix-options"
"nix-wiki"
"arch-wiki"
"github"
];
};
bookmarks = {
force = true;
settings = [];
};
settings = {
"browser.aboutConfig.showWarning" = false;
"browser.bookmarks.addedImportButton" = false;
"browser.link.open_newwindow" = 2;
"browser.newtabpage.enabled" = false;
"browser.preferences.moreFromMozilla" = false;
"browser.shell.checkDefaultBrowser" = false;
"browser.startup.blankWindow" = true;
"browser.startup.page" = 3;
"browser.tabs.closeWindowWithLastTab" = true;
"browser.tabs.opentabfor.middleclick" = false;
"browser.toolbars.bookmarks.visibility" = "never";
"browser.translation.enable" = false;
"dom.security.https_only_mode" = true;
"extensions.pocket.enabled" = false;
"gfx.webrender.all" = true;
"identity.fxaccounts.enabled" = false;
"media.cache_readhead_limit" = 9999;
"media.cache_resume_threshold" = 9999;
"medai.ffmpeg.vaapi.enabled" = true;
"media.videocontrols.picture-in-picture.enabled" = false;
"signon.rememberSignons" = false;
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
};
extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [
bitwarden
sponsorblock
ublock-origin
pronoundb
youtube-nonstop
enhancer-for-youtube
firefox-color
purpleadblock
];
userChrome = ''
#TabsToolbar-customization-target { visibility: collapse !important; }
'';
};
};
}

View file

@ -1,152 +0,0 @@
{ inputs, lib, config, pkgs, ... }: let
inherit (lib) mkIf;
inherit (config) conf;
in mkIf conf.apps.enable {
nixpkgs.overlays = [ inputs.nur.overlay ];
home-manager.users.${conf.username} = {
programs.firefox = {
enable = true;
profiles = {
"default" = {
id = 0;
search = {
default = "DuckDuckGoo";
privateDefault = "DuckDuckGoo";
engines = {
"DuckDuckGo".metaData.hidden = true;
"Google".metaData.hidden = true;
"Amazon.com".metaData.hidden = true;
"Bing".metaData.hidden = true;
"Wikipedia (en)".metaData.hidden = true;
"DuckDuckGoo" = {
urls = [{
template = "https://duckduckgo.com/";
params = [
{ name = "q"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@ddg" ];
};
"Googlee" = {
urls = [{
template = "https://google.com/search";
params = [
{ name = "q"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@g" ];
};
"Wikipedia" = {
urls = [{
template = "https://en.wikipedia.org/wiki/Special:Search";
params = [
{ name = "search"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@wiki" ];
};
"YouTube" = {
urls = [{
template = "https://youtube.com/results";
params = [
{ name = "search_query"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@yt" ];
};
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "channel"; value = "unstable"; }
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@np" ];
};
"Nix Options" = {
urls = [{
template = "https://search.nixos.org/options";
params = [
{ name = "channel"; value = "unstable"; }
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@no" ];
};
"Arch Wiki" = {
urls = [{
template = "https://wiki.archlinux.org/index.php";
params = [
{ name = "search"; value = "{searchTerms}"; }
{ name = "fulltext"; value = "1"; }
];
}];
definedAliases = [ "@aw" ];
};
"Github" = {
urls = [{
template = "https://github.com/search";
params = [
{ name = "q"; value = "{searchTerms}"; }
{ name = "type"; value = "repositories"; }
];
}];
definedAliases = [ "@gh" ];
};
};
force = true;
order = [
"DuckDuckGoo"
"Googlee"
"Wikipedia"
"YouTube"
"Nix Packages"
"Nix Options"
"Arch Wiki"
"Github"
];
};
bookmarks = { };
settings = {
"browser.aboutConfig.showWarning" = false;
"browser.bookmarks.addedImportButton" = false;
"browser.newtabpage.enabled" = false;
"browser.preferences.moreFromMozilla" = false;
"browser.shell.checkDefaultBrowser" = false;
"browser.startup.blankWindow" = true;
"browser.startup.page" = 3;
"browser.tabs.closeWindowWithLastTab" = false;
"browser.toolbars.bookmarks.visibility" = "never";
"browser.translation.enable" = false;
"dom.security.https_only_mode" = true;
"extensions.pocket.enabled" = false;
"gfx.webrender.all" = true;
"identity.fxaccounts.enabled" = false;
"media.cache_readhead_limit" = 9999;
"media.cache_resume_threshold" = 9999;
"medai.ffmpeg.vaapi.enabled" = true;
"media.videocontrols.picture-in-picture.enabled" = false;
"signon.rememberSignons" = false;
};
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
bitwarden
sponsorblock
ublock-origin
pronoundb
youtube-nonstop
enhancer-for-youtube
firefox-color
purpleadblock
];
};
};
};
};
}

View file

@ -1,17 +0,0 @@
{ config, lib, pkgs, ... }: let
inherit (lib) mkIf;
inherit (config) conf;
in mkIf conf.apps.enable {
home-manager.users.${conf.username} = {
home.packages = with pkgs; [
loupe
spotify
amberol
];
programs.mpv = {
enable = true;
};
};
}

View file

@ -1,25 +0,0 @@
{ lib, config, pkgs, ... }: let
inherit (lib) mkIf;
inherit (config) conf;
inherit (config.conf) keys;
in mkIf conf.apps.enable {
home-manager.users.${conf.username} = {
home.packages = with pkgs; [
rnote
];
programs.sioyek = {
enable = true;
bindings = {
"move_up" = keys.up;
"move_down" = keys.down;
"move_left" = keys.left;
"move_right" = keys.right;
};
};
programs.fish.shellAbbrs = {
pdf = "sioyek";
};
};
}

View file

@ -1,57 +0,0 @@
{ lib, config, pkgs, ... }: let
inherit (lib) mkIf;
inherit (config) conf;
mkXwlWrapper = import ../niri/xwl-wrapper.nix;
in {
imports = [
./firefox.nix
];
config = mkIf conf.apps.enable {
services = {
# Needed for some features in nautilus such as auto-mounting and trash
gvfs.enable = true;
};
home-manager.users.${conf.username} = {
home.packages = with pkgs; [
signal-desktop
vesktop
fractal
snapshot
nautilus
libreoffice-qt6-fresh
inkscape
blender
# freecad -- broken dependency
] ++ [(mkXwlWrapper { lib = lib; pkgs = pkgs; app = "${pkgs.prusa-slicer}/bin/prusa-slicer"; name = "Prusa"; })];
home.file = {
".config/vesktop/settings.json" = {
source = ./vesktop.conf.json;
};
".config/vesktop/settings/settings.json" = {
source = ./vencord.conf.json;
};
};
programs.pandoc = {
enable = true;
};
programs.thunderbird = {
enable = true;
profiles = {
"default" = {
isDefault = true;
};
};
};
programs.alacritty = {
enable = true;
settings = import ./alacritty.conf.nix { config = config; };
};
};
};
}

View file

@ -1,53 +0,0 @@
{ lib, config, pkgs, ... }: let
inherit (lib) mkIf;
inherit (config) conf;
in mkIf conf.apps.enable {
home-manager.users.${conf.username} = {
home.packages = with pkgs; [
adwaita-icon-theme
adwaita-qt
adwaita-qt6
];
qt = {
enable = true;
platformTheme.name = "adwaita";
style.name = "adwaita-dark";
};
gtk = {
enable = true;
gtk4.extraConfig = {
gtk-application-prefer-dark-theme = true;
};
gtk3.extraConfig = {
gtk-application-prefer-dark-theme = true;
};
gtk2.extraConfig = "gtk-application-prefer-dark-theme=1\n";
theme.name = "Adwaita Dark";
};
dconf = {
enable = true;
settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
};
};
home.pointerCursor = let getFrom = url: hash: name: {
gtk.enable = true;
x11.enable = true;
name = name;
size = 24;
package = pkgs.runCommand "moveUp" {} ''
mkdir -p $out/share/icons
ln -s ${pkgs.fetchzip{
url = url;
hash = hash;
}} $out/share/icons/${name}
'';
}; in getFrom "https://github.com/rose-pine/cursor/releases/download/v1.1.0/BreezeX-RosePine-Linux.tar.xz" "sha256-t5xwAPGhuQUfGThedLsmtZEEp1Ljjo3Udhd5Ql3O67c=" "BreezX-RosePine-Linux";
};
}

View file

@ -3,7 +3,7 @@
"autoUpdateNotification": true,
"useQuickCss": true,
"themeLinks": [
"https://raw.githubusercontent.com/rose-pine/discord/main/rose-pine.theme.css"
"https://raw.githubusercontent.com/rose-pine/discord/refs/heads/main/rose-pine.theme.css"
],
"enabledThemes": [],
"enableReactDevtools": false,

View file

@ -1,11 +1,14 @@
{ lib, config, pkgs, ... }: let
{
lib,
config,
...
}: let
inherit (lib) mkIf;
inherit (config) conf;
in mkIf conf.containers.enable {
virtualisation.podman = {
enable = true;
dockerCompat = true;
};
environment.systemPackages = [ pkgs.distrobox ];
}
cfg = config.conf.containers;
in
mkIf cfg.enable {
virtualisation.podman = {
enable = true;
dockerCompat = true;
};
}

View file

@ -1,19 +1,28 @@
{ config, ... }: let
{config, ...}: let
inherit (config) conf;
in {
imports = [
./apps
./containers
./email
./fedi
./firewall
./fonts
./games
./git
./home
./layout
./matrix
./networking
./nginx
./niri
./nix
./secureboot
./ssh
./utils
./vm
./website
./yubikey
];
documentation.nixos.enable = false;
@ -23,14 +32,10 @@ in {
defaultLocale = "en_US.UTF-8";
};
users.users.${conf.username}= {
users.users.${conf.username} = {
isNormalUser = true;
description = conf.username;
extraGroups = [ "networkmanager" "wheel" ];
};
hardware.opentabletdriver = {
enable = true;
extraGroups = ["wheel"];
};
system.stateVersion = conf.stateVersion;

110
modules/email/default.nix Normal file
View file

@ -0,0 +1,110 @@
{
config,
lib,
...
}: let
inherit (lib) mkIf;
inherit (lib.lists) forEach;
cfg = config.conf.email;
in
mkIf cfg.enable {
services.nginx = {
virtualHosts.${cfg.domain} = {
serverName = cfg.domain;
serverAliases =
forEach ["mail" "webadmin" "autoconfig" "autodiscover"]
(sub: "${sub}.${cfg.domain}");
forceSSL = true;
useACMEHost = cfg.domain;
locations = {
"/" = {
proxyPass = "http://localhost:${toString cfg.ports.local}";
};
};
};
};
users.users."stalwart-mail".extraGroups = ["nginx"];
services.stalwart-mail = {
enable = true;
openFirewall = true;
settings = {
server = {
hostname = cfg.domain;
tls = {
enable = true;
};
listener = {
smtp = {
protocol = "smtp";
bind = ["[::]:25"];
};
lmtp = {
protocol = "lmtp";
bind = ["[::]:24"];
};
jmap = {
protocol = "http";
bind = ["[::]:8080"];
tls.implicit = true;
};
imap = {
protocol = "imap";
bind = ["[::]:143"];
};
imaps = {
protocol = "imap";
bind = ["[::]:993"];
tls.implicit = true;
};
submission = {
protocol = "smtp";
bind = ["[::]:587"];
};
submissions = {
protocol = "smtp";
bind = ["[::]:465"];
tls.implicit = true;
};
management = {
protocol = "http";
bind = "127.0.0.1:${toString cfg.ports.local}";
};
};
};
lookup.default = {
hostname = cfg.domain;
domain = cfg.domain;
};
certificate.default = {
default = true;
cert = "%{file:/var/lib/acme/${cfg.domain}/cert.pem}%";
private-key = "%{file:/var/lib/acme/${cfg.domain}/key.pem}%";
};
storage = {
data = "db";
fts = "db";
block = "db";
lookup = "db";
directory = "internal";
};
directory."internal" = {
type = "internal";
store = "db";
};
tracer."stdout" = {
type = "stdout";
level = "info";
ansi = false;
enable = true;
};
session.rcpt = {
directory = "'internal'";
};
spam-filter = {
score.spam = "10.0";
};
};
};
}

View file

@ -0,0 +1,22 @@
{
runCommand,
akkoma-fe,
xorg,
jq,
}:
runCommand "akkoma_fe" {
nativeBuildInputs = [xorg.lndir jq];
} ''
mkdir $out
lndir ${akkoma-fe} $out
rm $out/static/styles.json
cp ${./styles.json} $out/static/styles.json
rm $out/static/config.json
jq -s add ${akkoma-fe}/static/config.json ${./config.json} > $out/static/config.json
cp ${../../icons/favicon/favicon.png} $out/static/logo.png
cp ${./rosepine.json} $out/static/themes/rosepine.json
''

16
modules/fedi/blobfox.nix Normal file
View file

@ -0,0 +1,16 @@
{stdenvNoCC}:
stdenvNoCC.mkDerivation {
pname = "blobfox";
version = "2020.09.04";
src = ./blobfox;
installPhase = ''
runHook preInstall
mkdir -p $out
cp *.png $out
runHook postInstall
'';
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 319 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Some files were not shown because too many files have changed in this diff Show more