330 Commits

Author SHA1 Message Date
kenji fa0e502472 enables steamOSConfiguration (opinionated) 2025-07-20 12:18:55 -05:00
kenji 562d1f30e4 major changes 2025-07-20 08:57:22 -05:00
kenji b86499aec5 wake up bluetooth devices designed for mb 2025-07-19 13:00:50 -05:00
kenji 1fdfb9f62a added usbutils 2025-07-19 13:00:34 -05:00
kenji 2b6a99b191 removed Gaming config 2025-07-19 11:44:00 -05:00
kenji 454673329f removed redundancies 2025-07-19 11:43:55 -05:00
kenji a4e661d6ad added udev rule for bluetooth 2025-07-19 11:43:49 -05:00
kenji dc38c2d88a added steam hardware support 2025-07-19 11:43:38 -05:00
kenji c267da0953 removed Hyprland.enable conf 2025-07-19 11:43:30 -05:00
kenji c5e76b1a44 changed config 2025-07-19 11:43:20 -05:00
kenji 335d41cf19 added more boot params 2025-07-19 11:43:11 -05:00
kenji 4360edef9e added mesa patches for steamos 2025-07-18 18:58:02 -05:00
kenji fde813460a decky loader manual add 2025-07-18 13:15:21 -05:00
kenji 7a6e450c8f add decky loader 2025-07-18 13:15:16 -05:00
kenji 59656b7dc8 successful integration of jovian 2025-07-18 12:37:19 -05:00
kenji f18f33c9c3 added jovian 2025-07-18 10:56:26 -05:00
kenji 10c6f094f6 added boot configs, changed displayserver to 2025-07-18 10:40:22 -05:00
kenji a6fdaf9a27 renamed incorrect var 2025-07-18 08:47:27 -05:00
kenji 1b8e5032f9 added steamos 2025-07-18 08:33:22 -05:00
kenji aaef1dccb2 Revert "conf: added boot and steam optimizations"
This reverts commit 7ab78044b7.
2025-07-18 07:32:38 -05:00
kenji 21a61f528b added extrapackages for steam 2025-07-18 07:25:19 -05:00
kenji 7ab78044b7 conf: added boot and steam optimizations 2025-07-18 07:25:05 -05:00
kenji 28e9c06ea8 launch! 2025-07-17 21:58:51 -05:00
kenji 960ac31702 steam is no longer big picture 2025-07-17 21:37:19 -05:00
kenji f6b1976809 minor change to launching gs.sh 2025-07-17 15:10:29 -05:00
kenji f6156cad67 added launch.nix 2025-07-17 15:04:47 -05:00
kenji 88b4ff68a6 added gs.sh 2025-07-17 15:00:15 -05:00
kenji a4e2cf06e9 changed gaming special workspace to steam 2025-07-17 14:44:11 -05:00
kenji 67fa3f06ed autologin ENABLED 2025-07-16 18:04:41 -05:00
kenji 20930ea6c2 cleaned up exec-once 2025-07-16 18:04:37 -05:00
kenji deb4749489 starts on steam bigpicture 2025-07-16 17:59:45 -05:00
kenji 96b228aadc fixed 2025-07-16 17:43:34 -05:00
kenji 2dc8180d1b mod 2025-07-16 17:13:01 -05:00
kenji dd1213c5b7 added colours 2025-07-16 16:52:46 -05:00
kenji 47bd23b3dd modified caelestia-cli 2025-07-16 16:19:44 -05:00
kenji 25bba64185 test 2025-07-16 10:00:22 -05:00
kenji ffdb003aa2 added libnotify 2025-07-16 09:53:18 -05:00
kenji d3c0b74ab5 qs: add wl-screenrec 2025-07-16 09:51:50 -05:00
kenji c9b98978fa hypr: changed binds 2025-07-16 09:49:58 -05:00
kenji 7cec25fdb9 fix: steam bind 2025-07-16 09:15:26 -05:00
kenji 446cfea7dd test 2025-07-16 09:01:23 -05:00
kenji 3fd62d4525 test 2025-07-16 08:47:09 -05:00
kenji 69253992df test 2025-07-16 08:07:55 -05:00
kenji 35845cac3a added special workspace: gaming 2025-07-15 21:18:05 -05:00
kenji 33c6170c15 test 2025-07-15 17:44:14 -05:00
kenji dd36c2711a test 2025-07-14 22:42:32 -05:00
kenji e9c69c2cc1 added quickshell 2025-07-14 22:08:23 -05:00
kenji 30fbcec7f5 added app2unit 2025-07-14 21:53:48 -05:00
kenji c0f21fa798 organized 2025-07-14 21:49:43 -05:00
kenji cb61d6ad3d test 2025-07-14 21:38:45 -05:00
kenji 7588100a62 removed hardware-conf 2025-07-14 13:31:34 -05:00
kenji 5ce6b68252 nixos-hardware ADDED APFEL 2025-07-09 22:04:47 -05:00
kenji 5a6cdb3171 added steam home 2025-07-09 17:30:07 -05:00
kenji dcf30faa51 moved bottles to system 2025-07-09 17:02:46 -05:00
kenji 3096697e35 README: added protonup 2025-07-09 16:54:32 -05:00
kenji cdce0628ab added launchers for proton games 2025-07-09 16:47:40 -05:00
kenji 1c82b5eafe added protonup 2025-07-09 16:42:25 -05:00
kenji 216011d9f6 removed custom text 2025-07-09 16:34:15 -05:00
kenji 73a837925b test 2025-07-09 14:40:57 -05:00
kenji 47258d9e4d test 2025-07-09 14:24:53 -05:00
kenji 8ae075d84c added sunshine 2025-07-09 11:30:03 -05:00
kenji 6e4fe781ab added appimage "moondeck-buddy" 2025-07-09 11:10:40 -05:00
kenji dfbdf1cd87 changed mangohud ocnfig 2025-07-09 10:52:08 -05:00
kenji f947721819 added geekbench6 2025-07-09 10:40:01 -05:00
kenji c3fdb180ff setup wallpaper 2025-07-08 23:51:09 -05:00
kenji e1b503b43b added matugen 2025-07-08 23:44:13 -05:00
kenji a46fa6344d removed hdm1 2025-07-08 23:42:07 -05:00
kenji 2ab60c6047 added linuxcachyos 2025-07-08 23:33:21 -05:00
kenji 2a3c6ae6a9 added new bookmarsk 2025-07-08 23:33:11 -05:00
kenji 0181c007fe added dev.nix 2025-07-08 23:07:47 -05:00
kenji 83cdb81173 added execs 2025-07-08 23:05:40 -05:00
kenji 2580cf8aa5 converted to zsh 2025-07-08 23:05:33 -05:00
kenji de8e083e92 removed earlysetup 2025-07-08 23:05:25 -05:00
kenji 49460feb44 changed bibata to modern ice 2025-07-08 22:59:22 -05:00
kenji 4768918d0d added bibata 2025-07-08 22:40:55 -05:00
kenji a534ad610f added solaar and logitech support 2025-07-08 22:39:11 -05:00
kenji 4015222d6a cleaned up 2025-07-08 22:33:23 -05:00
kenji b23774d0a2 organized hypr config 2025-07-08 22:28:17 -05:00
kenji 58c1860ecf converted hyprsunset to service 2025-07-08 22:28:10 -05:00
kenji 302c5e11b2 fixed hyprsunset 2025-07-08 22:23:04 -05:00
kenji 757d9e523d fixed hyprsunset 2025-07-08 22:22:02 -05:00
kenji 673d824c26 added hyprsunset 2025-07-08 22:15:24 -05:00
kenji 8355d35aaf cleaned up zsh 2025-07-08 22:10:18 -05:00
kenji 1601f4b622 removed quickshell for now 2025-07-08 22:07:10 -05:00
kenji ee5165b068 added gitea 2025-07-08 22:05:36 -05:00
kenji 76138fc342 add cloudflared 2025-07-08 22:05:33 -05:00
kenji 2f1b33d070 added cloudflared 2025-07-08 22:05:30 -05:00
kenji bde12c7a04 added hyprland flake 2025-07-08 22:02:02 -05:00
kenji 658d489fd5 hyprland now uses 2025-07-08 22:01:56 -05:00
kenji 95f95e208d removed quickshell 2025-07-08 22:01:49 -05:00
kenji b5eb134f69 fixed home-manager not responding 2025-07-08 22:01:43 -05:00
kenji 6264269817 test 2025-07-08 10:11:12 -05:00
kenji 8151c56cc4 added wsaction 2025-07-08 09:56:59 -05:00
kenji 3a75206afb total revamp!! 2025-07-07 21:01:19 -05:00
kenji b5a542a37c added quickshell 2025-07-07 20:01:00 -05:00
kenji bd2465d356 test 2025-07-07 18:20:12 -05:00
kenji e5bc8801a4 test 2025-07-07 16:39:34 -05:00
kenji c97a5887df test 2025-07-07 16:25:40 -05:00
kenji ec55ac55b2 mionr fix 2025-07-07 14:42:02 -05:00
kenji 65f04a69ae test 2025-07-07 14:27:33 -05:00
kenji ad40c37d1e tret 2025-07-07 13:47:08 -05:00
lsoriano-mcm 4f3fe9be8b t\P 2025-07-05 16:12:54 -05:00
lsoriano-mcm 6f3c0e8f6c a 2025-07-05 14:07:54 -05:00
lsoriano-mcm 481fb8c6c4 re 2025-07-05 14:06:08 -05:00
lsoriano-mcm 94f5d8ba01 resadm 2025-07-05 14:05:02 -05:00
lsoriano-mcm ea18baa039 fixed formatting 2025-07-05 13:57:47 -05:00
lsoriano-mcm 1653fe3eb2 readme 2025-07-05 13:56:33 -05:00
lsoriano-mcm 162321eb28 updated lock 2025-07-05 11:28:35 -05:00
lsoriano-mcm d947870a55 added bashls for nixovim 2025-07-05 11:01:06 -05:00
lsoriano-mcm 6550d6e871 test 2025-07-05 09:22:12 -05:00
lsoriano-mcm 352f2d923b added custom apps 2025-07-04 22:52:23 -05:00
lsoriano-mcm e10deb6ae5 added fonts 2025-07-04 22:28:59 -05:00
lsoriano-mcm 90123ac18d added fonts 2025-07-04 22:25:44 -05:00
lsoriano-mcm 1bd3096d53 fix 2025-07-04 22:06:30 -05:00
lsoriano-mcm ca68b1de73 added HAKASE hostname 2025-07-04 21:46:22 -05:00
lsoriano-mcm f8386beb6c added zoxide 2025-07-04 14:39:20 -05:00
lsoriano-mcm b9f125e76a added eza 2025-07-04 11:41:59 -05:00
lsoriano-mcm 3717ecc642 added btop 2025-07-04 11:36:04 -05:00
lsoriano-mcm 377cd79704 unknown 2025-07-04 11:32:08 -05:00
lsoriano-mcm fea33ada52 fl 2025-07-03 21:13:33 -05:00
lsoriano-mcm a4cf2833bc added python package 2025-07-03 20:50:31 -05:00
lsoriano-mcm 8491971427 FIX: darwin version now works! 2025-07-03 20:45:15 -05:00
lsoriano-mcm b4f4b67a8b test 2025-07-03 16:49:45 -05:00
lsoriano-mcm f59110c87e renamed to home.nix 2025-07-03 16:34:49 -05:00
lsoriano-mcm 3dd4f2783e test 2025-07-03 15:30:58 -05:00
biscuit d8657c7eeb added heroic launcher 2025-06-25 22:24:55 -05:00
biscuit 3c4ed456cf upd 2025-06-25 11:02:03 -05:00
biscuit 551302a00e removed other configs 2025-06-25 09:18:25 -05:00
lsoriano-mcm 9aaffe2677 test 2025-06-20 19:54:34 -05:00
lsoriano-mcm 11cee2638a test 2025-06-20 19:47:25 -05:00
lsoriano-mcm e35dc3d28e test 2025-06-20 18:08:36 -05:00
biscuit b686cf7751 test 2025-06-20 11:22:25 -05:00
biscuit 7fd7cfac70 test 2025-06-20 11:19:11 -05:00
biscuit 2023828364 teset 2025-06-20 11:18:26 -05:00
biscuit 2d8ba9f7ea q 2025-06-20 08:58:14 -05:00
biscuit bc70242a99 test 2025-06-19 18:19:05 -05:00
biscuit 0eabcc4fc1 test 2025-06-19 18:13:35 -05:00
biscuit 1e301b958e update 2025-06-19 17:47:42 -05:00
biscuit 4a4f66c08e test 2025-06-19 17:38:29 -05:00
biscuit e33dbea82e test 2025-06-19 17:18:02 -05:00
biscuit 50813851cb nix: added LOGIOPS 2025-06-19 17:06:05 -05:00
biscuit b3c502fdf3 king 2025-06-19 13:59:35 -05:00
biscuit 3587a7042d test 2025-06-19 13:46:17 -05:00
biscuit cfc2f01e57 test 2025-06-19 13:38:31 -05:00
biscuit ebef97f84b test 2025-06-19 13:36:11 -05:00
biscuit 3740928c70 test 2025-06-19 13:21:32 -05:00
biscuit 435742f29c fastfetch: changed 2025-06-19 12:58:05 -05:00
biscuit 0ebe999f92 test 2025-06-19 12:39:23 -05:00
biscuit 005c744cb6 FIXED 2025-06-18 13:21:08 -05:00
biscuit a2b4b0d8ea test 2025-06-18 13:06:36 -05:00
biscuit e8c6cb073f kitty test 2025-06-18 12:54:46 -05:00
biscuit 17b01cbf1c remove kitty-catppuccin 2025-06-18 12:45:06 -05:00
biscuit 6d5cd6d78e test 2025-06-18 12:38:27 -05:00
biscuit c48d1543a4 upd 2025-06-18 12:32:05 -05:00
biscuit ac41162a6e terst 2025-06-18 12:25:27 -05:00
biscuit 74f26f5997 test 2025-06-18 12:05:52 -05:00
biscuit 0a1acae08a matugen 2025-06-18 11:37:23 -05:00
biscuit 54f2f1e8f9 test 2025-06-18 11:32:32 -05:00
biscuit a25d41100a cleaned up 2025-06-12 09:23:12 -05:00
biscuit 381830a767 cleaned up 2025-06-12 09:21:55 -05:00
biscuit d1c11014de fix 2025-06-12 09:01:15 -05:00
biscuit b41a820dcc ags: MASSIVE REVAMP 2025-06-11 20:57:02 -05:00
biscuit 38ba3a2fdb kitty: changed theme file to kanagawa 2025-06-11 19:54:08 -05:00
biscuit 998f4905b0 ags: moved pos of workspace and time 2025-06-11 19:53:59 -05:00
biscuit 9cc45e426d ags: now only shows BAR in primary monitor 2025-06-11 19:46:09 -05:00
biscuit 7053adc718 fixed swww 2025-06-11 07:24:45 -05:00
biscuit 8d6af2f936 fixed the firefox 2025-06-11 07:19:04 -05:00
biscuit f4788f863e Revert "nix: added firefox"
This reverts commit b6911bc045.
2025-06-11 07:04:30 -05:00
biscuit 2ba8639dfd testtest 2025-06-11 07:03:36 -05:00
biscuit a609216012 test 2025-06-11 06:57:42 -05:00
biscuit b6911bc045 nix: added firefox 2025-06-11 06:54:24 -05:00
biscuit 09fbbec45e test 2025-06-11 06:47:18 -05:00
biscuit b697c89aae nix: added steam
yeety mcspanky
2025-06-11 06:34:45 -05:00
biscuit 0e0b8a40c7 added hyprconf 2025-06-10 22:00:01 -05:00
lsoriano-mcm 555fea04b4 pud 2025-06-09 10:18:05 -05:00
lsoriano-mcm fee08ad3d2 add fishAliases 2025-06-09 10:07:38 -05:00
lsoriano-mcm b3e0e3e76f test 2025-06-09 10:01:57 -05:00
lsoriano-mcm 4dee2bf44f test 2025-06-09 09:58:14 -05:00
lsoriano-mcm f23d023551 test 2025-06-07 14:09:34 -05:00
lsoriano-mcm 61ac2f71d5 ignores config.local 2025-06-07 14:05:33 -05:00
lsoriano-mcm ca9e487111 changed info.nix to config.nix 2025-06-07 14:03:34 -05:00
lsoriano-mcm f8e327d46d termsize 2025-06-07 14:01:25 -05:00
lsoriano-mcm 835a7fdad3 test 2025-06-07 13:56:23 -05:00
lsoriano-mcm 6034a9797c optimize: replaced omz to antidote 2025-06-07 13:49:32 -05:00
lsoriano-mcm c204eed76e test 2025-06-07 12:18:35 -05:00
lsoriano-mcm 0abf1447af test 2025-06-07 11:24:52 -05:00
lsoriano-mcm 73ece504c9 organized better 2025-06-07 08:11:17 -05:00
lsoriano-mcm 30f2178b6f RE 2025-06-06 20:25:13 -05:00
lsoriano-mcm 5b0a8b3c49 READ 2025-06-06 20:17:01 -05:00
lsoriano-mcm da0db9551c README 2025-06-06 20:04:42 -05:00
lsoriano-mcm f1b1dcdd9e Ignore info.local.nix 2025-06-06 19:28:16 -05:00
lsoriano-mcm b3bcc0f058 Remove info.local.nix from version control 2025-06-06 19:28:05 -05:00
lsoriano-mcm 2b1bc85514 added user override configuration 2025-06-06 19:26:24 -05:00
lsoriano-mcm 6517af5889 organized 2025-06-06 16:57:47 -05:00
lsoriano-mcm 43f8d827f6 macos: neovim 2025-06-06 16:47:12 -05:00
biscuit f7d3c7a7c4 MOCHA 2025-06-06 10:28:29 -05:00
biscuit 7f7cbe74f7 t 2025-06-06 09:10:36 -05:00
biscuit e3c5d8c166 upd 2025-06-06 09:02:22 -05:00
biscuit 8957622879 upd 2025-06-06 08:38:11 -05:00
biscuit 657fde7545 test 2025-06-06 08:15:41 -05:00
biscuit f757369821 fixed 2025-06-06 07:50:10 -05:00
biscuit e623b83d68 cleaned up 2025-06-06 07:46:05 -05:00
biscuit 2b8d4a1dce upd 2025-06-06 07:41:01 -05:00
lsoriano-mcm e6103c3153 upd 2025-06-06 07:39:53 -05:00
lsoriano-mcm 6b0a342cdd added DARWIN 2025-06-06 06:50:54 -05:00
biscuit 280a2da2db cleaned up xserver 2025-06-05 16:35:58 -05:00
biscuit 363d470386 upd 2025-06-05 16:35:01 -05:00
biscuit f715f08831 uses flakes for hyprland 2025-06-05 14:54:13 -05:00
biscuit c4e0681c33 workspace now can work back and forth 2025-06-05 14:21:17 -05:00
biscuit a3121c0ce0 a 2025-06-05 13:49:30 -05:00
biscuit 6af25e5453 test 2025-06-05 09:01:04 -05:00
biscuit fd8da098ed upd 2025-06-05 08:55:54 -05:00
biscuit e83c8ded35 abc 2025-06-05 08:53:00 -05:00
biscuit 229b0041a6 fix 2025-06-05 07:52:31 -05:00
biscuit 128e6a04c2 test 2025-06-04 15:17:24 -05:00
biscuit a92159168c changed date 2025-06-04 14:32:51 -05:00
biscuit 1fb2d40aa8 added bluetooth 2025-06-03 19:31:08 -05:00
biscuit 7ec496be3d upd 2025-06-03 19:10:59 -05:00
biscuit 35a794a648 cleaned up 2025-06-03 17:19:06 -05:00
biscuit b8dfddd2e8 test 2025-06-03 17:17:03 -05:00
biscuit 4a49aba2ba MAJOR FIX: neovim now works well 2025-06-03 17:13:13 -05:00
biscuit d1bffc3952 upd 2025-06-03 17:06:27 -05:00
biscuit 8b2e901680 test 2025-06-03 17:01:20 -05:00
biscuit a5db5cc54d test 2025-06-03 11:55:29 -05:00
biscuit efede58a6d upd 2025-06-03 11:29:36 -05:00
biscuit 7df80623d5 test 2025-06-03 04:21:36 -05:00
biscuit 028df1fd35 NEO added 2025-06-03 03:55:42 -05:00
biscuit 12e64d34e6 fix 2025-06-02 15:12:37 -05:00
biscuit ba7174224c upd 2025-06-02 14:05:20 -05:00
biscuit c794974b20 fx 2025-06-02 13:32:32 -05:00
biscuit d9fdab315c test 2025-05-27 17:36:09 -05:00
biscuit b3d37d7b20 test 2025-05-27 17:22:13 -05:00
biscuit 88076292de add git 2025-05-27 16:44:19 -05:00
biscuit 25c0a328e6 fix 2025-05-27 08:15:59 -05:00
biscuit ab855f18ea removed 2025-05-26 19:30:56 -05:00
biscuit b7659157fa starship & fastfetch replaced home conf with settings 2025-05-26 19:29:10 -05:00
biscuit 608df0bd38 fix: hypridle home already exists 2025-05-26 19:15:48 -05:00
biscuit 1871ca6ef6 upd 2025-05-26 19:12:14 -05:00
biscuit d7eed2ecf6 yeet 2025-05-26 18:59:25 -05:00
biscuit 789e6786cc fix font 2025-05-26 18:54:59 -05:00
biscuit 8e9bfe9522 added rubik font 2025-05-26 18:53:15 -05:00
biscuit 0c99dfefbb organize 2025-05-21 17:57:59 -05:00
biscuit c16cedf981 upde 2025-05-21 17:54:30 -05:00
biscuit 4f0c6d3e46 README revamp 2025-05-21 17:54:27 -05:00
biscuit 752a6ad1de upd 2025-05-21 17:43:56 -05:00
biscuit 802c2aa6bf added MarkdownPreview 2025-05-21 17:28:57 -05:00
biscuit 2a6b5bc2c7 upd 2025-05-21 17:21:05 -05:00
biscuit e986b99ce7 test 2025-05-21 12:58:53 -05:00
biscuit c17dabdbd8 added users (MAJOR FIX) 2025-05-21 12:58:39 -05:00
biscuit 0ab12aabff cleaned up even more 2025-05-21 12:24:41 -05:00
biscuit 30ecca57ba cleaned up drastically 2025-05-21 12:20:32 -05:00
biscuit cd734937c0 changed biscuit to desktop 2025-05-21 11:25:59 -05:00
biscuit 477b592b06 cleaned up 2025-05-21 11:20:30 -05:00
biscuit fda9681b84 upd 2025-05-21 11:11:45 -05:00
biscuit 694042f027 changed everything to default.nix 2025-05-21 11:11:26 -05:00
biscuit 7e77b1acd4 upd 2025-05-21 11:06:24 -05:00
biscuit 6b765f1b54 organized wl 2025-05-21 11:06:09 -05:00
biscuit 97d65f2f7e added opt 2025-05-21 11:05:22 -05:00
biscuit 9186f2cc28 organized shellAliases 2025-05-21 10:56:53 -05:00
biscuit 6ae2221007 upd 2025-05-21 10:51:10 -05:00
biscuit e862ce8f9b nix: added commercial fonts 2025-05-21 09:01:53 -05:00
biscuit 6dbe009076 purge 2025-05-21 08:45:46 -05:00
biscuit 598abbf308 upd 2025-05-21 08:45:04 -05:00
biscuit 17ccf2ba8c nix 2025-05-21 08:35:48 -05:00
biscuit ca5b15b377 a 2025-05-21 00:55:15 -05:00
biscuit a11926ee85 upd 2025-05-21 00:25:39 -05:00
biscuit f19b7ab674 upd 2025-05-21 00:22:15 -05:00
biscuit 306e540a67 upd 2025-05-21 00:07:43 -05:00
biscuit 5185edce48 upd 2025-05-20 23:34:47 -05:00
biscuit b3f9882c7e upd 2025-05-20 23:20:32 -05:00
biscuit ee7b59c521 upd 2025-05-20 23:19:27 -05:00
biscuit 113a15cd69 upd 2025-05-20 23:04:23 -05:00
biscuit 2ea4f6631c upd 2025-05-20 23:00:24 -05:00
biscuit e21cf63216 upd 2025-05-20 22:55:43 -05:00
biscuit f31387ab12 upd 2025-05-20 22:43:37 -05:00
biscuit 4ec339c53b upd 2025-05-20 22:41:52 -05:00
hakase eb70a6dd52 added Monolisa font 2025-05-20 22:37:33 -05:00
biscuit a9aef32984 upd 2025-05-20 22:33:12 -05:00
biscuit 58d575ebeb added monolisa 2025-05-20 21:56:13 -05:00
biscuit be57946347 upd 2025-05-20 21:47:13 -05:00
biscuit 63c2f887db upd 2025-05-20 21:38:02 -05:00
biscuit 36222bdb63 upd 2025-05-20 21:36:34 -05:00
biscuit de69800662 upd file name 2025-05-20 21:29:10 -05:00
biscuit f2a1604009 upd 2025-05-20 21:27:50 -05:00
biscuit dfec0bc5da upd 2025-05-20 21:23:55 -05:00
biscuit 45ce1678d1 updd 2025-05-20 21:22:46 -05:00
biscuit 5022c31815 wofi 2025-05-20 18:53:30 -05:00
biscuit 2534d83bdd upd 2025-05-20 18:19:55 -05:00
biscuit 3e7917aee3 hypr: removes redundant delays 2025-05-20 14:32:32 -05:00
biscuit 530a7c9777 upd 2025-05-20 14:22:02 -05:00
biscuit a3b195da1f fixed cursor not appearing 2025-05-20 14:04:26 -05:00
biscuit fa1a376d85 removed plymouth 2025-05-20 12:25:37 -05:00
biscuit 25d034d7dc cleaned up 2025-05-20 12:20:52 -05:00
biscuit a0572f8a95 added variable 2025-05-20 12:02:26 -05:00
biscuit 6e32ac5ceb added waybar 2025-05-20 11:53:30 -05:00
biscuit 5278908420 added vpn wg 2025-05-20 11:35:53 -05:00
biscuit 6044c4e063 added vpn 2025-05-20 11:28:28 -05:00
biscuit d0532495e0 added cursor 2025-05-20 11:05:33 -05:00
biscuit 3339960062 add cursor 2025-05-20 11:00:22 -05:00
biscuit 77854b1c69 upd 2025-05-20 10:58:07 -05:00
biscuit b1ca82da64 upd 2025-05-20 10:56:16 -05:00
biscuit 72bc56a934 upd 2025-05-20 10:49:41 -05:00
biscuit aac77be6ec upd 2025-05-20 10:42:30 -05:00
biscuit 6404fbd36d upd 2025-05-20 10:27:15 -05:00
biscuit f442452a2e added tldr 2025-05-20 07:56:58 -05:00
biscuit 35f515e828 upd fastfetch 2025-05-20 07:41:30 -05:00
biscuit 3215644a87 added btop 2025-05-20 07:30:55 -05:00
biscuit 05198ddeab upd 2025-05-20 07:29:53 -05:00
biscuit 67402c3e54 upd 2025-05-20 07:23:25 -05:00
biscuit 78abaed26f upd 2025-05-20 07:08:13 -05:00
biscuit 64a56ea346 added starship 2025-05-20 06:57:18 -05:00
biscuit 453bc1f249 upd 2025-05-20 06:31:39 -05:00
biscuit 7fc61d7d27 cleaned up 2025-05-20 05:56:07 -05:00
biscuit d9edf3f389 added gdm 2025-05-19 21:40:20 -05:00
biscuit 4a29a676b5 hypr: added moving via keyboard 2025-05-19 21:37:21 -05:00
biscuit 6a61e05ae7 added modules for ags 2025-05-19 21:29:23 -05:00
biscuit ce1301af38 added ags 2025-05-19 21:13:58 -05:00
biscuit dd3caf07d2 added fastfetch 2025-05-19 20:52:42 -05:00
biscuit c62421cfb6 added jetbrainsmono-nerdfont 2025-05-19 20:48:36 -05:00
biscuit d4026e1559 added firacode font family 2025-05-19 20:38:46 -05:00
biscuit 53346c17ea added fonts 2025-05-19 20:33:56 -05:00
biscuit 52356a4a87 upd 2025-05-19 20:30:17 -05:00
biscuit c603389ebc upd 2025-05-19 20:27:33 -05:00
biscuit 2d8e528b6f added clipboard 2025-05-19 19:22:42 -05:00
biscuit 87dea595d3 nix: changed sha256 2025-05-19 19:17:54 -05:00
biscuit 9629dd0ba0 up 2025-05-19 19:14:18 -05:00
biscuit 9a722c915a u 2025-05-19 19:08:25 -05:00
biscuit 65e7e86739 (hypr) more configs added 2025-05-19 18:42:40 -05:00
biscuit 1b0dcd2863 nix: removed impure 2025-05-19 18:12:57 -05:00
biscuit c1e4ef47f3 initialization 2025-05-19 17:53:19 -05:00
115 changed files with 2565 additions and 1248 deletions
-1
View File
@@ -1 +0,0 @@
hosts/desktop/hardware-configuration.nix
+41 -44
View File
@@ -1,58 +1,55 @@
# Sakamoto NixOS
Sakamoto NixOS is built with various profiles intended for reproducibility.
## Available Hosts
- MacBook M series
- Linux
# Nix Sakamoto
A rewrite of the original Sakamoto NixOS configuration.
## Installation
Installing Sakamoto Nix configuration may vary on your current operating system.
1. Install [Nix](https://nixos.org/download/).
| Hosts | Description |
|----------|--------------|
| hakase | gaming desktop (linux) |
| sakamoto | \[unavailable] server that uses containers (linux) |
| nano | \[unavailable] windows configuration |
| macos | macos configuration |
2. Ensure Nix is installed properly by running the following (this also gives you `nano` for editing later):
**Note: Replace `${Hosts}` with one of the options from the table above.**
### Linux Installation
1. Install [Nix](https://nixos.org).
2. Clone this directory.
```sh
nix-shell -p nano
$ git clone https://git.sakamoto.dev/kenji/nixos.git ~/.config/nixos
```
3. Clone the git repository:
3. Create a hardware-configuration.conf
```sh
git clone https://git.sakamoto.dev/kenji/nixos.git ~/.config/nixos && cd ~/.config/nixos/
$ sudo nixos-generate-config --dir ~/.config/nixos/hosts/${Hosts}/
```
4. Copy `info.default.nix` and rename it to `info.local.nix`:
4. ⚠️ Modify `config.nix` that suits your configuration. **Be sure to edit `config.nix`! Most especially `myConfig.essentials.Username`. Otherwise, your OS could break!!!**
5. Rebuild.
```sh
cp ~/.config/nixos/info.default.nix ~/.config/nixos/info.local.nix
$ sudo nixos-rebuild switch --flake ~/.config/nixos/hosts/#${Hosts}
```
🚨 **CRITICAL STEP:** Edit `info.local.nix`:
6. Install unstable channel (fixes `pkgs.fish` misconfiguration).
```sh
nano ~/.config/nixos/info.local.nix
$ nix-channel --add https://nixos.org/channels/nixos-unstable nixos nix-channel --update
```
7. (Optional) You can install `proton-ge` by running the following command:
```sh
protonup
```
8. (Optional) Add Decky Loader for Steam via this command:
```sh
touch ~/.steam/steam/.cef-enable-remote-debugging
Modify it to fit your system — especially your **username**.
If you accidentally leave the default `biscuit`, that user will be created.
**Login password for `biscuit` is `Your-generic-password`.**
5. Execute the following command based on your host:
- **MacBook M series:**
```sh
sudo nix run nix-darwin --extra-experimental-features "nix-command flakes" -- switch --flake ~/.config/nixos#macos
```
- **Linux:**
```sh
sudo nixos-rebuild --flake ~/.config/nixos#desktop --impure
sudo nix run home-manager -- init --switch
home-manager switch --flake ~/.config/nixos#desktop --impure
nix-channel --add https://nixos.org/channels/nixos-unstable nixos nix-channel --update
reboot
```
```
### MacOS (Darwin) Installation
1. Install [Nix](https://nixos.org).
2. Clone this directory.
```sh
$ git clone https://git.sakamoto.dev/kenji/nixos.git ~/.config/nixos
```
3. ⚠️ Modify `config.nix` that suits your configuration. **Be sure to edit `config.nix`! Most especially `myConfig.essentials.Username`. Otherwise, configuration would not work!!!**
4. Rebuild.
```sh
$ sudo nix run nix-darwin --extra-experimental-features "nix-command flakes" -- switch --flake ~/.config/nixos#macos
```
Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 MiB

+69 -76
View File
@@ -1,37 +1,79 @@
{
myConfig = {
general = {
Hostname = "hakase";
essentials = {
# !!! replace it with your own, else system might malfunction.
Username = "kenji";
Timezone = "America/Chicago";
allowUnfree = true; # allows installation of commercial apps.
terminal = {
Font = "JetBrainsMono Nerd Font"; # e.g., JetBrainsMono Nerd Font
Size = "18";
Shell = "fish";
Aliases = {
ls = "ls --color=auto";
update = ''
sh -c '
if [ "$(uname)" = "Darwin" ]; then
sudo darwin-rebuild switch --flake ~/.config/nixos#macos
else
sudo nixos-rebuild switch --flake ~/.config/nixos#desktop && home-manager switch --flake ~/.config/nixos#desktop
fi
'
'';
agu = "pkill gjs & ags run ~/.config/nixos/packages/ags/biscuit/app.ts & disown (jobs -p) &";
};
};
general = {
Terminal = {
font = "JetBrainsMono Nerd Font";
size = "18";
shell = "fish"; # or zsh
aliases = {};
};
gitProfile = {
User = "kenji";
Email = "kenji@sakamoto.dev";
allowUnfree = true;
};
nixos = {
Hostname = "hakase";
Timezone = "America/Chicago";
enableSteamOS = true;
Boot = {
mode = "systemd"; # systemd or grub
};
Apps = {
packages = pkgs:
with pkgs; [
jellyfin-media-player
usbutils
pciutils
goverlay
geekbench_6
gparted
ntfs3g
todoist
feishin
discord
xfce.thunar
];
};
Hyprland = {
enable = false;
monitors = [
"DP-1, highres@165,0x1080,1,vrr,1"
"DP-2, highres@highrr,0x0,1"
"HDMI-A-1, 1920x1080@120, 20000x20000,1"
# "HDMI-A-1, disabled"
];
};
Git = {
user = "";
email = "";
defaultBranch = "master";
};
ssh = {
};
optionals = {
Builds = {
trustedUsers = [
"@groups"
];
buildMachines = [
{
hostName = "";
sshUser = "";
sshKey = "";
system = "";
supportedFeatures = ["big-parallel" "kvm" "nixos-test"];
}
];
};
Ssh = {
extraConfig = ''
Host macair
User biscuit
HostName 192.168.68.81
Host gitea.sakamoto.dev
User kenji
ProxyCommand cloudflared access ssh --hostname %h
@@ -39,54 +81,5 @@
'';
};
};
builds = {
builder = {
trustedUsers = [
"@groups"
"biscuit"
];
buildMachines = [
{
hostName = "192.168.68.81";
sshUser = "biscuit";
sshKey = "/home/biscuit/.ssh/id_rsa.pub";
system = "x86_64-linux";
supportedFeatures = ["big-parallel" "kvm" "nixos-test"];
}
];
};
};
linux = {
system = "x86_64";
gaming = true;
vpn = {
Enable = false;
secretFile = builtins.toPath ./secrets/.vpn.yaml;
};
touchpadSupport = false;
logitech-hardware.enable = true;
# Custom Applications
apps = {
gaming = true;
apps = pkgs:
with pkgs; [
jellyfin-media-player
];
};
hyprconf = {
Monitor = [
# hyprctl monitors all
# monitor, resolution@refreshrate, position (e.g., 0x0 is middle, 0x1080 is top), scale
"DP-1,highres@165,0x1080,auto"
"DP-2,highres@highrr,0x0,auto"
"HDMI-A-1, preferred, 20000x20000,1"
];
};
};
};
}
Generated
+453 -215
View File
@@ -1,23 +1,18 @@
{
"nodes": {
"ags": {
"inputs": {
"astal": "astal",
"nixpkgs": [
"nixpkgs"
]
},
"app2unit-src": {
"flake": false,
"locked": {
"lastModified": 1744557573,
"narHash": "sha256-XAyj0iDuI51BytJ1PwN53uLpzTDdznPDQFG4RwihlTQ=",
"owner": "aylur",
"repo": "ags",
"rev": "3ed9737bdbc8fc7a7c7ceef2165c9109f336bff6",
"lastModified": 1751917736,
"narHash": "sha256-TjePNU9Wu9kaXSczMAZcMV0HSC9zqzLcgKXdbkyLSAU=",
"owner": "Vladimir-csp",
"repo": "app2unit",
"rev": "6a2fe29210fd939571fdfcd78581965ef479c749",
"type": "github"
},
"original": {
"owner": "aylur",
"repo": "ags",
"owner": "Vladimir-csp",
"repo": "app2unit",
"type": "github"
}
},
@@ -41,11 +36,11 @@
]
},
"locked": {
"lastModified": 1747864449,
"narHash": "sha256-PIjVAWghZhr3L0EFM2UObhX84UQxIACbON0IC0zzSKA=",
"lastModified": 1751740947,
"narHash": "sha256-35040CHH7P3JGmhGVfEb2oJHL/A5mI2IXumhkxrBnao=",
"owner": "hyprwm",
"repo": "aquamarine",
"rev": "389372c5f4dc1ac0e7645ed29a35fd6d71672ef5",
"rev": "dfc1db15a08c4cd234288f66e1199c653495301f",
"type": "github"
},
"original": {
@@ -54,24 +49,83 @@
"type": "github"
}
},
"astal": {
"caelestia-cli-src": {
"flake": false,
"locked": {
"lastModified": 1752705650,
"narHash": "sha256-+XPGBYwjvbsPx7HhST9QTliDWl2HG43l2mvV7bjHqr4=",
"ref": "refs/heads/main",
"rev": "4a0bd16dd50587343a2b95b2817608d2d5c47c3e",
"revCount": 268,
"type": "git",
"url": "https://git.sakamoto.dev/kenji/caelestia-cli"
},
"original": {
"type": "git",
"url": "https://git.sakamoto.dev/kenji/caelestia-cli"
}
},
"caelestia-shell": {
"inputs": {
"app2unit-src": "app2unit-src",
"caelestia-cli-src": "caelestia-cli-src",
"caelestia-shell-src": "caelestia-shell-src",
"flake-utils": "flake-utils",
"nixpkgs": [
"ags",
"nixpkgs"
]
],
"quickshell": "quickshell"
},
"locked": {
"lastModified": 1742571008,
"narHash": "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=",
"owner": "aylur",
"repo": "astal",
"rev": "dc0e5d37abe9424c53dcbd2506a4886ffee6296e",
"lastModified": 1752705685,
"narHash": "sha256-0lh61BB1wR555O239wdf2wHeWn2xwbZxVxqF+nln5V4=",
"ref": "refs/heads/master",
"rev": "418754a149d692b3efd43dfb5cc3586c4d07d07f",
"revCount": 14,
"type": "git",
"url": "https://git.sakamoto.dev/kenji/caelestia-nix"
},
"original": {
"type": "git",
"url": "https://git.sakamoto.dev/kenji/caelestia-nix"
}
},
"caelestia-shell-src": {
"flake": false,
"locked": {
"lastModified": 1751355641,
"narHash": "sha256-GDarX9uOlXGc2NstZmCFXBl1g5iWvchL1QA9zuWKw4Q=",
"ref": "refs/heads/main",
"rev": "4b341ca16fda528987e5ac2745945d28f422d839",
"revCount": 806,
"type": "git",
"url": "https://git.sakamoto.dev/kenji/caelestia-dots"
},
"original": {
"type": "git",
"url": "https://git.sakamoto.dev/kenji/caelestia-dots"
}
},
"chaotic": {
"inputs": {
"flake-schemas": "flake-schemas",
"home-manager": "home-manager",
"jovian": "jovian",
"nixpkgs": "nixpkgs",
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1751984126,
"narHash": "sha256-PrNg+sypyNMU0dHLbfVFQx58NEnS59DUIu0SZSq3DSk=",
"owner": "chaotic-cx",
"repo": "nyx",
"rev": "8feb220c99c94c4957d37253eff6100cc33d7e8a",
"type": "github"
},
"original": {
"owner": "aylur",
"repo": "astal",
"owner": "chaotic-cx",
"ref": "nyxpkgs-unstable",
"repo": "nyx",
"type": "github"
}
},
@@ -82,11 +136,11 @@
]
},
"locked": {
"lastModified": 1749194393,
"narHash": "sha256-vt6hM9DNywnXXuW1qPDLzECmbDcmxhh58wpb0EEQjAo=",
"lastModified": 1751313918,
"narHash": "sha256-HsJM3XLa43WpG+665aGEh8iS8AfEwOIQWk3Mke3e7nk=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "19346808c445f23b08652971be198b9df6c33edc",
"rev": "e04a388232d9a6ba56967ce5b53a8a6f713cdfcf",
"type": "github"
},
"original": {
@@ -151,24 +205,6 @@
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1749398372,
"narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_2"
},
"locked": {
"lastModified": 1738453229,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
@@ -183,7 +219,7 @@
"type": "github"
}
},
"flake-parts_3": {
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"nixovim",
@@ -205,9 +241,44 @@
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-schemas": {
"locked": {
"lastModified": 1721999734,
"narHash": "sha256-G5CxYeJVm4lcEtaO87LKzOsVnWeTcHGKbKxNamNWgOw=",
"rev": "0a5c42297d870156d9c57d8f99e476b738dcd982",
"revCount": 75,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz"
}
},
"flake-utils": {
"inputs": {
"systems": "systems_3"
"systems": "systems"
},
"locked": {
"lastModified": 1731533236,
@@ -225,7 +296,25 @@
},
"flake-utils_2": {
"inputs": {
"systems": "systems_4"
"systems": "systems_2"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": {
"systems": "systems_5"
},
"locked": {
"lastModified": 1731533236,
@@ -317,15 +406,16 @@
"home-manager": {
"inputs": {
"nixpkgs": [
"chaotic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1748979197,
"narHash": "sha256-mKYwYcO9RmA2AcAFIXGDBOw5iv/fbjw6adWvMbnfIuk=",
"lastModified": 1751824240,
"narHash": "sha256-aDDC0CHTlL7QDKWWhdbEgVPK6KwWt+ca0QkmHYZxMzI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "34a13086148cbb3ae65a79f753eb451ce5cac3d3",
"rev": "fd9e55f5fac45a26f6169310afca64d56b681935",
"type": "github"
},
"original": {
@@ -335,6 +425,26 @@
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1751578154,
"narHash": "sha256-7zfDzmaidDESMZpdmzK/+APeKN432CJuphHHETX88Ls=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "7044c3eced5319148c09fe9612659765b9297d4a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"nixovim",
@@ -372,11 +482,11 @@
]
},
"locked": {
"lastModified": 1745948457,
"narHash": "sha256-lzTV10FJTCGNtMdgW5YAhCAqezeAzKOd/97HbQK8GTU=",
"lastModified": 1749155331,
"narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=",
"owner": "hyprwm",
"repo": "hyprcursor",
"rev": "ac903e80b33ba6a88df83d02232483d99f327573",
"rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80",
"type": "github"
},
"original": {
@@ -401,11 +511,11 @@
]
},
"locked": {
"lastModified": 1745015490,
"narHash": "sha256-apEJ9zoSzmslhJ2vOKFcXTMZLUFYzh1ghfB6Rbw3Low=",
"lastModified": 1751808145,
"narHash": "sha256-OXgL0XaKMmfX2rRQkt9SkJw+QNfv0jExlySt1D6O72g=",
"owner": "hyprwm",
"repo": "hyprgraphics",
"rev": "60754910946b4e2dc1377b967b7156cb989c5873",
"rev": "b841473a0bd4a1a74a0b64f1ec2ab199035c349f",
"type": "github"
},
"original": {
@@ -428,15 +538,15 @@
"nixpkgs"
],
"pre-commit-hooks": "pre-commit-hooks",
"systems": "systems",
"systems": "systems_3",
"xdph": "xdph"
},
"locked": {
"lastModified": 1749049255,
"narHash": "sha256-QXg2B/bF/f9IeSiZwJuhdnz2xcnpu/hDfz4eIHWVhz8=",
"lastModified": 1751995875,
"narHash": "sha256-ud9sl1RjmzAzalH2ocmGPs182xvr7GktjVIYvzJamwo=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "d7a87ce6e2535f1029fc93b062d2828e8549c525",
"rev": "9517d0eaa4ef93de67dc80fecca7a826f7ad556d",
"type": "github"
},
"original": {
@@ -457,11 +567,11 @@
]
},
"locked": {
"lastModified": 1743714874,
"narHash": "sha256-yt8F7NhMFCFHUHy/lNjH/pjZyIDFNk52Q4tivQ31WFo=",
"lastModified": 1749046714,
"narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=",
"owner": "hyprwm",
"repo": "hyprland-protocols",
"rev": "3a5c2bda1c1a4e55cc1330c782547695a93f05b2",
"rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330",
"type": "github"
},
"original": {
@@ -489,11 +599,11 @@
]
},
"locked": {
"lastModified": 1737634706,
"narHash": "sha256-nGCibkfsXz7ARx5R+SnisRtMq21IQIhazp6viBU8I/A=",
"lastModified": 1749154592,
"narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=",
"owner": "hyprwm",
"repo": "hyprland-qt-support",
"rev": "8810df502cdee755993cb803eba7b23f189db795",
"rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074",
"type": "github"
},
"original": {
@@ -525,11 +635,11 @@
]
},
"locked": {
"lastModified": 1745951494,
"narHash": "sha256-2dModE32doiyQMmd6EDAQeZnz+5LOs6KXyE0qX76WIg=",
"lastModified": 1750371812,
"narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=",
"owner": "hyprwm",
"repo": "hyprland-qtutils",
"rev": "4be1d324faf8d6e82c2be9f8510d299984dfdd2e",
"rev": "b13c7481e37856f322177010bdf75fccacd1adc8",
"type": "github"
},
"original": {
@@ -554,11 +664,11 @@
]
},
"locked": {
"lastModified": 1747484975,
"narHash": "sha256-+LAQ81HBwG0lwshHlWe0kfWg4KcChIPpnwtnwqmnoEU=",
"lastModified": 1750371198,
"narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=",
"owner": "hyprwm",
"repo": "hyprlang",
"rev": "163c83b3db48a17c113729c220a60b94596c9291",
"rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b",
"type": "github"
},
"original": {
@@ -579,11 +689,11 @@
]
},
"locked": {
"lastModified": 1746635225,
"narHash": "sha256-W9G9bb0zRYDBRseHbVez0J8qVpD5QbizX67H/vsudhM=",
"lastModified": 1751888065,
"narHash": "sha256-F2SV9WGqgtRsXIdUrl3sRe0wXlQD+kRRZcSfbepjPJY=",
"owner": "hyprwm",
"repo": "hyprutils",
"rev": "674ea57373f08b7609ce93baff131117a0dfe70d",
"rev": "a8229739cf36d159001cfc203871917b83fdf917",
"type": "github"
},
"original": {
@@ -604,11 +714,11 @@
]
},
"locked": {
"lastModified": 1747584298,
"narHash": "sha256-PH9qZqWLHvSBQiUnA0NzAyQA3tu2no2z8kz0ZeHWj4w=",
"lastModified": 1751881472,
"narHash": "sha256-meB0SnXbwIe2trD041MLKEv6R7NZ759QwBcVIhlSBfE=",
"owner": "hyprwm",
"repo": "hyprwayland-scanner",
"rev": "e511882b9c2e1d7a75d45d8fddd2160daeafcbc3",
"rev": "8fb426b3e5452fd9169453fd6c10f8c14ca37120",
"type": "github"
},
"original": {
@@ -647,12 +757,55 @@
"type": "github"
}
},
"jovian": {
"inputs": {
"nix-github-actions": "nix-github-actions",
"nixpkgs": [
"chaotic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1751529406,
"narHash": "sha256-jwKDHyUycp678zDYa5Hyfq3msO73YMXdZPxp96dU7po=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "b2e5ce654e4f5bf8905c2e07a96dcf4966e6277d",
"type": "github"
},
"original": {
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"type": "github"
}
},
"jovian_2": {
"inputs": {
"nix-github-actions": "nix-github-actions_2",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1752755091,
"narHash": "sha256-H/k35QJLyQxkFnXR5ckMv/Z+ElNa5f22qNKdyGBMAn4=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "0d09755fe1df1886e5f07dbb16f7ed373080f86a",
"type": "github"
},
"original": {
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"type": "github"
}
},
"matugen": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"systems": "systems_2"
"systems": "systems_4"
},
"locked": {
"lastModified": 1745334376,
@@ -690,42 +843,66 @@
"type": "github"
}
},
"nix-gaming": {
"nix-github-actions": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": [
"chaotic",
"jovian",
"nixpkgs"
]
},
"locked": {
"lastModified": 1751075759,
"narHash": "sha256-MNAlH/IlSkg5ODfLEgYuDvs4XrM8n3Ukmh6OqQxoJ6s=",
"owner": "fufexan",
"repo": "nix-gaming",
"rev": "622e26d86942642483e1a49d4f0dea2cbb80e6c1",
"lastModified": 1729697500,
"narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=",
"owner": "zhaofengli",
"repo": "nix-github-actions",
"rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf",
"type": "github"
},
"original": {
"owner": "fufexan",
"repo": "nix-gaming",
"owner": "zhaofengli",
"ref": "matrix-name",
"repo": "nix-github-actions",
"type": "github"
}
},
"nix-github-actions_2": {
"inputs": {
"nixpkgs": [
"jovian",
"nixpkgs"
]
},
"locked": {
"lastModified": 1729697500,
"narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=",
"owner": "zhaofengli",
"repo": "nix-github-actions",
"rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf",
"type": "github"
},
"original": {
"owner": "zhaofengli",
"ref": "matrix-name",
"repo": "nix-github-actions",
"type": "github"
}
},
"nixovim": {
"inputs": {
"flake-parts": "flake-parts_2",
"flake-parts": "flake-parts",
"nixpkgs": [
"nixpkgs"
],
"nixvim": "nixvim",
"rust-overlay": "rust-overlay"
"rust-overlay": "rust-overlay_2"
},
"locked": {
"lastModified": 1749068064,
"narHash": "sha256-pxszYA1LsrW89Z++jMshDqRpNx99QcvfpFIK5mdmneA=",
"lastModified": 1751734292,
"narHash": "sha256-AeW333kvHQPHyhF1MH4ogtAuQmReNeCOJmOcvD2IHcM=",
"ref": "refs/heads/master",
"rev": "be2e51f4ddec2389d282280871ca484f3f1f0892",
"revCount": 60,
"rev": "13cd454fb30d75a204ed245ec094210635cc22a6",
"revCount": 67,
"type": "git",
"url": "https://git.sakamoto.dev/kenji/nixovim.git"
},
@@ -735,6 +912,34 @@
}
},
"nixpkgs": {
"locked": {
"lastModified": 1751792365,
"narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1738452942,
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1738797219,
"narHash": "sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R+7kIbGa+2s=",
@@ -750,34 +955,7 @@
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1748740939,
"narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "656a64127e9d791a334452c6b6606d17539476e2",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-lib_2": {
"locked": {
"lastModified": 1738452942,
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
}
},
"nixpkgs_2": {
"nixpkgs_3": {
"locked": {
"lastModified": 1736320768,
"narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=",
@@ -793,17 +971,17 @@
"type": "github"
}
},
"nixpkgs_3": {
"nixpkgs_4": {
"locked": {
"lastModified": 1748693115,
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
"owner": "nixos",
"lastModified": 1751271578,
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc",
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
"type": "github"
},
"original": {
"owner": "nixos",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
@@ -813,11 +991,11 @@
"inputs": {
"devshell": "devshell",
"flake-compat": "flake-compat_2",
"flake-parts": "flake-parts_3",
"flake-parts": "flake-parts_2",
"git-hooks": "git-hooks",
"home-manager": "home-manager_2",
"home-manager": "home-manager_3",
"nix-darwin": "nix-darwin",
"nixpkgs": "nixpkgs",
"nixpkgs": "nixpkgs_2",
"nuschtosSearch": "nuschtosSearch",
"treefmt-nix": "treefmt-nix"
},
@@ -835,9 +1013,31 @@
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": "flake-parts_3",
"nixpkgs": [
"nixpkgs"
],
"treefmt-nix": "treefmt-nix_2"
},
"locked": {
"lastModified": 1751596056,
"narHash": "sha256-YYSPbbr900ciunCWYPIvUbSnnchcMWH907w4LY7uyZs=",
"owner": "nix-community",
"repo": "NUR",
"rev": "8062772f4de4a7ce091bfdb88322e236cffcff30",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "NUR",
"type": "github"
}
},
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils",
"flake-utils": "flake-utils_3",
"ixx": "ixx",
"nixpkgs": [
"nixovim",
@@ -869,11 +1069,11 @@
]
},
"locked": {
"lastModified": 1747372754,
"narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=",
"lastModified": 1750779888,
"narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46",
"rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
"type": "github"
},
"original": {
@@ -885,15 +1085,36 @@
"quickshell": {
"inputs": {
"nixpkgs": [
"caelestia-shell",
"nixpkgs"
]
},
"locked": {
"lastModified": 1751354716,
"narHash": "sha256-bLMNn3gh09gtkIEwZW3USt4ehLrmwmfnb3rqahYBI+4=",
"lastModified": 1752486994,
"narHash": "sha256-/11zPRDdPPn61GXDyvDes9otFTP5lLqmETAtwMdeYWI=",
"ref": "refs/heads/master",
"rev": "f681e2016fd71b42985bd520b3a20c62488582e9",
"revCount": 599,
"rev": "5ac9096c1c63f6940c6b95f1118b540dfe029278",
"revCount": 632,
"type": "git",
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
},
"original": {
"type": "git",
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
}
},
"quickshell_2": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1751880110,
"narHash": "sha256-5fQ2cetL3rTHqXe2VM3puawL/8u5j6ujBr6Gdt7Iues=",
"ref": "refs/heads/master",
"rev": "5d7e07508ae3e5487edb1ac5a152120434f091d5",
"revCount": 607,
"type": "git",
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
},
@@ -904,22 +1125,44 @@
},
"root": {
"inputs": {
"ags": "ags",
"caelestia-shell": "caelestia-shell",
"chaotic": "chaotic",
"darwin": "darwin",
"home-manager": "home-manager",
"flake-utils": "flake-utils_2",
"home-manager": "home-manager_2",
"hyprland": "hyprland",
"jovian": "jovian_2",
"matugen": "matugen",
"nix-gaming": "nix-gaming",
"nixovim": "nixovim",
"nixpkgs": "nixpkgs_3",
"quickshell": "quickshell",
"sops-nix": "sops-nix",
"unlisted-fonts": "unlisted-fonts"
"nixpkgs": "nixpkgs_4",
"nur": "nur",
"quickshell": "quickshell_2"
}
},
"rust-overlay": {
"inputs": {
"nixpkgs": "nixpkgs_2"
"nixpkgs": [
"chaotic",
"nixpkgs"
]
},
"locked": {
"lastModified": 1751856221,
"narHash": "sha256-/QE1eV0ckFvgRMcKjZqgdJDoXFNwSMepwRoBjaw2MCk=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "34cae4b56929c5b340e1c5b10d9a98a425b2a51e",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"rust-overlay_2": {
"inputs": {
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1739327257,
@@ -935,57 +1178,7 @@
"type": "github"
}
},
"sops-nix": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1750119275,
"narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2",
"type": "github"
},
"original": {
"owner": "Mic92",
"repo": "sops-nix",
"type": "github"
}
},
"systems": {
"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_2": {
"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_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
@@ -1000,7 +1193,52 @@
"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",
"type": "github"
}
},
"systems_3": {
"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_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": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
@@ -1037,25 +1275,25 @@
"type": "github"
}
},
"unlisted-fonts": {
"treefmt-nix_2": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": [
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1748987994,
"narHash": "sha256-13QQRwZx9tRDmL79+XBM1YaC4W68mVrVW2NCv2w25WA=",
"ref": "refs/heads/master",
"rev": "468d51f24d3dd22c543e657c359fb333ff4df726",
"revCount": 1,
"type": "git",
"url": "https://git.sakamoto.dev/kenji/nix-fonts.git"
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
"type": "git",
"url": "https://git.sakamoto.dev/kenji/nix-fonts.git"
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"xdph": {
@@ -1086,11 +1324,11 @@
]
},
"locked": {
"lastModified": 1745871725,
"narHash": "sha256-M24SNc2flblWGXFkGQfqSlEOzAGZnMc9QG3GH4K/KbE=",
"lastModified": 1751300244,
"narHash": "sha256-PFuv1TZVYvQhha0ac53E3YgdtmLShrN0t4T6xqHl0jE=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "76bbf1a6b1378e4ab5230bad00ad04bc287c969e",
"rev": "6115f3fdcb2c1a57b4a80a69f3c797e47607b90a",
"type": "github"
},
"original": {
+74 -78
View File
@@ -1,117 +1,113 @@
{
description = "Sakamoto's NixOS Configuration";
description = "A rewrite of the original Sakamoto NixOS config.";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; # `follows` ensure it follows nixpkgs versiona. Avoids breaking updates.
darwin.url = "github:lnl7/nix-darwin";
darwin.inputs.nixpkgs.follows = "nixpkgs";
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
ags.url = "github:aylur/ags";
ags.inputs.nixpkgs.follows = "nixpkgs";
nur = {
url = "github:nix-community/NUR";
inputs.nixpkgs.follows = "nixpkgs";
};
jovian = {
url = "github:Jovian-Experiments/Jovian-NixOS";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland.url = "github:hyprwm/Hyprland";
hyprland.inputs.nixpkgs.follows = "nixpkgs";
unlisted-fonts.url = "git+https://git.sakamoto.dev/kenji/nix-fonts.git";
unlisted-fonts.inputs.nixpkgs.follows = "nixpkgs";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
nixovim.url = "git+https://git.sakamoto.dev/kenji/nixovim.git";
nixovim.inputs.nixpkgs.follows = "nixpkgs";
darwin = {
url = "github:lnl7/nix-darwin";
inputs.nixpkgs.follows = "nixpkgs";
};
matugen.url = "github:/InioX/Matugen";
matugen.inputs.nixpkgs.follows = "nixpkgs";
nixovim = {
url = "git+https://git.sakamoto.dev/kenji/nixovim.git";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-gaming.url = "github:fufexan/nix-gaming";
nix-gaming.inputs.nixpkgs.follows = "nixpkgs";
matugen = {
url = "github:/InioX/Matugen";
inputs.nixpkgs.follows = "nixpkgs";
};
sops-nix.url = "github:Mic92/sops-nix";
sops-nix.inputs.nixpkgs.follows = "nixpkgs";
quickshell = {
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
inputs.nixpkgs.follows = "nixpkgs";
};
quickshell.url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
quickshell.inputs.nixpkgs.follows = "nixpkgs";
caelestia-shell = {
url = "git+https://git.sakamoto.dev/kenji/caelestia-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = {
self,
nixpkgs,
flake-utils,
home-manager,
darwin,
ags,
hyprland,
unlisted-fonts,
nixovim,
...
} @ inputs: let
config = import ./config.nix;
lib = nixpkgs.lib;
system = "x86_64-linux";
# pkgs = nixpkgs.legacyPackages.${system}; # alternative, without overlays. Unused.
args =
mkArgs = system:
{
inherit inputs system;
}
// config;
in {
# nixosConfiguration for linux system
nixosConfigurations = {
desktop = lib.nixosSystem {
systems = ["x86_64-linux" "aarch64-linux"];
in
flake-utils.lib.eachSystem systems (system: let
pkgs = import nixpkgs {
inherit system;
specialArgs = args;
modules = [
./hosts/desktop/configuration.nix
];
config.allowUnfree = true;
};
};
homeConfigurations = {
desktop = home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs {
inherit system;
overlays = [
# (final: prev: {
# ags_1 = prev.ags_1.overrideAttrs (old: {
# buildInputs = old.buildInputs ++ [pkgs.libdbusmenu-gtk3];
# });
# })
args = mkArgs system;
in {
})
// {
nixosConfigurations = {
hakase = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = mkArgs "x86_64-linux";
modules = [
./hosts/hakase/configuration.nix
];
};
extraSpecialArgs = args;
modules = [./home/desktop.nix];
};
gaming = home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs {
inherit system;
overlays = [];
homeConfigurations = {
hakase = home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs {
system = "x86_64-linux";
config.allowUnfree = true;
extraSpecialArgs = mkArgs "x86_64-linux";
};
modules = [
./home/hakase.nix
];
};
extraSpecialArgs = args;
modules = [./home/gaming.nix];
};
headless = home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs {
inherit system;
overlays = [];
darwinConfigurations = {
macos = darwin.lib.darwinSystem {
system = "aarch64-darwin";
specialArgs = mkArgs "aarch64-darwin";
modules = [
./hosts/macos/darwin.nix
];
};
extraSpecialArgs = args;
modules = [./home/headless.nix];
};
};
# darwinConfiguration for macOS M series
darwinConfigurations = {
macos = darwin.lib.darwinSystem {
system = "aarch64-darwin";
specialArgs = args;
modules = [
./hosts/macos/darwin.nix
home-manager.darwinModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = args;
}
];
};
};
};
}
+2 -2
View File
@@ -5,11 +5,11 @@
...
}: {
imports = [
../modules/terminal.nix
../modules/home/terminal.nix
];
programs.home-manager.enable = true;
home.packages = [];
home.stateVersion = "23.05";
home.stateVersion = "25.11";
}
-22
View File
@@ -1,22 +0,0 @@
{
myConfig,
lib,
...
}: {
imports = [
../modules/terminal.nix
../modules/desktop.nix
];
programs.home-manager.enable = true;
home = {
username = "${myConfig.general.Username}";
homeDirectory = "/home/${myConfig.general.Username}";
packages = [];
sessionVariables = {};
};
systemd.user.startServices = "sd-switch";
home.stateVersion = "23.05";
}
+16
View File
@@ -0,0 +1,16 @@
{
pkgs,
inputs,
...
}: let
info = import ../config.nix;
in {
imports = [
# inputs.chaotic.homeManagerModules.default
../modules/home/desktop.nix
../modules/home/terminal.nix
];
# nix.package = pkgs.nix;
home.packages = info.myConfig.nixos.Apps.packages pkgs;
home.stateVersion = "25.05";
}
View File
-36
View File
@@ -1,36 +0,0 @@
{
pkgs,
myConfig,
inputs,
lib,
...
}: {
imports =
[
inputs.sops-nix.nixosModules.sops
./hardware-configuration.nix
../../modules/linuxDev.nix
../../modules/system.nix
../../modules/de.nix
]
++ lib.optionals (myConfig.linux.apps.gaming == true) [
../../modules/gaming.nix
];
environment.systemPackages = [];
nixpkgs.config.allowUnfree = true;
nix.settings = {
trusted-users = myConfig.builds.builder.trustedUsers;
experimental-features = ["nix-command" "flakes"];
};
programs.ssh.extraConfig = myConfig.general.ssh.extraConfig;
nix.distributedBuilds = true;
nix.settings.builders-use-substitutes = true;
# nix.buildMachines = builder.buildMachines;
system.stateVersion = "25.05";
}
+204
View File
@@ -0,0 +1,204 @@
{
pkgs,
myConfig,
inputs,
lib,
specialArgs,
...
}: {
imports = [
inputs.home-manager.nixosModules.home-manager
inputs.chaotic.nixosModules.default
./hardware-configuration.nix
../../modules/default/desktop.nix
../../modules/default/dev.nix
../../modules/default/remote.nix
];
environment.systemPackages = with pkgs; [
pavucontrol
wl-clipboard
wget
protontricks
];
users = {
defaultUserShell = pkgs.${myConfig.general.Terminal.shell};
users = {
${myConfig.essentials.Username} = {
isNormalUser = true;
extraGroups = ["wheel" "networkmanager" "input" "video"];
initialHashedPassword = "$y$j9T$NHFtSwF4NJtEmgMjy4Xdg.$9WQltjEx3eEfZ7GbpGLW8lBhJtiXPOeIawrxdmx0.vB";
useDefaultShell = true;
packages = [];
};
};
};
home-manager = {
backupFileExtension = "backup";
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = specialArgs;
users.${myConfig.essentials.Username} = import ../../home/hakase.nix;
};
nixpkgs.config.allowUnfree = myConfig.general.allowUnfree;
hardware.logitech.wireless.enable = true;
hardware.bluetooth.enable = true;
hardware.bluetooth.powerOnBoot = true;
hardware.bluetooth.settings = {
General = {
AutoEnable = true;
Experimental = true;
MultiProfile = "multiple";
FastConnectable = true;
};
};
hardware.graphics = {
enable = true;
enable32Bit = true;
};
i18n.defaultLocale = "en_US.UTF-8";
time.timeZone = "${myConfig.nixos.Timezone}";
boot.loader = {
systemd-boot = lib.mkIf (myConfig.nixos.Boot.mode == "systemd") {
enable = true;
};
grub = lib.mkIf (myConfig.nixos.Boot.mode == "grub") {
efiSupport = true;
enable = true;
device = "nodev";
useOSProber = true;
};
efi = {
canTouchEfiVariables = true;
efiSysMountPoint = "/boot";
};
};
programs.ssh.extraConfig = myConfig.optionals.Ssh.extraConfig;
programs.bash = {
interactiveShellInit = ''
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
then
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
fi
'';
};
programs = {
zsh.enable = true;
fish.enable = true;
};
services = {
displayManager.sessionPackages = [inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland];
# getty.autologinUser = "${myConfig.essentials.Username}";
# greetd = {
# enable = true;
# settings.default_session = {
# user = "${myConfig.essentials.Username}";
# command = "Hyprland";
# };
# };
seatd.enable = true;
upower.enable = true;
scx.enable = true; # by default uses scx_rustland scheduler
libinput.enable = true;
blueman.enable = true;
printing.enable = true;
openssh.enable = true;
pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
# lowLatency = {
# enable = true;
# quantum = 64;
# rate = 48000;
# };
};
};
# make pipewire realtime-capable
security.rtkit.enable = true;
nix = {
distributedBuilds = true;
settings = {
builders-use-substitutes = true;
trusted-users = myConfig.optionals.Builds.trustedUsers;
experimental-features = ["nix-command" "flakes"];
};
};
console = {
earlySetup = false;
font = "${pkgs.terminus_font}/share/consolefonts/ter-132n.psf.gz";
packages = with pkgs; [terminus_font];
useXkbConfig = true;
};
networking = {
# wakeOnLan.enable = true;
networkmanager.enable = true;
firewall = {
enable = true;
allowedTCPPorts = [22 80];
allowedUDPPorts = [53];
};
proxy.default = null;
proxy.noProxy = null;
};
boot.loader.timeout = 0;
boot.loader.limine.maxGenerations = 5;
hardware.amdgpu.initrd.enable = true;
boot.kernelParams = [
"quiet"
"splash"
"boot.shell_on_fail"
"udev.log_priority=3"
"rd.systemd.show_status=auto"
"iommu=pt"
"amd_pstate=active"
];
boot.kernelPackages = pkgs.linuxPackages_cachyos;
boot.kernel.sysctl = {
"kernel.split_lock_mitigate" = 0;
"kernel.nmi_watchdog" = 0;
"kernel.sched_bore" = "1";
};
boot.initrd = {
systemd.enable = true;
kernelModules = [];
verbose = false;
};
boot.plymouth.enable = true;
boot.plymouth.theme = "seal";
boot.plymouth.themePackages = with pkgs; [
# By default we would install all themes
(adi1090x-plymouth-themes.override {
selected_themes = ["seal"];
})
];
boot.consoleLogLevel = 0;
systemd.extraConfig = "DefaultTimeoutStopSec=5s";
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
system.stateVersion = "25.05";
}
+47
View File
@@ -0,0 +1,47 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/532ac73e-1370-4e4d-9d5a-15033de0b96d";
fsType = "btrfs";
options = [ "subvol=@" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/1368-D3F3";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
fileSystems."/home" =
{ device = "/dev/disk/by-uuid/780aa81f-c4d6-478b-9c51-2d60362fdb07";
fsType = "ext4";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/b02ef55c-4caf-4a24-a6a2-fb8001eafe22"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp11s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp10s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}
+13 -9
View File
@@ -2,16 +2,17 @@
pkgs,
myConfig,
inputs,
system,
mkArgs,
...
}: {
imports = [
../../modules/macosDev.nix
inputs.sops-nix.darwinModules.sops
../../modules/default/darwin.nix
inputs.home-manager.darwinModules.home-manager
];
# List packages installed in system profile. To search by name, run:
# $ nix-env -qaP | grep wget
environment.systemPackages = with pkgs; [
];
environment.systemPackages = [];
# Auto upgrade nix package and the daemon service.
# services.nix-daemon.enable = true;
@@ -20,7 +21,7 @@
# Necessary for using flakes on this system.
nix.settings.experimental-features = "nix-command flakes";
nix.settings.trusted-users = myConfig.builds.builder.trustedUsers;
nix.settings.trusted-users = myConfig.optionals.Builds.trustedUsers;
# Create /etc/zshrc that loads the nix-darwin environment.
programs.zsh.enable = true; # default shell on catalina
@@ -33,11 +34,14 @@
nixpkgs.hostPlatform = "aarch64-darwin";
security.pam.services.sudo_local.touchIdAuth = true;
users.users.${myConfig.general.Username} = {
name = "${myConfig.general.Username}";
home = "/Users/${myConfig.general.Username}";
users.users.${myConfig.essentials.Username} = {
name = "${myConfig.essentials.Username}";
home = "/Users/${myConfig.essentials.Username}";
# shell = pkgs.${myConfig.general.terminal.Shell}; # no support for nix-darwin, but can be changed via chsh.
};
home-manager.users.${myConfig.general.Username} = import ../../home/macos.nix;
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = mkArgs system;
home-manager.users.${myConfig.essentials.Username} = import ../../home/darwin.nix;
}
View File
+169
View File
@@ -0,0 +1,169 @@
{
config,
pkgs,
lib,
myConfig,
inputs,
...
}: {
imports = [
# Include the results of the hardware scan.
inputs.chaotic.nixosModules.default
./hardware-configuration.nix
];
nix.settings.experimental-features = ["nix-command" "flakes"];
nixpkgs.config.allowUnfree = true;
####################
# Boot & Kernel #
####################
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.timeout = 0;
boot.loader.limine.maxGenerations = 5;
hardware.amdgpu.initrd.enable = true;
boot.kernelParams = ["quiet"];
boot.kernelPackages = pkgs.linuxPackages_cachyos;
boot.kernel.sysctl = {
"kernel.split_lock_mitigate" = 0;
"kernel.nmi_watchdog" = 0;
"kernel.sched_bore" = "1";
};
boot.initrd = {
systemd.enable = true;
kernelModules = [];
verbose = false;
};
boot.plymouth.enable = true;
boot.consoleLogLevel = 0;
systemd.extraConfig = "DefaultTimeoutStopSec=5s";
################
# FileSystems #
################
# fileSystems."/" = {
# options = ["compress=zstd"];
# };
############
# Network #
############
networking = {
networkmanager.enable = true;
firewall.enable = false;
hostName = "nixos";
};
#################
# Bluetooth #
#################
hardware.bluetooth.enable = true;
hardware.bluetooth.settings = {
General = {
MultiProfile = "multiple";
FastConnectable = true;
};
};
#################
# Sound & RTKit #
#################
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
########################
# Graphical & Greetd #
########################
services.xserver.enable = false;
services.getty.autologinUser = "steamos";
services.greetd = {
enable = true;
settings.default_session = {
user = "${myConfig.essentials.Username}";
command = "steam-gamescope > /dev/null 2>&1";
};
};
########################
# Programs & Gaming #
########################
services.automatic-timezoned.enable = true;
services.flatpak.enable = true;
xdg.portal.enable = true;
xdg.portal.config.common.default = "*";
xdg.portal.extraPortals = [pkgs.xdg-desktop-portal-gtk];
# programs.steam.gamescopeSession.args = ["-w 1920" "-h 1080" "-r 120" "--xwayland-count 2" "-e" "--hdr-enabled" "--mangoapp"];
programs = {
appimage = {
enable = true;
binfmt = true;
};
fish = {enable = true;};
mosh = {enable = true;};
tmux = {enable = true;};
gamescope.capSysNice = true;
steam = {
enable = true;
gamescopeSession.enable = true;
extraCompatPackages = with pkgs; [proton-ge-bin];
extraPackages = with pkgs; [
mangohud
gamescope-wsi
];
};
};
environment.sessionVariables = {
PROTON_USE_NTSYNC = "1";
ENABLE_HDR_WSI = "1";
DXVK_HDR = "1";
PROTON_ENABLE_AMD_AGS = "1";
PROTON_ENABLE_NVAPI = "1";
ENABLE_GAMESCOPE_WSI = "1";
STEAM_MULTIPLE_XWAYLANDS = "1";
};
###################
# Virtualization #
###################
virtualisation.docker.enable = true;
virtualisation.docker.enableOnBoot = false;
virtualisation.libvirtd.enable = true;
###############
# Users #
###############
users.users.${myConfig.essentials.Username} = {
isNormalUser = true;
description = "SteamOS user";
extraGroups = ["networkmanager" "wheel" "docker" "video" "seat" "audio" "libvirtd"];
# password = "steamos";
};
#################
# Security #
#################
security.sudo.wheelNeedsPassword = false;
security.polkit.enable = true;
services.seatd.enable = true;
services.openssh.enable = true;
######################
######################
########################
# System State Version #
########################
system.stateVersion = "25.05";
}
+47
View File
@@ -0,0 +1,47 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/532ac73e-1370-4e4d-9d5a-15033de0b96d";
fsType = "btrfs";
options = [ "subvol=@" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/1368-D3F3";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
fileSystems."/home" =
{ device = "/dev/disk/by-uuid/780aa81f-c4d6-478b-9c51-2d60362fdb07";
fsType = "ext4";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/b02ef55c-4caf-4a24-a6a2-fb8001eafe22"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp11s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp10s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}
-19
View File
@@ -1,19 +0,0 @@
{
lib,
myConfig,
...
}: {
imports =
[
../system/font.nix
../system/browser.nix
../system/wayland.nix
../system/graphics.nix
../system/security.nix
# FIXME
../system/amd.nix
]
++ lib.optionals (myConfig.linux.gaming == true) [
];
}
+5
View File
@@ -0,0 +1,5 @@
{
imports = [
../../packages/python/default.nix
];
}
+20
View File
@@ -0,0 +1,20 @@
{
lib,
myConfig,
...
}: {
imports =
[
../../packages/hyprland/default.nix
../../packages/matugen/default.nix
../../packages/quickshell/default.nix
../../packages/udev/default.nix
]
++ [
../../packages/steam/default.nix
../../packages/bottles/default.nix
]
++ lib.optionals (myConfig.nixos.enableSteamOS == true) [
../../packages/steam/jovian.nix
];
}
+5
View File
@@ -0,0 +1,5 @@
{
imports = [
../../packages/python/default.nix
];
}
+4
View File
@@ -0,0 +1,4 @@
{
imports = [
];
}
-20
View File
@@ -1,20 +0,0 @@
{
lib,
myConfig,
...
}: {
imports =
[
../packages/hyprland/default.nix
../packages/hypridle/default.nix
../packages/hyprlock/default.nix
../packages/rofi/default.nix
../packages/matugen/default.nix
../packages/swww/default.nix
../packages/quickshell/default.nix
../packages/ags/default.nix
]
++ lib.optionals (myConfig.linux.gaming == true) [
../packages/mangohud/default.nix
];
}
-7
View File
@@ -1,7 +0,0 @@
{
imports = [
../system/stream.nix
../system/gaming.nix
../system/appimage.nix
];
}
+26
View File
@@ -0,0 +1,26 @@
{
imports =
[
../../packages/fonts/home.nix
../../packages/firefox/home.nix
../../packages/hyprland/home.nix
../../packages/hyprlock/home.nix
../../packages/hypridle/home.nix
../../packages/quickshell/home.nix
../../packages/swww/home.nix
../../packages/hyprsunset/home.nix
../../packages/matugen/home.nix
../../packages/rofi/home.nix
../../packages/bibata/home.nix
]
++ [
../../packages/solaar/home.nix
]
++ [
../../packages/mangohud/home.nix
../../packages/protonup/home.nix
../../packages/lutris/home.nix
../../packages/steam/home.nix
];
}
+6
View File
@@ -0,0 +1,6 @@
{
imports = [
../../packages/moondeck-buddy/appimage.nix
../../packages/sunshine/default.nix
];
}
+19
View File
@@ -0,0 +1,19 @@
{
imports = [
../../packages/fish/home.nix
../../packages/kitty/home.nix
../../packages/neovim/home.nix
../../packages/starship/home.nix
../../packages/fastfetch/home.nix
../../packages/zsh/home.nix
../../packages/zoxide/home.nix
../../packages/fonts/home.nix
../../packages/git/home.nix
../../packages/btop/home.nix
../../packages/eza/home.nix
../../packages/cloudflared/home.nix
];
}
-7
View File
@@ -1,7 +0,0 @@
{...}: {
imports = [
../system/dev/tools.nix
../system/dev/python.nix
../system/dev/linux.nix
];
}
-6
View File
@@ -1,6 +0,0 @@
{...}: {
imports = [
../system/dev/tools.nix
../system/dev/python.nix
];
}
-13
View File
@@ -1,13 +0,0 @@
{...}: {
imports = [
../system/users.nix
../system/hardware.nix
../system/locale.nix
../system/network.nix
../system/programs.nix
../system/services.nix
../system/tty.nix
../system/firewall.nix
../system/boot.nix
];
}
-11
View File
@@ -1,11 +0,0 @@
{...}: {
imports = [
../packages/git/default.nix
../packages/fish/default.nix
../packages/kitty/default.nix
../packages/neovim/default.nix
../packages/starship/default.nix
../packages/fastfetch/default.nix
../packages/zsh/default.nix
];
}
@@ -8,7 +8,7 @@
programs.ags = {
enable = true;
configDir = ./biscuit;
configDir = ./custom;
extraPackages = let
agsPkgs = inputs.ags.packages.${system};
+5
View File
@@ -0,0 +1,5 @@
{pkgs, ...}: {
home.packages = with pkgs; [
bibata-cursors
];
}
@@ -1,5 +1,5 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
busybox
bottles
];
}
+9
View File
@@ -0,0 +1,9 @@
{
programs.btop = {
enable = true;
settings = {
vim_keys = true;
theme_background = false;
};
};
}
+5
View File
@@ -0,0 +1,5 @@
{pkgs, ...}: {
home.packages = with pkgs; [
cloudflared
];
}
+12
View File
@@ -0,0 +1,12 @@
{pkgs, ...}: {
programs.eza = {
enable = true;
git = true;
colors = "auto";
icons = "auto";
enableZshIntegration = true;
enableFishIntegration = true;
enableBashIntegration = true;
};
}
+113
View File
@@ -0,0 +1,113 @@
{
programs.firefox = {
enable = true;
languagePacks = [
"en-US"
];
profiles = {
hakase = {
search.force = true;
isDefault = true;
search.default = "ddg";
settings = {
"browser.contentblocking.category" = "strict";
"extensions.pocket.enabled" = false;
"extensions.screenshots.disabled" = true;
"browser.topsites.contile.enabled" = false;
"browser.formfill.enable" = false;
"browser.search.suggest.enabled" = false;
"browser.search.suggest.enabled.private" = false;
"browser.urlbar.suggest.searches" = false;
"browser.urlbar.showSearchSuggestionsFirst" = false;
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
"browser.newtabpage.activity-stream.feeds.snippets" = false;
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false;
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false;
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = false;
"browser.newtabpage.activity-stream.showSponsored" = false;
"browser.newtabpage.activity-stream.system.showSponsored" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"browser.startup.homepage" = "https://dash.sakamoto.dev";
"browser.newtabpage.pinned" = [
{
title = "Dashboard";
url = "https://dash.sakamoto.dev";
}
];
};
bookmarks = {
force = true;
settings = [
{
toolbar = true;
bookmarks = [
{
name = "Home Manager";
url = "https://mynixos.com/home-manager/options/programs";
}
{
name = "YouTube";
url = "https://youtube.com";
}
];
}
];
};
};
};
policies = {
DisableTelemetry = true;
DisableFirefoxStudies = true;
EnableTrackingProtection = {
Value = true;
Locked = true;
Cryptomining = true;
Fingerprinting = true;
};
DisablePocket = true;
DisableFirefoxAccounts = true;
DisableAccounts = true;
DisableFirefoxScreenshots = true;
OverrideFirstRunPage = "";
OverridePostUpdatePage = "";
DontCheckDefaultBrowser = true;
DisplayBookmarksToolbar = "always"; # alternatives: "always" or "newtab"
DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on"
SearchBar = "unified"; # alternative: "separate"
/*
---- EXTENSIONS ----
*/
# Check about:support for extension/add-on ID strings.
# Valid strings for installation_mode are "allowed", "blocked",
# "force_installed" and "normal_installed".
ExtensionSettings = {
"*".installation_mode = "blocked";
"uBlock0@raymondhill.net" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
installation_mode = "force_installed";
};
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
install_url = "https://addons.mozilla.org/firefox/downloads/file/4493940/bitwarden_password_manager-2025.5.0.xpi";
installation_mode = "force_installed";
};
"tridactyl.vim@cmcaine.co.uk" = {
install_url = "https://addons.mozilla.org/firefox/downloads/file/4405615/tridactyl_vim-1.24.2.xpi";
installation_mode = "force_installed";
};
# Privacy Badger:
# "jid1-MnnxcxisBPnSXQ@jetpack" = {
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi";
# installation_mode = "force_installed";
# };
# 1Password:
# "{d634138d-c276-4fc8-924b-40a0ea21d284}" = {
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/1password-x-password-manager/latest.xpi";
# installation_mode = "force_installed";
# };
};
};
};
}
@@ -3,7 +3,6 @@
myConfig,
...
}: {
programs.zoxide.enable = true;
programs.fish = {
enable = true;
interactiveShellInit = ''
@@ -12,7 +11,7 @@
zoxide init fish | source
'';
shellAliases = myConfig.general.terminal.Aliases;
shellAliases = myConfig.general.Terminal.aliases;
plugins = with pkgs.fishPlugins; [
];
+8
View File
@@ -0,0 +1,8 @@
{pkgs, ...}: {
fonts = {
fontconfig.enable = true;
};
home.packages = with pkgs; [
nerd-fonts.jetbrains-mono
];
}
-10
View File
@@ -1,10 +0,0 @@
{myConfig, ...}: {
programs.git = {
enable = true;
extraConfig = {
user.name = "${myConfig.general.gitProfile.User}";
user.email = "${myConfig.general.gitProfile.Email}";
init.defaultBranch = "${myConfig.general.gitProfile.defaultBranch}";
};
};
}
+10
View File
@@ -0,0 +1,10 @@
{myConfig, ...}: {
programs.git = {
enable = true;
extraConfig = {
user.name = "${myConfig.nixos.Git.user}";
user.email = "${myConfig.nixos.Git.email}";
init.defaultBranch = "${myConfig.nixos.Git.defaultBranch}";
};
};
}
-38
View File
@@ -1,38 +0,0 @@
{...}: {
services.hypridle = {
enable = true;
settings = {
general = {
lock_cmd = "pidof hyprlock || hyprlock"; # avoid starting multiple hyprlock instances.
before_sleep_cmd = "loginctl lock-session"; # lock before suspend.
after_sleep_cmd = "hyprctl dispatch dpms on && agu"; # avoid needing to press a key twice to turn on the display.
};
listener = [
{
timeout = 150;
on-timeout = "brightnessctl -s set 10"; # set monitor backlight to minimum, avoid 0 on OLED monitor.
on-resume = "brightnessctl -r"; # restore monitor backlight.
}
{
timeout = 150;
on-timeout = "brightnessctl -sd rgb:kbd_backlight set 0"; # turn off keyboard backlight.
on-resume = "brightnessctl -rd rgb:kbd_backlight"; # turn on keyboard backlight.
}
{
timeout = 300;
on-timeout = "loginctl lock-session"; # lock screen when timeout has passed.
}
{
timeout = 330;
on-timeout = "hyprctl dispatch dpms off"; # screen off after 5.5min.
on-resume = "hyprctl dispatch dpms on && brightnessctl -r"; # screen on and restore brightness on resume.
}
{
timeout = 500;
on-timeout = "systemctl suspend"; # suspend PC after 30min.
}
];
};
};
}
+38
View File
@@ -0,0 +1,38 @@
{...}: {
services.hypridle = {
enable = true;
settings = {
general = {
lock_cmd = "pidof hyprlock || hyprlock"; # avoid starting multiple hyprlock instances.
before_sleep_cmd = "loginctl lock-session"; # lock before suspend.
after_sleep_cmd = "hyprctl dispatch dpms on && agu"; # avoid needing to press a key twice to turn on the display.
};
listener = [
# {
# timeout = 150;
# on-timeout = "brightnessctl -s set 10"; # set monitor backlight to minimum, avoid 0 on OLED monitor.
# on-resume = "brightnessctl -r"; # restore monitor backlight.
# }
# {
# timeout = 150;
# on-timeout = "brightnessctl -sd rgb:kbd_backlight set 0"; # turn off keyboard backlight.
# on-resume = "brightnessctl -rd rgb:kbd_backlight"; # turn on keyboard backlight.
# }
# {
# timeout = 300;
# on-timeout = "loginctl lock-session"; # lock screen when timeout has passed.
# }
# {
# timeout = 330;
# on-timeout = "hyprctl dispatch dpms off"; # screen off after 5.5min.
# on-resume = "hyprctl dispatch dpms on && brightnessctl -r"; # screen on and restore brightness on resume.
# }
{
timeout = 500;
on-timeout = "systemctl suspend"; # suspend PC after 30min.
}
];
};
};
}
+42
View File
@@ -0,0 +1,42 @@
{
config,
pkgs,
myConfig,
...
}: {
wayland.windowManager.hyprland.settings = {
animations = {
enabled = true;
bezier = [
"linear, 0, 0, 1, 1"
"md3_standard, 0.2, 0, 0, 1"
"md3_decel, 0.05, 0.7, 0.1, 1"
"md3_accel, 0.3, 0, 0.8, 0.15"
"overshot, 0.05, 0.9, 0.1, 1.1"
"crazyshot, 0.1, 1.5, 0.76, 0.92"
"hyprnostretch, 0.05, 0.9, 0.1, 1.0"
"menu_decel, 0.1, 1, 0, 1"
"menu_accel, 0.38, 0.04, 1, 0.07"
"easeInOutCirc, 0.85, 0, 0.15, 1"
"easeOutCirc, 0, 0.55, 0.45, 1"
"easeOutExpo, 0.16, 1, 0.3, 1"
"softAcDecel, 0.26, 0.26, 0.15, 1"
"md2, 0.4, 0, 0.2, 1"
];
animation = [
"windows, 1, 3, md3_decel, popin 60%"
"windowsIn, 1, 3, md3_decel, popin 60%"
"windowsOut, 1, 3, md3_accel, popin 60%"
"border, 1, 10, default"
"fade, 1, 3, md3_decel"
"layersIn, 1, 3, menu_decel, slide"
"layersOut, 1, 1.6, menu_accel"
"fadeLayersIn, 1, 2, menu_decel"
"fadeLayersOut, 1, 0.5, menu_accel"
"workspaces, 1, 7, menu_decel, slide"
"specialWorkspace, 1, 3, md3_decel, slidevert"
];
};
};
}
+297
View File
@@ -0,0 +1,297 @@
{
config,
pkgs,
...
}: {
wayland.windowManager.hyprland.settings = {
exec = [
"hyprctl dispatch submap global"
];
submap = [
"global"
];
# Shell keybinds
bindi = [
"$mod, Super_L, global, caelestia:launcher" # bind to `bind` because `bindi` maps to it
# Launcher
];
bindin =
[
"$mod, catchall, global, caelestia:launcherInterrupt"
"$mod, mouse:272, global, caelestia:launcherInterrupt"
"$mod, mouse:273, global, caelestia:launcherInterrupt"
"$mod, mouse:274, global, caelestia:launcherInterrupt"
"$mod, mouse:275, global, caelestia:launcherInterrupt"
"$mod, mouse:276, global, caelestia:launcherInterrupt"
"$mod, mouse:277, global, caelestia:launcherInterrupt"
"$mod, mouse_up, global, caelestia:launcherInterrupt"
"$mod, mouse_down, global, caelestia:launcherInterrupt"
"$mod, K, global, caelestia:launcherInterrupt"
"$mod, H, global, caelestia:launcherInterrupt"
"$mod, J, global, caelestia:launcherInterrupt"
"$mod, L, global, caelestia:launcherInterrupt"
"$mod, S, global, caelestia:launcherInterrupt"
"$mod, G, global, caelestia:launcherInterrupt"
"$mod, T, global, caelestia:launcherInterrupt"
"$mod, D, global, caelestia:launcherInterrupt"
"$mod, Escape, global, caelestia:launcherInterrupt"
"$mod, PERIOD, global, caelestia:launcherInterrupt"
"$mod, E, global, caelestia:launcherInterrupt"
"$mod, V, global, caelestia:launcherInterrupt"
"$mod, W, global, caelestia:launcherInterrupt"
"$mod, Q, global, caelestia:launcherInterrupt"
"$mod, C, global, caelestia:launcherInterrupt"
"$mod, Return, global, caelestia:launcherInterrupt"
]
++ (
# Go to workspace group #
builtins.concatLists (builtins.genList (
i: let
ws = i + 1;
in [
"$mod, ${toString ws}, global, caelestia:launcherInterrupt"
]
)
9)
)
++ [
"$mod, 0, global, caelestia:launcherInterrupt"
];
bind =
[
# Misc
"Control+Alt, Delete, exec, caelestia:session"
"$mod ALT, A, global, caelestia:showall"
"$mod ALT, L, global, caelestia:lock"
# Restore lock - these are `bindl` in your original, but `exec` should be fine here.
# However, `bindl` is typically for a *release* event. If `caelestia shell -d` is a daemon,
# and `caelestia:lock` is a quickshell internal, you might need to reconsider.
# For direct translation, they go into `bindl` list.
# Media - handled by bindl below
# Apps
"$mod, Return, exec, app2unit -- kitty"
"$mod, W, exec, app2unit -- firefox"
"$mod, E, exec, app2unit -- thunar"
"$mod, Q, killactive"
"$mod ALT, E, exec, app2unit -- nemo"
"Control+Alt, Escape, exec, app2unit -- qps"
"Control+Alt, V, exec, app2unit -- pavucontrol"
# Utilities
"$mod SHIFT, S, global, caelestia:screenshotFreeze"
"$mod SHIFT ALT, S, global, caelestia:screenshot"
"$mod ALT, R, exec, caelestia record -s"
"Control+Alt, R, exec, caelestia record"
"$mod SHIFT ALT, R, exec, caelestia record -r"
"$mod SHIFT, C, exec, hyprpicker -a" # Colour picker
# Sleep
"$mod SHIFT, PRINT, exec, systemctl suspend-then-hibernate"
# Clipboard and emoji picker
"$mod, V, exec, pkill fuzzel || caelestia clipboard"
"$mod ALT, V, exec, pkill fuzzel || caelestia clipboard -d"
"$mod, Period, exec, pkill fuzzel || caelestia emoji -p"
# Testing
# This is a `bindl` (key release), so move it to `bindl` list below.
# Window actions
"$mod, H, movefocus, l"
"$mod, L, movefocus, r"
"$mod, K, movefocus, u"
"$mod, J, movefocus, d"
"$mod SHIFT, H, movewindow, l"
"$mod SHIFT, L, movewindow, r"
"$mod SHIFT, K, movewindow, u"
"$mod SHIFT, J, movewindow, d"
"$mod CTRL, Backslash, centerwindow, 1"
"$mod CTRL ALT, Backslash, resizeactive, exact 55% 70%"
"$mod CTRL ALT, Backslash, centerwindow, 1"
"$mod ALT, Backslash, exec, caelestia pip"
"$mod, P, pin"
"$mod, F, fullscreen, 0"
"$mod ALT, F, fullscreen, 1"
# Special workspace toggles
"Control+Shift, Escape, exec, caelestia toggle sysmon"
"$mod, Escape, exec, caelestia toggle sysmon"
"$mod, M, exec, caelestia toggle music"
"$mod, D, exec, caelestia toggle communication"
"$mod, R, exec, caelestia toggle todo"
"$mod, G, togglespecialworkspace, gaming"
"$mod SHIFT, G, movetoworkspace, special:gaming"
"$mod, T, exec, caelestia toggle steam"
# "$mod, T, togglespecialworkspace, special:steam"
# "$mod SHIFT, T, movetoworkspace, special:steam"
# Toggle special workspace
"$mod, S, exec, caelestia toggle specialws"
# Window groups
"$mod, Comma, togglegroup"
"$mod SHIFT, Comma, lockactivegroup, toggle"
# Go to workspace -1/+1 (mouse binds are `bind` for mouse-wheel)
"$mod, mouse_down, workspace, -1"
"$mod, mouse_up, workspace, +1"
# Move window to workspace -1/+1
"$mod ALT, mouse_down, movetoworkspace, -1"
"$mod ALT, mouse_up, movetoworkspace, +1"
# Move window to/from special workspace
"$mod CTRL SHIFT, up, movetoworkspace, special:special"
"$mod CTRL SHIFT, down, movetoworkspace, e+0"
"$mod ALT, S, movetoworkspace, special:special"
]
++ (
# Go to workspace #
let
wsaction = "~/.config/hypr/scripts/wsaction.fish";
in
builtins.concatLists (builtins.genList (
i: let
ws = i + 1;
in [
"$mod, ${toString ws}, exec, ${wsaction} workspace ${toString ws}"
]
)
9) # For workspaces 1-9
)
++ [
# "$mod, 0, exec, ${config.wayland.windowManager.hyprland.settings.workspaceRule."0".exec} workspace 10" # Workaround for workspace 0
# Re-adding `wsaction` since it's used here.
"$mod, 0, exec, ~/.config/hypr/scripts/wsaction.fish workspace 10"
]
++ (
# Go to workspace group #
let
wsaction = "~/.config/hypr/scripts/wsaction.fish";
in
builtins.concatLists (builtins.genList (
i: let
ws = i + 1;
in [
"Control+$mod, ${toString ws}, exec, ${wsaction} -g workspace ${toString ws}"
]
)
9)
)
++ [
"Control+$mod, 0, exec, ~/.config/hypr/scripts/wsaction.fish -g workspace 10"
]
++ (
# Move window to workspace #
let
wsaction = "~/.config/hypr/scripts/wsaction.fish";
in
builtins.concatLists (builtins.genList (
i: let
ws = i + 1;
in [
"$mod SHIFT, ${toString ws}, exec, ${wsaction} movetoworkspace ${toString ws}"
]
)
9)
)
++ [
"$mod SHIFT, 0, exec, ~/.config/hypr/scripts/wsaction.fish movetoworkspace 10"
]
++ (
# Move window to workspace group #
let
wsaction = "~/.config/hypr/scripts/wsaction.fish";
in
builtins.concatLists (builtins.genList (
i: let
ws = i + 1;
in [
"Control+$mod ALT, ${toString ws}, exec, ${wsaction} -g movetoworkspace ${toString ws}"
]
)
9)
)
++ [
"Control+$mod ALT, 0, exec, ~/.config/hypr/scripts/wsaction.fish -g movetoworkspace 10"
];
binde = [
"$mod, Minus, splitratio, -0.1"
"$mod, Equal, splitratio, 0.1"
"Control+$mod, left, workspace, -1"
"$mod, Page_Up, workspace, -1"
"Control+$mod, right, workspace, +1"
"$mod, Page_Down, workspace, +1"
"$mod ALT, Page_Up, movetoworkspace, -1"
"$mod ALT, Page_Down, movetoworkspace, +1"
"Control+$mod SHIFT, right, movetoworkspace, +1"
"Control+$mod SHIFT, left, movetoworkspace, -1"
"Alt, Tab, cyclenext, activewindow" # `binde` for cycle next
"Control+Alt, Tab, changegroupactive, f" # `binde` for change group active
];
bindm = [
"$mod, mouse:272, movewindow"
"$mod, Z, movewindow"
"$mod, mouse:273, resizewindow"
"$mod, X, resizewindow"
];
bindl = [
# Restore lock
"$mod ALT, L, exec, caelestia shell -d"
"$mod ALT, L, global, caelestia:lock" # This is a Hyprland `global` command, not an `exec`
# Brightness
", XF86MonBrightnessUp, global, caelestia:brightnessUp"
", XF86MonBrightnessDown, global, caelestia:brightnessDown"
# Media
"Control+$mod, Space, global, caelestia:mediaToggle"
", XF86AudioPlay, global, caelestia:mediaToggle"
", XF86AudioPause, global, caelestia:mediaToggle"
"Control+$mod, Equal, global, caelestia:mediaNext"
", XF86AudioNext, global, caelestia:mediaNext"
"Control+$mod, Minus, global, caelestia:mediaPrev"
", XF86AudioPrev, global, caelestia:mediaPrev"
", XF86AudioStop, global, caelestia:mediaStop"
# Utilities (screenshot is `bindl` in your original)
", Print, exec, caelestia screenshot" # Full screen capture > clipboard
# Volume
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
"$mod SHIFT, M, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
# Clipboard and emoji picker (alternate paste is `bindl`)
"Control+Shift+Alt, V, exec, sleep 0.5s && ydotool type -d 1 \"$(cliphist list | head -1 | cliphist decode)\""
# Testing
"$mod ALT, f12, exec, notify-send -u low -i dialog-information-symbolic 'Test notification' \"Here's a really long message to test truncation and wrapping\\nYou can middle click or flick this notification to dismiss it!\" -a 'Shell' -A \"Test1=I got it!\" -A \"Test2=Another action\""
];
bindel = [
# Volume
", XF86AudioRaiseVolume, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 10%+"
", XF86AudioLowerVolume, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume @DEFAULT_AUDIO_SINK@ 10%-"
];
bindr = [
# Kill/restart
"Control+$mod SHIFT, R, exec, qs -c caelestia kill"
"Control+$mod ALT, R, exec, qs -c caelestia kill; caelestia shell -d"
];
};
}
+27
View File
@@ -0,0 +1,27 @@
{
config,
pkgs,
myConfig,
...
}: {
wayland.windowManager.hyprland.settings = {
exec = [
"cp -L --no-preserve=mode --update=none ~/.config/hypr/scheme/default.conf ~/.config/hypr/scheme/current.conf"
];
source = [
"~/.config/hypr/scheme/current.conf"
];
group = {
groupbar = {
"text_color" = "rgb($onPrimary)";
"col.active" = "rgba($primaryd4)";
"col.inactive" = "rgba($outlined4)";
"col.locked_active" = "rgba($primaryd4)";
"col.locked_inactive" = "rgba($secondaryd4)";
};
};
misc = {
background_color = "rgb($surfaceVariant)";
};
};
}
+33
View File
@@ -0,0 +1,33 @@
{
config,
pkgs,
myConfig,
...
}: {
wayland.windowManager.hyprland.settings = {
decoration = {
rounding = 10;
rounding_power = 2;
active_opacity = 1.0;
inactive_opacity = 1.0;
dim_inactive = true;
dim_strength = 0.1;
dim_special = 0.8;
shadow = {
enabled = true;
range = 4;
render_power = 3;
color = "rgba(1a1a1aee)";
};
blur = {
enabled = true;
size = 3;
passes = 1;
vibrancy = 0.1696;
};
};
};
}
+31
View File
@@ -0,0 +1,31 @@
{
config,
pkgs,
myConfig,
...
}: {
wayland.windowManager.hyprland.settings = {
env = [
"HYPRCURSOR_THEME, Bibata-Original-Classic"
"HYPRCURSOR_SIZE, 24"
"QT_QPA_PLATFORMTHEME, qt5ct"
"QT_WAYLAND_DISABLE_WINDOWDECORATION, 1"
"QT_AUTO_SCREEN_SCALE_FACTOR, 1"
"XCURSOR_THEME, sweet-rainbow"
"XCURSOR_SIZE, 24"
"GDK_BACKEND, wayland,x11"
"QT_QPA_PLATFORM, wayland;xcb"
"SDL_VIDEODRIVER, wayland,x11"
"CLUTTER_BACKEND, wayland"
"ELECTRON_OZONE_PLATFORM_HINT, auto"
"XDG_CURRENT_DESKTOP, Hyprland"
"XDG_SESSION_TYPE, wayland"
"XDG_SESSION_DESKTOP, Hyprland"
"_JAVA_AWT_WM_NONREPARENTING, 1"
];
};
}
+27
View File
@@ -0,0 +1,27 @@
{
config,
pkgs,
myConfig,
...
}: {
wayland.windowManager.hyprland.settings = {
exec-once = [
# "[workspace special:communication silent] discord"
"[workspace special:steam silent] steam"
"[workspace special:preload silent] kitty --single-instance --hold fastfetch"
"[workspace special:preload silent] firefox"
"[workspace 1] kitty --single-instance --hold -e fish -C fastfetch"
"hyprctl setcursor Bibata-Modern-Ice 24"
"solaar -w hide"
# "sunshine"
# "moondeck-buddy"
"wl-paste --type text --watch cliphist store"
"wl-paste --type image --watch cliphist store"
"sleep 3 && caelestia shell"
];
};
}
+128
View File
@@ -0,0 +1,128 @@
{
config,
pkgs,
myConfig,
...
}: {
wayland.windowManager.hyprland.settings = {
# ######## Window rules ########
windowrule = [
"opaque, class:foot|equibop"
"center 1, floating:1, xwayland:0"
# Float
"float, class:guifetch"
"float, class:yad"
"float, class:zenity"
"float, class:wev"
"float, class:org\\.gnome\\.FileRoller" # Escaped backslash
"float, class:file-roller"
"float, class:blueman-manager"
"float, class:com\\.github\\.GradienceTeam\\.Gradience" # Escaped backslash
"float, class:feh"
"float, class:imv"
"float, class:system-config-printer"
"float, class:quickshell"
# Float, resize and center
"float, class:foot, title:nmtui"
"size 60% 70%, class:foot, title:nmtui"
"center 1, class:foot, title:nmtui"
"float, class:org\\.gnome\\.Settings"
"size 70% 80%, class:org\\.gnome\\.Settings"
"center 1, class:org\\.gnome\\.Settings"
"float, class:org\\.pulseaudio\\.pavucontrol|yad-icon-browser"
"size 60% 70%, class:org\\.pulseaudio\\.pavucontrol|yad-icon-browser"
"center 1, class:org\\.pulseaudio\\.pavucontrol|yad-icon-browser"
"float, class:nwg-look"
"size 50% 60%, class:nwg-look"
"center 1, class:nwg-look"
# Special workspaces
"workspace special:sysmon, class:btop"
"workspace special:music, class:feishin|Spotify|Supersonic"
"workspace special:music, initialTitle:Spotify( Free)?"
"workspace special:communication, class:discord|equibop|vesktop|whatsapp"
"workspace special:todo, class:Todoist"
"workspace special:steam, class:^(steam_app_.*)$"
"noinitialfocus, class:discord"
"focusonactivate 0, class:discord"
# Always full screen
# "fullscreen, title:^(Steam Big Picture Mode)$"
# "fullscreen, title:^(steam_app_.*)$"
# Dialogs
"float, title:(Select|Open)( a)? (File|Folder)(s)?"
"float, title:File (Operation|Upload)( Progress)?"
"float, title:.* Properties"
"float, title:Export Image as PNG"
"float, title:GIMP Crash Debug"
"float, title:Save As"
"float, title:Library"
# Picture in picture (resize and move done via script)
"move 100%-w-2% 100%-w-3%, title:Picture(-| )in(-| )[Pp]icture"
"keepaspectratio, title:Picture(-| )in(-| )[Pp]icture"
"float, title:Picture(-| )in(-| )[Pp]icture"
"pin, title:Picture(-| )in(-| )[Pp]icture"
# Steam
"workspace special:steam, class:steam"
"rounding 10, title:, class:steam"
"float, title:Friends List, class:steam"
"immediate, class:steam_app_[0-9]+"
"idleinhibit always, class:steam_app_[0-9]+"
# ATLauncher console
"float, class:com-atlauncher-App, title:ATLauncher Console"
# Autodesk Fusion 360
"noblur, title:Fusion360|(Marking Menu), class:fusion360\\.exe" # Escaped backslash
# Ugh xwayland popups
"nodim, xwayland:1, title:win[0-9]+"
"noshadow, xwayland:1, title:win[0-9]+"
"rounding 10, xwayland:1, title:win[0-9]+"
];
# ######## Workspace rules ########
workspace = [
"w[tv1]s[false], gapsout:20, gapsin:20"
"f[1]s[false], gapsout:20, gapsin:20"
"1, monitor:DP-1, default:true"
"2, monitor:DP-1"
"3, monitor:DP-1"
"4, monitor:DP-2"
"5, monitor:DP-2"
"6, monitor:DP-2"
"special:gaming, monitor:DP-1, persistent:true"
"special:steam, monitor:DP-1, persistent:true, on-created-empty:steam"
];
# ######## Layer rules ########
layerrule = [
"animation fade, hyprpicker"
"animation fade, logout_dialog"
"animation fade, selection"
"animation fade, wayfreeze"
# Fuzzel
"animation popin 80%, launcher"
"blur, launcher"
# Shell
"noanim, caelestia-(launcher|osd|notifications|border-exclusion|area-picker)"
"animation fade, caelestia-(drawers|background)"
"order 1, caelestia-border-exclusion"
"order 2, caelestia-bar"
# The commented out lines below need to remain commented if you don't want them active
#"xray 1, caelestia-(border|launcher|bar|sidebar|navbar|mediadisplay|screencorners)"
#"blur, caelestia-.*"
#"blurpopups, caelestia-.*"
#"ignorealpha 0.57, caelestia-.*"
];
};
}
+10 -218
View File
@@ -1,221 +1,13 @@
{myConfig, ...}: {
wayland.windowManager.hyprland = {
{
pkgs,
inputs,
myConfig,
lib,
...
}: {
programs.hyprland = {
enable = true;
xwayland.enable = true;
settings = {
"$mod" = "SUPER";
"$term" = "kitty --single-instance";
"$browser" = "firefox";
monitor = myConfig.linux.hyprconf.Monitor;
exec-once = [
"[workspace 20 silent] kitty --single-insance --hold fastfetch"
"[workspace 20 silent] firefox"
"[workspace 1] kitty --single-instance --hold fastfetch"
"pkill gjs & ags run"
"matugen image /home/${myConfig.general.Username}/.config/nixos/assets/wallpapers/ultrawide-nixos-default.png"
"hyprctl setcursor Bibata-Original-Classic 24"
"solaar -w hide"
];
general = {
gaps_in = 2;
gaps_out = 5;
border_size = 2;
# col.active_border = "#0DB7D4FF";
# col.inactive_border = "#31313600";
# col = {
# "inactive_border" = "rgba(595959aa)";
# "active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg";
# };
resize_on_border = false;
allow_tearing = false;
layout = "dwindle";
};
decoration = {
rounding = 0;
rounding_power = 2;
active_opacity = 1.0;
inactive_opacity = 1.0;
dim_inactive = true;
dim_strength = 0.1;
dim_special = 0.8;
shadow = {
enabled = true;
range = 4;
render_power = 3;
color = "rgba(1a1a1aee)";
};
blur = {
enabled = true;
size = 3;
passes = 1;
vibrancy = 0.1696;
};
};
animations = {
enabled = true;
bezier = [
"linear, 0, 0, 1, 1"
"md3_standard, 0.2, 0, 0, 1"
"md3_decel, 0.05, 0.7, 0.1, 1"
"md3_accel, 0.3, 0, 0.8, 0.15"
"overshot, 0.05, 0.9, 0.1, 1.1"
"crazyshot, 0.1, 1.5, 0.76, 0.92"
"hyprnostretch, 0.05, 0.9, 0.1, 1.0"
"menu_decel, 0.1, 1, 0, 1"
"menu_accel, 0.38, 0.04, 1, 0.07"
"easeInOutCirc, 0.85, 0, 0.15, 1"
"easeOutCirc, 0, 0.55, 0.45, 1"
"easeOutExpo, 0.16, 1, 0.3, 1"
"softAcDecel, 0.26, 0.26, 0.15, 1"
"md2, 0.4, 0, 0.2, 1"
];
animation = [
"windows, 1, 3, md3_decel, popin 60%"
"windowsIn, 1, 3, md3_decel, popin 60%"
"windowsOut, 1, 3, md3_accel, popin 60%"
"border, 1, 10, default"
"fade, 1, 3, md3_decel"
"layersIn, 1, 3, menu_decel, slide"
"layersOut, 1, 1.6, menu_accel"
"fadeLayersIn, 1, 2, menu_decel"
"fadeLayersOut, 1, 0.5, menu_accel"
"workspaces, 1, 7, menu_decel, slide"
"specialWorkspace, 1, 3, md3_decel, slidevert"
];
};
dwindle = {
pseudotile = true;
preserve_split = true;
};
master = {
new_status = "master";
};
misc = {
force_default_wallpaper = -1;
disable_hyprland_logo = true;
};
input = {
kb_layout = "us";
follow_mouse = 1;
sensitivity = 0;
force_no_accel = true;
repeat_delay = 250;
repeat_rate = 35;
touchpad = {
natural_scroll = false;
};
numlock_by_default = true;
};
gestures = {
workspace_swipe = false;
};
binds = {
workspace_back_and_forth = true;
scroll_event_delay = 0;
};
device = [
{
name = "epic-mouse-v1";
sensitivity = -0.5;
}
];
bind =
[
"$mod, Return, exec, $term"
"$mod, Q, killactive,"
"$mod, M, exit,"
"$mod, E, exec, $fileManager"
"$mod, V, togglefloating,"
"$mod, R, exec, $menu"
"$mod, P, pseudo,"
"$mod, B, togglesplit,"
"$mod, W, exec, $browser"
"$mod, H, movefocus, l"
"$mod, L, movefocus, r"
"$mod, K, movefocus, u"
"$mod, J, movefocus, d"
"$mod SHIFT, K, movewindow, u"
"$mod SHIFT, J, movewindow, d"
"$mod SHIFT, H, movewindow, l"
"$mod SHIFT, L, movewindow, r"
"$mod CTRL, K, resizeactive, 0 -50"
"$mod CTRL, J, resizeactive, 0 50"
"$mod CTRL, H, resizeactive, -50 0"
"$mod CTRL, L, resizeactive, 50 0"
"$mod, S, togglespecialworkspace, magic"
"$mod SHIFT, S, movetoworkspace, special:magic"
"$mod, mouse_down, workspace, e+1"
"$mod, mouse_up, workspace, e-1"
"$mod, F, fullscreen, 0"
"$mod, Space, exec, pkill rofi || rofi -show drun"
"$mod, C, exec, pkill rofi || rofi -show calc -modi calc -no-show-match -no-sort"
]
++ (
# workspaces
builtins.concatLists (builtins.genList (
i: let
ws = i + 1;
in [
"$mod, ${toString ws}, workspace, ${toString ws}"
"$mod SHIFT, ${toString ws}, movetoworkspace, ${toString ws}"
]
)
9)
)
++ [
"$mod, 0, workspace, 10"
"$mod, 0, movetoworkspace, 10"
];
bindm = [
"$mod, mouse:272, movewindow"
"$mod, mouse:273, resizewindow"
];
bindel = [
",XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
",XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
",XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
",XF86MonBrightnessUp, exec, brightnessctl s 10%+"
",XF86MonBrightnessDown, exec, brightnessctl s 10%-"
];
bindl = [
",XF86AudioNext, exec, playerctl next"
",XF86AudioPause, exec, playerctl play-pause"
",XF86AudioPlay, exec, playerctl play-pause"
",XF86AudioPrev, exec, playerctl previous"
];
env = [
"HYPRCURSOR_THEME, Bibata-Original-Classic"
"HYPRCURSOR_SIZE, 24"
];
};
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
};
}
+86
View File
@@ -0,0 +1,86 @@
{
myConfig,
pkgs,
...
}: {
imports = [
./config/binds.nix
./config/execs.nix
./config/rules.nix
./config/animation.nix
./config/decoration.nix
./config/env.nix
./config/colours.nix
];
home.file.".config/hypr/scripts/wsaction.fish" = {
source = builtins.toPath ./scripts/wsaction.fish;
executable = true;
};
wayland.windowManager.hyprland = {
enable = true;
xwayland.enable = true;
systemd.enable = true;
settings = {
"$mod" = "SUPER";
"$term" = "kitty --single-instance";
"$browser" = "firefox";
"$wsaction" = "fish -c ./scripts/wsaction.fish";
"$widget" = "qs -c caelestia";
monitor = myConfig.nixos.Hyprland.monitors;
general = {
gaps_in = 2;
gaps_out = 5;
border_size = 2;
# col.active_border = "#0DB7D4FF";
# col.inactive_border = "#31313600";
# col = {
# "inactive_border" = "rgba(595959aa)";
# "active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg";
# };
resize_on_border = false;
allow_tearing = false;
layout = "dwindle";
};
dwindle = {
pseudotile = true;
preserve_split = true;
};
master = {
new_status = "master";
};
misc = {
force_default_wallpaper = -1;
disable_hyprland_logo = true;
};
input = {
kb_layout = "us";
follow_mouse = 1;
sensitivity = 0;
force_no_accel = true;
repeat_delay = 250;
repeat_rate = 35;
touchpad = {
natural_scroll = false;
};
numlock_by_default = true;
};
gestures = {
workspace_swipe = false;
};
binds = {
workspace_back_and_forth = true;
scroll_event_delay = 0;
};
};
};
}
+21
View File
@@ -0,0 +1,21 @@
#!/usr/bin/env fish
if test "$argv[1]" = '-g'
set group
set -e $argv[1]
end
if test (count $argv) -ne 2
echo 'Wrong number of arguments. Usage: ./wsaction.fish [-g] <dispatcher> <workspace>'
exit 1
end
set -l active_ws (hyprctl activeworkspace -j | jq -r '.id')
if set -q group
# Move to group
hyprctl dispatch $argv[1] (math "($argv[2] - 1) * 10 + $active_ws % 10")
else
# Move to ws in group
hyprctl dispatch $argv[1] (math "floor(($active_ws - 1) / 10) * 10 + $argv[2]")
end
+8
View File
@@ -0,0 +1,8 @@
{pkgs, ...}: {
# home.packages = with pkgs; [
# hyprsunset
# ];
services.hyprsunset = {
enable = true;
};
}
@@ -1,17 +1,23 @@
{myConfig, ...}: {
{
myConfig,
pkgs,
...
}: {
programs.kitty = {
enable = true;
themeFile = "kanagawa";
# themeFile = "kanagawa";
themeFile = "Catppuccin-Mocha";
settings = {
confirm_os_window_close = 0;
window_padding_width = 10;
font_size = myConfig.general.terminal.Size;
font_family = myConfig.general.terminal.Font;
font_size = myConfig.general.Terminal.size;
font_family = myConfig.general.Terminal.font;
bold_font = "auto";
italic_font = "auto";
bold_italic_font = "auto";
shell = "${pkgs.${myConfig.general.Terminal.shell}}/bin/${myConfig.general.Terminal.shell}";
# optimization
input_delay = 0;
@@ -20,6 +26,6 @@
wayland_enable_ime = false;
allow_remote_control = true;
};
extraConfig = "include colors.conf";
# extraConfig = "include colors.conf";
};
}
+5
View File
@@ -0,0 +1,5 @@
{pkgs, ...}: {
home.packages = with pkgs; [
lutris
];
}
-23
View File
@@ -1,23 +0,0 @@
{...}: {
programs.mangohud = {
enable = true;
enableSessionWide = true;
settings = {
toggle_hud = "Shift_R+F12";
full = true;
gpu_temp = true;
cpu_temp = true;
fps_only = false;
blacklist = [
"pamac-manager"
"lact"
"ghb"
"bitwig-studio"
"ptyxis"
"yumex"
];
};
};
}
+88
View File
@@ -0,0 +1,88 @@
{myConfig, ...}: {
programs.mangohud = {
enable = true;
enableSessionWide = true;
settings = {
legacy_layout = false;
horizontal = true;
background_alpha = 0.6;
round_corners = 10;
background_color = "000000";
font_size = 24;
text_color = "FFFFFF";
position = "top-left";
toggle_hud = "Shift_R+F12";
no_display = true;
pci_dev = "0:03:00.0";
table_columns = 3;
gpu_text = "GPU";
gpu_stats = true;
gpu_load_change = true;
gpu_load_value = [50 90];
gpu_load_color = ["FFFFFF" "FFAA7F" "CC0000"];
gpu_temp = true;
gpu_power = true;
gpu_color = "2E9762";
cpu_text = "CPU";
cpu_stats = true;
cpu_load_change = true;
cpu_load_value = [50 90];
cpu_load_color = ["FFFFFF" "FFAA7F" "CC0000"];
cpu_temp = true;
cpu_power = true;
cpu_color = "2E97CB";
vram = true;
vram_color = "AD64C1";
ram = true;
ram_color = "C26693";
battery = true;
battery_color = "00FF00";
fps = true;
fps_metrics = ["avg" "0.01"];
engine_version = true;
engine_color = "EB5B5B";
arch = true;
frame_timing = true;
frametime_color = "FA8000";
fps_limit_method = "late";
toggle_fps_limit = "Shift_L+F1";
fps_limit = 0;
resolution = true;
refresh_rate = true;
# custom_text = [
# "-"
# "$(cat /home/kenji/.config/goverlay/distro)"
# "-"
# "$(uname -r)"
# "Session:"
# "$(echo $XDG_SESSION_TYPE)"
# ];
fps_color_change = true;
fps_color = ["B22222" "FDFD09" "39F900"];
fps_value = [30 60];
time = true;
output_folder = "/home/${myConfig.essentials.Username}/.mangohud/";
log_duration = 30;
autostart_log = false;
log_interval = 100;
toggle_logging = "Shift_L+F2";
blacklist = [
"pamac-manager"
"lact"
"ghb"
"bitwig-studio"
"ptyxis"
"yumex"
];
};
};
}
+4 -5
View File
@@ -1,11 +1,10 @@
{
pkgs,
inputs,
system,
pkgs,
...
}: {
imports = [inputs.matugen.nixosModules.default];
home.file.".config/matugen/config.toml" = {
source = builtins.toPath ./custom/config.toml;
};
environment.systemPackages = with pkgs; [
inputs.matugen.packages.${system}.default
];
}
+10
View File
@@ -0,0 +1,10 @@
{
pkgs,
inputs,
system,
...
}: {
home.file.".config/matugen/config.toml" = {
source = builtins.toPath ./custom/config.toml;
};
}
+57
View File
@@ -0,0 +1,57 @@
# /etc/nixos/configuration.nix
{
config,
pkgs,
lib,
fetchurl,
...
}: let
moondeckBuddyWrapped = pkgs.appimageTools.wrapType2 {
pname = "moondeck-buddy";
version = "1.8.2";
src = pkgs.fetchurl {
url = "https://github.com/FrogTheFrog/moondeck-buddy/releases/download/v1.8.2/MoonDeckBuddy-1.8.2-x86_64.AppImage";
hash = "sha256-D+9XIi3pIwaAq22DGHWAUqKub778qHQSjCU0aIjXmYY="; # Don't forget to update this!
};
extraPkgs = pkgs:
with pkgs; [
# Your extraPkgs here
];
desktopItems = [
(pkgs.makeDesktopItem {
name = "Moondeck Buddy";
exec = "moondeck-buddy";
icon = "applications-other";
comment = "A Sunshine/Moondeck Buddy.";
categories = ["Utility" "Productivity"];
})
];
meta = with lib; {
description = "Moondeck Buddy is an companion app for NVIDIA Sunshine/Moonlight.";
homepage = "https://github.com/FrogTheFrog/moondeck-buddy";
license = licenses.gpl3Only;
platforms = platforms.linux;
mainProgram = "moondeck-buddy";
};
};
in {
environment.systemPackages = with pkgs; [
moondeckBuddyWrapped
];
programs.appimage.enable = true;
programs.appimage.binfmt = true;
# --- Firewall Configuration ---
networking.firewall.allowedTCPPorts = [
59999 # Allow Moondeck Buddy to listen on this port
];
# If Moondeck Buddy also needs UDP, uncomment and add it here:
# networking.firewall.allowedUDPPorts = [
# 59999
# ];
}
-12
View File
@@ -1,12 +0,0 @@
{
pkgs,
inputs,
...
}: let
nixovim = inputs.nixovim.packages.${pkgs.system}.default;
in {
home.packages = [
nixovim
pkgs.lazygit
];
}
+10
View File
@@ -0,0 +1,10 @@
{
pkgs,
inputs,
system,
...
}: {
home.packages = [
inputs.nixovim.packages.${system}.default
];
}
+13
View File
@@ -0,0 +1,13 @@
{
pkgs,
myConfig,
...
}: {
home.packages = with pkgs; [
protonup
];
home.sessionVariables = {
STEAM_EXTRA_COMPAT_TOOLS_PATHS = "/home/${myConfig.essentials.Username}/.steam/root/compatibilitytools.d";
};
}
+5
View File
@@ -0,0 +1,5 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
python313Full
];
}
+14
View File
@@ -1,2 +1,16 @@
{
inputs,
pkgs,
system,
...
}: {
environment.systemPackages = [
inputs.caelestia-shell.packages.${system}.caelestia-shell
inputs.caelestia-shell.packages.${system}.caelestia-cli
inputs.caelestia-shell.packages.${system}.beat-detector
];
environment.sessionVariables = {
# Set CAELESTIA_BD_PATH to the store path of beat-detector
CAELESTIA_BD_PATH = "${inputs.caelestia-shell.packages.${system}.beat-detector}/bin/beat_detector";
};
}
+48
View File
@@ -0,0 +1,48 @@
{
pkgs,
inputs,
system,
...
}: let
caelestia-shell = pkgs.fetchFromGitHub {
owner = "caelestia-dots";
repo = "shell";
rev = "main";
sha256 = "sha256-FHPCSy/Fd9hIpFA2BxhTkbwBtY9vtvsEUYC3+ZX6zNQ=";
};
in {
imports = [
];
home.packages = with pkgs; [
inputs.quickshell.packages.${system}.default
wl-screenrec
libnotify
grim
foot
hyprpicker
heroic-unwrapped
qalculate-qt
fuzzel
inotify-tools
app2unit
fish
jq
fd
cliphist
(pkgs.python3.withPackages (python-pkgs:
with python-pkgs; [
aubio
pyaudio
numpy
]))
cava
bluez
ddcutil
brightnessctl
curl
material-symbols
];
home.file.".config/quickshell/caelestia" = {
source = caelestia-shell;
};
}
+5
View File
@@ -0,0 +1,5 @@
{pkgs, ...}: {
home.packages = with pkgs; [
solaar
];
}
+24
View File
@@ -0,0 +1,24 @@
{
pkgs,
myConfig,
...
}: {
environment.systemPackages = with pkgs; [
steam-run
];
programs.appimage.enable = true;
programs.appimage.binfmt = true;
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
gamescopeSession.enable = true;
extraCompatPackages = with pkgs; [proton-ge-bin];
extraPackages = with pkgs; [
mangohud
gamescope-wsi
];
};
programs.gamemode.enable = true;
}
+35
View File
@@ -0,0 +1,35 @@
{pkgs, ...}: {
xdg.desktopEntries = {
steam = {
name = "Steam";
genericName = "Game Platform";
comment = "Play and discuss games.";
# exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam %U"; # The standard command to launch Steam
exec = "${pkgs.steam}/bin/steam %U"; # The standard command to launch Steam
terminal = false;
icon = "steam"; # Assumes the 'steam' icon is available in your icon theme
type = "Application";
categories = ["Game" "Network"];
mimeType = [
"x-scheme-handler/steam" # For handling steam:// links
];
actions = {
BigPicture = {
name = "Big Picture Mode";
# exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam steam://open/bigpicture";
exec = "${pkgs.steam}/bin/steam steam://open/bigpicture";
};
Store = {
name = "Store";
# exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam steam://store";
exec = "${pkgs.steam}/bin/steam steam://open/bigpicture";
};
Library = {
name = "Library";
# exec = "${pkgs.mangohud}/bin/mangohud ${pkgs.steam}/bin/steam steam://library";
exec = "${pkgs.steam}/bin/steam steam://open/bigpicture";
};
};
};
};
}
+31
View File
@@ -0,0 +1,31 @@
{
inputs,
pkgs,
myConfig,
...
}: {
imports = [
inputs.jovian.nixosModules.default
];
# environment.systemPackages = with pkgs; [inputs.jovian.packages.${system}.default];
jovian.steam.enable = true;
jovian.steam.autoStart = true;
jovian.steam.desktopSession = "hyprland";
jovian.steam.user = "${myConfig.essentials.Username}";
jovian.hardware.has.amd.gpu = true;
jovian.decky-loader.enable = true;
jovian.decky-loader.user = "kenji";
# jovian.steamos.enableBluetoothConfig = true;
# jovian.steamos.enableMesaPatches = true;
jovian.steamos.useSteamOSConfig = true;
# jovian.devices.steamdeck.enableControllerUdevRules = true;
hardware = {
xone.enable = true;
};
programs.nix-ld = {
enable = true;
libraries = pkgs.steam-run.args.multiPkgs pkgs;
};
}
+57
View File
@@ -0,0 +1,57 @@
{pkgs, ...}: let
mangoConfigList = ["cpu_temp" "gpu_temp" "ram" "vram"];
mangoConfigStr = builtins.concatStringsSep "," mangoConfigList;
gamescopeArgsList = [
"--adaptive-sync"
"--hdr-enabled"
"--mangoapp"
"--rt"
"--steam"
];
gamescopeArgsStr = builtins.concatStringsSep " " gamescopeArgsList;
steamArgsList = [
"-pipewire-dmabuf"
"-tenfoot"
];
steamArgsStr = builtins.concatStringsSep " " steamArgsList;
myGamescopeSteamScript = pkgs.writeShellApplication {
name = "start-gamescope-steam";
runtimeInputs = [
pkgs.gamescope
pkgs.steam
pkgs.mangohud
];
text = ''
#!/usr/bin/env bash
set -xeuo pipefail
export MANGOHUD=1
export MANGOHUD_CONFIG="${mangoConfigStr}"
exec ${pkgs.gamescope}/bin/gamescope ${gamescopeArgsStr} -- ${pkgs.steam}/bin/steam ${steamArgsStr}
'';
};
in {
programs = {
gamescope = {
enable = true;
capSysNice = true;
};
steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
gamescopeSession.enable = true;
};
};
hardware.xone.enable = true;
environment.loginShellInit = ''
[[ "$(tty)" = "/dev/tty1" ]] && ${myGamescopeSteamScript}/bin/start-gamescope-steam
'';
}
+6
View File
@@ -0,0 +1,6 @@
{
services.udev.extraRules = ''
SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="0616", ATTR{power/wakeup}="enabled"
'';
}
+8
View File
@@ -0,0 +1,8 @@
{
programs.zoxide = {
enable = true;
enableFishIntegration = true;
enableZshIntegration = true;
enableBashIntegration = true;
};
}
@@ -3,17 +3,13 @@
myConfig,
...
}: {
home.packages = with pkgs; [
zoxide
];
programs.zsh.enable = true;
programs.zoxide.enable = true;
programs.zsh = {
enableCompletion = false;
syntaxHighlighting.enable = false;
shellAliases = myConfig.general.terminal.Aliases;
shellAliases = myConfig.general.Terminal.aliases;
history.size = 10000;
antidote = {
enable = true;
-11
View File
@@ -1,11 +0,0 @@
keys:
- &admin_kenji age19pf5unuk3hcap0vrrlqr9lkh5eg24aw7z3skf0kverpjdqsltdxsdx88r8
creation_rules:
- path_regex: secrets/[^/]+\.(yaml|json|env|ini)$
key_groups:
age:
- *admin_kenji
- path_regex: secrets/azmidi/[^/]+\.(yaml|json|env|ini)$
key_groups:
age:
- *admin_kenji
-1
View File
@@ -1 +0,0 @@
abcd: hello-world
-14
View File
@@ -1,14 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
glxinfo
vulkan-tools
lact
];
systemd.packages = with pkgs; [
lact
];
systemd.services.lactd = {
enable = true;
wantedBy = ["multi-user.target"];
};
}
-15
View File
@@ -1,15 +0,0 @@
{
programs.appimage = {
enable = true;
binfmt = true;
# If moondeck-buddy.AppImage requires specific libraries not included by default
# you might need to add them here. For example:
# package = pkgs.appimage-run.override {
# extraPkgs = pkgs: with pkgs; [
# # Add any missing libraries here, e.g.,
# # libthai
# # qt5.full
# ];
# };
};
}
-14
View File
@@ -1,14 +0,0 @@
{...}: {
boot.loader = {
systemd-boot = {
enable = false;
};
efi = {
canTouchEfiVariables = true;
};
grub = {
enable = true;
device = "nodev";
};
};
}
-107
View File
@@ -1,107 +0,0 @@
{
config,
pkgs,
...
}: let
lock-false = {
Value = false;
Status = "locked";
};
lock-true = {
Value = true;
Status = "locked";
};
in {
programs = {
firefox = {
enable = true;
languagePacks = ["en-US"];
/*
---- POLICIES ----
*/
# Check about:policies#documentation for options.
policies = {
DisableTelemetry = true;
DisableFirefoxStudies = true;
EnableTrackingProtection = {
Value = true;
Locked = true;
Cryptomining = true;
Fingerprinting = true;
};
DisablePocket = true;
DisableFirefoxAccounts = true;
DisableAccounts = true;
DisableFirefoxScreenshots = true;
OverrideFirstRunPage = "";
OverridePostUpdatePage = "";
DontCheckDefaultBrowser = true;
DisplayBookmarksToolbar = "never"; # alternatives: "always" or "newtab"
DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on"
SearchBar = "unified"; # alternative: "separate"
/*
---- EXTENSIONS ----
*/
# Check about:support for extension/add-on ID strings.
# Valid strings for installation_mode are "allowed", "blocked",
# "force_installed" and "normal_installed".
ExtensionSettings = {
"*".installation_mode = "blocked"; # blocks all addons except the ones specified below
# uBlock Origin:
"uBlock0@raymondhill.net" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
installation_mode = "force_installed";
};
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
install_url = "https://addons.mozilla.org/firefox/downloads/file/4493940/bitwarden_password_manager-2025.5.0.xpi";
installation_mode = "force_installed";
};
"tridactyl.vim@cmcaine.co.uk" = {
install_url = "https://addons.mozilla.org/firefox/downloads/file/4405615/tridactyl_vim-1.24.2.xpi";
installation_mode = "force_installed";
};
# Privacy Badger:
# "jid1-MnnxcxisBPnSXQ@jetpack" = {
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi";
# installation_mode = "force_installed";
# };
# 1Password:
# "{d634138d-c276-4fc8-924b-40a0ea21d284}" = {
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/1password-x-password-manager/latest.xpi";
# installation_mode = "force_installed";
};
};
/*
---- PREFERENCES ----
*/
# Check about:config for options.
preferences = {
# "browser.contentblocking.category" = {
# Value = "strict";
# Status = "locked";
# };
"browser.contentblocking.category" = "strict";
"extensions.pocket.enabled" = false;
"extensions.screenshots.disabled" = true;
"browser.topsites.contile.enabled" = false;
"browser.formfill.enable" = false;
"browser.search.suggest.enabled" = false;
"browser.search.suggest.enabled.private" = false;
"browser.urlbar.suggest.searches" = false;
"browser.urlbar.showSearchSuggestionsFirst" = false;
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
"browser.newtabpage.activity-stream.feeds.snippets" = false;
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false;
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false;
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = false;
"browser.newtabpage.activity-stream.showSponsored" = false;
"browser.newtabpage.activity-stream.system.showSponsored" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
};
};
};
}
-8
View File
@@ -1,8 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
python3Full
python3Packages.build
python3Packages.pip
python3Packages.installer
];
}

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