Compare commits
462 Commits
04f53b9771
...
2d1b037c8f
| Author | SHA1 | Date | |
|---|---|---|---|
| 2d1b037c8f | |||
| 5c9b5f6ad8 | |||
| 33d61fdfd6 | |||
| da8c497726 | |||
| 49e681dcc5 | |||
| 034b58867f | |||
| 9ede7c3d0f | |||
| 58eda79cb3 | |||
| 6893d041d9 | |||
| 813a6e0735 | |||
| 6ce2a621a3 | |||
| a992456fb3 | |||
| 56cfb13581 | |||
| b9ebff3a6d | |||
| 9780dcb02c | |||
| ec859c624e | |||
| 9fdbd13b13 | |||
| 35c0de7d74 | |||
| cb733ff595 | |||
| 9271983982 | |||
| 3a3fb6cb0f | |||
| 5bb05d3299 | |||
| b7f06dd777 | |||
| a122beac9c | |||
| 719a4978dd | |||
| dafe0e5fbe | |||
| 2abfcd689a | |||
| 339cc5db44 | |||
| d5c9e2f1c0 | |||
| 7fca8de333 | |||
| 724f7ab05f | |||
| 0e6073e088 | |||
| 7d7f99f9a9 | |||
| dddbba83ed | |||
| 540cced1e6 | |||
| 2f8f61e553 | |||
| 2e75f42767 | |||
| 2835cae171 | |||
| 608ecd89ed | |||
| c7db69c486 | |||
| f2d26e0466 | |||
| c043320dca | |||
| cbdbc840e9 | |||
| 242d9b74b7 | |||
| 9469ab3086 | |||
| 4fa73c557e | |||
| f5b06344e4 | |||
| 7dbffbbad7 | |||
| 7ff2139aab | |||
| 77ab1e8dda | |||
| 41ea0a3bc4 | |||
| c7ac7f0206 | |||
| e4ed70488f | |||
| 490cc8c64a | |||
| e864090847 | |||
| 10b17ac6a2 | |||
| 3e982c1a02 | |||
| ed800afe70 | |||
| 5c2529221f | |||
| 6a6ca517f3 | |||
| a516f15f7d | |||
| 3e1bd36e11 | |||
| fd67b53b56 | |||
| 5aa904d794 | |||
| 4a453f0f41 | |||
| 54a139e0d1 | |||
| 97eb633bb8 | |||
| 91f88124ef | |||
| a1f28923f6 | |||
| ff98427c7d | |||
| 55975d831c | |||
| c0cca70e84 | |||
| 03701e7e98 | |||
| 182b1293d7 | |||
| 874cc713d6 | |||
| 8e41bf4102 | |||
| d24d8e2d78 | |||
| 44c970ebc0 | |||
| f7cc09aae6 | |||
| b17940c2b7 | |||
| 798b9fa479 | |||
| 98ec809579 | |||
| fcf62b5f89 | |||
| 12ad7e864b | |||
| 96adaef9be | |||
| 7f9705a6c4 | |||
| 2225591ff9 | |||
| c846c057dd | |||
| 118db49b79 | |||
| b348df135b | |||
| af68d56608 | |||
| 79dbf06ce6 | |||
| c6500eb926 | |||
| fc18a6be46 | |||
| 6b5b1d1873 | |||
| 8dca28011f | |||
| 852b6af30f | |||
| 78d632f496 | |||
| f7eb867af7 | |||
| eed50b8b94 | |||
| e689a2258e | |||
| 244bba45d2 | |||
| 487736ed17 | |||
| ad772ac390 | |||
| d927f6af36 | |||
| 2c87535484 | |||
| 7bcc092658 | |||
| 8557848bf0 | |||
| 46bc5ff418 | |||
| 98d2356e93 | |||
| 4ba825b1ee | |||
| 42f5cc022c | |||
| 9719ba736c | |||
| 0c29288800 | |||
| 0caef8d9bc | |||
| b64db79a2e | |||
| 5bc6ea37d1 | |||
| 7f25564f08 | |||
| ca46aef4d8 | |||
| 2b03eb2a77 | |||
| 0e2ac0bb98 | |||
| 683a1428c3 | |||
| 9effb95662 | |||
| 061c233fd1 | |||
| bf2ef40312 | |||
| 456a4559e8 | |||
| 7f0702c165 | |||
| 302f627cf7 | |||
| c507257d40 | |||
| 14815244c1 | |||
| d12c22aed7 | |||
| 9c4083e1de | |||
| 95eb6435e9 | |||
| 27897f6304 | |||
| c177ec7443 | |||
| fdb90549df | |||
| a83374ff55 | |||
| 401b8ef4e2 | |||
| 37e192ec1f | |||
| d4de54098b | |||
| e007ee8ce3 | |||
| 4dd968e496 | |||
| a5c71cba24 | |||
| 3f854bebd1 | |||
| 9a4efaf7c3 | |||
| 38828c78fd | |||
| 303acc300b | |||
| a689cf1071 | |||
| 92b0460b86 | |||
| 60c5a13d01 | |||
| fe973acc15 | |||
| 3d547145dc | |||
| 5e08874960 | |||
| 91d1ffeede | |||
| 4e7557b044 | |||
| c39605a9e5 | |||
| 81837f0972 | |||
| d6a220751c | |||
| 0397e636cb | |||
| a68570bda0 | |||
| 837642d104 | |||
| ab999378f9 | |||
| 0d9cb6ffff | |||
| 746739e019 | |||
| 8cb4a5ccd8 | |||
| 488ef942a8 | |||
| 6ff158f90a | |||
| e92ccc465c | |||
| 76dc773103 | |||
| a2438b624e | |||
| bef6d407b6 | |||
| 8f85db45d5 | |||
| dc67b83015 | |||
| 139f74ddce | |||
| 0acd760fb4 | |||
| c576e7428d | |||
| cc1af45d2e | |||
| 5aa8ee8b66 | |||
| b745f1008d | |||
| 7b1182cbb7 | |||
| 8ab9d28526 | |||
| 73284fa1da | |||
| 79a9cd8aa1 | |||
| 63c2340e20 | |||
| 7cabf4ce3a | |||
| 9af2c54b12 | |||
| c05e443188 | |||
| 4d38de701b | |||
| b831eba956 | |||
| 8519b9fc0a | |||
| 886cb94209 | |||
| 64b672fae6 | |||
| b2e4957e50 | |||
| 83c432d1b5 | |||
| f548d02e16 | |||
| 269770e19c | |||
| 1a2912f23c | |||
| ef3f25a576 | |||
| 9a36712a0b | |||
| 1de476a559 | |||
| 1dbc9d1778 | |||
| 477394f3dd | |||
| 6c4c1292f1 | |||
| a90a308176 | |||
| 7bce869f36 | |||
| be88061b3d | |||
| b826ce7e69 | |||
| 463489423b | |||
| 59f416edca | |||
| 7b1748fd19 | |||
| 6611e2d3b0 | |||
| 4f013b8746 | |||
| 08a396f9d8 | |||
| 797dcfac1e | |||
| c36347555d | |||
| 0708d03012 | |||
| 426307ee74 | |||
| 04722ee2c9 | |||
| 1b80d46e37 | |||
| 8a7070c89e | |||
| 70a0f179e6 | |||
| 8f165d0895 | |||
| 7412e29869 | |||
| a896a2be0c | |||
| 9a2aef92c2 | |||
| 79e30ff83a | |||
| 129148d8cb | |||
| 4429c2a0ff | |||
| 128c7f7696 | |||
| 1a4d576190 | |||
| d750172b53 | |||
| ebf0ba2a18 | |||
| ed2bdeda12 | |||
| 727c079c9c | |||
| a572651179 | |||
| b6f0907c96 | |||
| 11d3c0e27c | |||
| 9fc5f6649f | |||
| f655beb95b | |||
| 54c6191395 | |||
| fbce24f4c4 | |||
| 085766dc1d | |||
| ce5a198e12 | |||
| ff1bf01db4 | |||
| d269af8842 | |||
| f69c15d4f6 | |||
| 2018addb7d | |||
| 25a94b0bed | |||
| a21942793c | |||
| 07f3d6521a | |||
| 22c9959dee | |||
| fee0cd08fe | |||
| 8c2a1f7fb9 | |||
| 508b8b2f31 | |||
| 68bda34aa8 | |||
| b5827d7c01 | |||
| 52be723c3c | |||
| e2cd9bad32 | |||
| af5b82d618 | |||
| c491ded3e7 | |||
| a8020af0c3 | |||
| 5b11565d14 | |||
| b2607a81f0 | |||
| e84f436614 | |||
| 89bad3ddfc | |||
| dd73c359b8 | |||
| 989e3479e9 | |||
| c182cdfb8e | |||
| fefd65195b | |||
| 069d51e2a2 | |||
| 65bbf56c08 | |||
| e88b166f34 | |||
| 706ad1814f | |||
| 4367ed2113 | |||
| b74b744003 | |||
| 3590e373f8 | |||
| ca93efd90d | |||
| 134055a581 | |||
| 810d6b3d89 | |||
| 85ba95190e | |||
| 4ab5ebbd01 | |||
| fb85c8488e | |||
| ce94a9e5f9 | |||
| 71e13cd2c1 | |||
| 6c11119d4a | |||
| 5ff65b7dd5 | |||
| 8d7f9d0e4b | |||
| b06b8cfb67 | |||
| 30647b07a1 | |||
| 52ab427dad | |||
| 0e87600a7b | |||
| cf0f2330db | |||
| 94f9ef171a | |||
| 212e2a69a1 | |||
| fb2e458486 | |||
| 13f14c7233 | |||
| ecc16458d0 | |||
| 7c00ab60eb | |||
| dfa4d04de3 | |||
| 370d29b406 | |||
| ee3a59d523 | |||
| 516bd3cc25 | |||
| e0d594ed67 | |||
| 469861ebeb | |||
| a243d340c1 | |||
| e49ec28de7 | |||
| c1fafbf498 | |||
| 4ec70a34c6 | |||
| 39449e27f5 | |||
| 1c70bff5a3 | |||
| 10e16a0760 | |||
| 742f7d37bd | |||
| 2c1331a82a | |||
| a43bd482e4 | |||
| 365165e7c4 | |||
| eb80c083f6 | |||
| c2831c74b6 | |||
| 76ef941b6f | |||
| 9f0684599f | |||
| 7b7e41ccac | |||
| a1f74526fb | |||
| aa8cf420b3 | |||
| e0687d6138 | |||
| 1a1e4d93fc | |||
| cb64d5e361 | |||
| 865c46e531 | |||
| 2ff9860af2 | |||
| 8def2ff498 | |||
| 4dd516851d | |||
| 822dba545e | |||
| ae112fa549 | |||
| 676711f404 | |||
| fee7d2e479 | |||
| 4bab8cb246 | |||
| 101cf08c49 | |||
| a3ccc4708a | |||
| 175787dcbe | |||
| 15d7ca3a47 | |||
| cac4925801 | |||
| 7ac16c0920 | |||
| 85c568ca11 | |||
| cfe094ff78 | |||
| 178099a9a7 | |||
| 3c6787854d | |||
| 3a13a11dff | |||
| 78a0949eec | |||
| f3c196d7a6 | |||
| 5ca5a1f6a6 | |||
| 9f7ff6a527 | |||
| 99b055eef4 | |||
| ce02cdeffe | |||
| 81f8478a02 | |||
| 1aba52161a | |||
| b1502de18c | |||
| 8337587d85 | |||
| 3c5f860c52 | |||
| 37ee40a1b4 | |||
| c210b81aa4 | |||
| a20fa2f9fa | |||
| 6658e16336 | |||
| 0b97a58dc6 | |||
| c0f7314d7c | |||
| 4a63265319 | |||
| a1c77b5299 | |||
| 57ca834a8d | |||
| dab3279ef7 | |||
| 110703df2b | |||
| ec8c513524 | |||
| 264c568858 | |||
| 1ca787e7fa | |||
| 0180c7bb0f | |||
| 5b2c045c81 | |||
| 4d0cbd7718 | |||
| e0e0a397dc | |||
| c0a3b6de61 | |||
| c0a8179ebd | |||
| ce37d98824 | |||
| 8d178dbd90 | |||
| d7ba429c7c | |||
| 9a800a15b0 | |||
| 380ee152e6 | |||
| 59cb409549 | |||
| 688c30caef | |||
| 39fac9b6b6 | |||
| 64e1cef2aa | |||
| a09718640d | |||
| 7afa5fb4bb | |||
| 4c18bc3c53 | |||
| 93c0ce2f01 | |||
| a5c3d6799f | |||
| 05d31ac498 | |||
| a56012935c | |||
| bc9dfea4cf | |||
| 612b246018 | |||
| d2f65c5d03 | |||
| f7d263e464 | |||
| d5db543c8f | |||
| b2aa645b0b | |||
| 3793ce4dd2 | |||
| 92a282c813 | |||
| f82bee6b0c | |||
| 29167ca81f | |||
| 3440697fc9 | |||
| c84511f28d | |||
| 07947dec8d | |||
| f2ef210caf | |||
| eb8309534b | |||
| d3665ec855 | |||
| be663d638f | |||
| 8f3bf6e7a7 | |||
| a87f3ec431 | |||
| 6822831dd6 | |||
| 651af1e23e | |||
| cd980eeda2 | |||
| e60a8d2fcc | |||
| ac71ab79b2 | |||
| 65349f4723 | |||
| 2cdcd47f9c | |||
| 0f6c6f3095 | |||
| 077788642d | |||
| e3807ff477 | |||
| e379a40132 | |||
| 3bd1fdb471 | |||
| d0c8d34076 | |||
| 3db3ddfc11 | |||
| 035e7bae5b | |||
| 5c26a2aba7 | |||
| 5c20ebaf96 | |||
| 2c8a011ffb | |||
| 85ace71da9 | |||
| 9e2427402f | |||
| 7c7fddc7ff | |||
| 9344211e89 | |||
| 7a8f2db33c | |||
| 97b85831f4 | |||
| 7e02a3a378 | |||
| 5efe880ba5 | |||
| ec89904c6c | |||
| 5c0a28caa6 | |||
| fda8ac3ec9 | |||
| 3210dafca8 | |||
| 4979823c4e | |||
| f06c37599a | |||
| 517ec29646 | |||
| d4d8093527 | |||
| f6d23daea2 | |||
| 7706fde88c | |||
| f60d2c24f1 | |||
| a7079b5d78 | |||
| a1c5a78e47 | |||
| 0d78c989fc | |||
| 0c717bd1e3 | |||
| ad771e919c | |||
| 79320391ce | |||
| 70d5bc9fe2 | |||
| 265765341c | |||
| dc8fd7b9d4 | |||
| ee29eba8fa | |||
| f634f0339a | |||
| c11daa100a | |||
| 9e5b51454a | |||
| c0ab15f573 |
@@ -0,0 +1,128 @@
|
||||
; thunar GtkAccelMap rc-file -*- scheme -*-
|
||||
; this file is an automated accelerator map dump
|
||||
;
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/8b0840406a9db6cc9e024618b73ff74d" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-type" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-last-modified" "")
|
||||
; (gtk_accel_path "<Actions>/Thunarwindow/menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut" "<Primary>x")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/file-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-tab" "<Primary>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab-alt" "<Primary><Shift>ISO_Left_Tab")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-window" "<Primary>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/clear-directory-specific-settings" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-window" "<Primary>q")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-parent" "<Alt>Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size-in-bytes" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab" "<Primary>Page_Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open" "<Primary>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-ascending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-split-view" "F3")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy-2" "<Primary>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete" "Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-configure-toolbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward" "<Alt>Right")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location-alt" "<Alt>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>KP_Subtract")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-descending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/b642744ba505349eb43f3232902f4a96" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-all-files" "<Primary>a")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/execute" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/properties" "<Alt>Return")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut-2" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-dtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab" "<Primary>Page_Down")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-templates" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste-2" "<Shift>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-filetype" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-all-windows" "<Primary><Shift>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-document" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/detach-tab" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/cancel-search" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt2" "<Primary>equal")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-hidden-count" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarShortcutsPane/sendto-shortcuts" "<Primary>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/undo" "<Primary>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/f08c8da7eedf52bf1705513340708bed" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/toggle-sort-order" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-entry" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste" "<Primary>v")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt1" "<Primary>KP_Add")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menubar" "<Primary>m")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back" "<Alt>Left")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-detailed-list" "<Primary>2")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore-show" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/sendto-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-display-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/go-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out" "<Primary>minus")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "<Primary><Shift>i")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-2" "Reload")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/bookmarks-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward-alt" "Forward")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-1" "F5")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-3" "<Shift>KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload" "<Primary>r")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/arrange-items-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/unselect-all-files" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-computer" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-image-preview" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-side-pane" "F9")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-icons" "<Primary>1")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-2" "<Shift>Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in" "<Primary>plus")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/rename" "F2")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location" "<Primary>l")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-compact-list" "<Primary>3")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/search" "<Primary>f")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-tab" "<Primary>t")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset" "<Primary>0")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents/help-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-tab" "<Primary><Shift>p")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-buttons" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt2" "Back")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/redo" "<Primary><Shift>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-window" "<Primary><Shift>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-statusbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-location" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/duplicate" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete-2" "KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt1" "BackSpace")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-folder" "<Primary><Shift>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-home" "<Alt>Home")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-focused-split-view-pane" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-hidden" "<Primary>h")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/set-default-app" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/empty-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/preferences" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-network" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-tree" "<Primary>e")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-system" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/search-alt" "Search")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab-alt" "<Primary>Tab")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/sendto-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/make-link" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset-alt" "<Primary>KP_0")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/about" "")
|
||||
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<actions>
|
||||
<action>
|
||||
<icon>utilities-terminal</icon>
|
||||
<name>Open Terminal Here</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1773690548549124-1</unique-id>
|
||||
<command>exo-open --working-directory %f --launch TerminalEmulator</command>
|
||||
<description>Example for a custom action</description>
|
||||
<range></range>
|
||||
<patterns>*</patterns>
|
||||
<startup-notify/>
|
||||
<directories/>
|
||||
</action>
|
||||
</actions>
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/animations.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/behaviour.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/bindings.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/exec-once.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/hypridle.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/hyprland.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/hyprlock.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/layer-rules.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/layout.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/monitor-rules.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/theming.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/window-rules.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/hypr/workspace-rules.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/kitty/Catppuccin-Mocha.conf
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/kitty/kitty.conf
|
||||
@@ -0,0 +1,279 @@
|
||||
"$schema" = 'https://starship.rs/config-schema.json'
|
||||
|
||||
format = """
|
||||
[](red)\
|
||||
$os\
|
||||
$username\
|
||||
[](bg:peach fg:red)\
|
||||
$directory\
|
||||
[](bg:yellow fg:peach)\
|
||||
$git_branch\
|
||||
$git_status\
|
||||
[](fg:yellow bg:green)\
|
||||
$c\
|
||||
$rust\
|
||||
$golang\
|
||||
$nodejs\
|
||||
$php\
|
||||
$java\
|
||||
$kotlin\
|
||||
$haskell\
|
||||
$python\
|
||||
[](fg:green bg:sapphire)\
|
||||
$conda\
|
||||
[](fg:sapphire bg:lavender)\
|
||||
$time\
|
||||
[ ](fg:lavender)\
|
||||
$cmd_duration\
|
||||
$line_break\
|
||||
$character"""
|
||||
|
||||
palette = 'catppuccin_mocha'
|
||||
|
||||
[os]
|
||||
disabled = false
|
||||
style = "bg:red fg:crust"
|
||||
|
||||
[os.symbols]
|
||||
Windows = ""
|
||||
Ubuntu = ""
|
||||
SUSE = ""
|
||||
Raspbian = ""
|
||||
Mint = ""
|
||||
Macos = ""
|
||||
Manjaro = ""
|
||||
Linux = ""
|
||||
Gentoo = ""
|
||||
Fedora = ""
|
||||
Alpine = ""
|
||||
Amazon = ""
|
||||
Android = ""
|
||||
AOSC = ""
|
||||
Arch = ""
|
||||
Artix = ""
|
||||
CentOS = ""
|
||||
Debian = ""
|
||||
Redhat = ""
|
||||
RedHatEnterprise = ""
|
||||
|
||||
[username]
|
||||
show_always = true
|
||||
style_user = "bg:red fg:crust"
|
||||
style_root = "bg:red fg:crust"
|
||||
format = '[ $user]($style)'
|
||||
|
||||
[directory]
|
||||
style = "bg:peach fg:crust"
|
||||
format = "[ $path ]($style)"
|
||||
truncation_length = 3
|
||||
truncation_symbol = "…/"
|
||||
|
||||
[directory.substitutions]
|
||||
"Documents" = " "
|
||||
"Downloads" = " "
|
||||
"Music" = " "
|
||||
"Pictures" = " "
|
||||
"Developer" = " "
|
||||
|
||||
[git_branch]
|
||||
symbol = ""
|
||||
style = "bg:yellow"
|
||||
format = '[[ $symbol $branch ](fg:crust bg:yellow)]($style)'
|
||||
|
||||
[git_status]
|
||||
style = "bg:yellow"
|
||||
format = '[[($all_status$ahead_behind )](fg:crust bg:yellow)]($style)'
|
||||
|
||||
[nodejs]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[c]
|
||||
symbol = " "
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[rust]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[golang]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[php]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[java]
|
||||
symbol = " "
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[kotlin]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[haskell]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[python]
|
||||
symbol = ""
|
||||
style = "bg:green"
|
||||
format = '[[ $symbol( $version)(\(#$virtualenv\)) ](fg:crust bg:green)]($style)'
|
||||
|
||||
[docker_context]
|
||||
symbol = ""
|
||||
style = "bg:sapphire"
|
||||
format = '[[ $symbol( $context) ](fg:crust bg:sapphire)]($style)'
|
||||
|
||||
[conda]
|
||||
symbol = " "
|
||||
style = "fg:crust bg:sapphire"
|
||||
format = '[$symbol$environment ]($style)'
|
||||
ignore_base = false
|
||||
|
||||
[time]
|
||||
disabled = false
|
||||
time_format = "%R"
|
||||
style = "bg:lavender"
|
||||
format = '[[ $time ](fg:crust bg:lavender)]($style)'
|
||||
|
||||
[line_break]
|
||||
disabled = false
|
||||
|
||||
[character]
|
||||
disabled = false
|
||||
success_symbol = '[❯](bold fg:green)'
|
||||
error_symbol = '[❯](bold fg:red)'
|
||||
vimcmd_symbol = '[❮](bold fg:green)'
|
||||
vimcmd_replace_one_symbol = '[❮](bold fg:lavender)'
|
||||
vimcmd_replace_symbol = '[❮](bold fg:lavender)'
|
||||
vimcmd_visual_symbol = '[❮](bold fg:yellow)'
|
||||
|
||||
[cmd_duration]
|
||||
show_milliseconds = true
|
||||
format = " in $duration "
|
||||
style = "bg:lavender"
|
||||
disabled = false
|
||||
show_notifications = true
|
||||
min_time_to_notify = 45000
|
||||
|
||||
[palettes.catppuccin_mocha]
|
||||
rosewater = "#f5e0dc"
|
||||
flamingo = "#f2cdcd"
|
||||
pink = "#f5c2e7"
|
||||
mauve = "#cba6f7"
|
||||
red = "#f38ba8"
|
||||
maroon = "#eba0ac"
|
||||
peach = "#fab387"
|
||||
yellow = "#f9e2af"
|
||||
green = "#a6e3a1"
|
||||
teal = "#94e2d5"
|
||||
sky = "#89dceb"
|
||||
sapphire = "#74c7ec"
|
||||
blue = "#89b4fa"
|
||||
lavender = "#b4befe"
|
||||
text = "#cdd6f4"
|
||||
subtext1 = "#bac2de"
|
||||
subtext0 = "#a6adc8"
|
||||
overlay2 = "#9399b2"
|
||||
overlay1 = "#7f849c"
|
||||
overlay0 = "#6c7086"
|
||||
surface2 = "#585b70"
|
||||
surface1 = "#45475a"
|
||||
surface0 = "#313244"
|
||||
base = "#1e1e2e"
|
||||
mantle = "#181825"
|
||||
crust = "#11111b"
|
||||
|
||||
[palettes.catppuccin_frappe]
|
||||
rosewater = "#f2d5cf"
|
||||
flamingo = "#eebebe"
|
||||
pink = "#f4b8e4"
|
||||
mauve = "#ca9ee6"
|
||||
red = "#e78284"
|
||||
maroon = "#ea999c"
|
||||
peach = "#ef9f76"
|
||||
yellow = "#e5c890"
|
||||
green = "#a6d189"
|
||||
teal = "#81c8be"
|
||||
sky = "#99d1db"
|
||||
sapphire = "#85c1dc"
|
||||
blue = "#8caaee"
|
||||
lavender = "#babbf1"
|
||||
text = "#c6d0f5"
|
||||
subtext1 = "#b5bfe2"
|
||||
subtext0 = "#a5adce"
|
||||
overlay2 = "#949cbb"
|
||||
overlay1 = "#838ba7"
|
||||
overlay0 = "#737994"
|
||||
surface2 = "#626880"
|
||||
surface1 = "#51576d"
|
||||
surface0 = "#414559"
|
||||
base = "#303446"
|
||||
mantle = "#292c3c"
|
||||
crust = "#232634"
|
||||
|
||||
[palettes.catppuccin_latte]
|
||||
rosewater = "#dc8a78"
|
||||
flamingo = "#dd7878"
|
||||
pink = "#ea76cb"
|
||||
mauve = "#8839ef"
|
||||
red = "#d20f39"
|
||||
maroon = "#e64553"
|
||||
peach = "#fe640b"
|
||||
yellow = "#df8e1d"
|
||||
green = "#40a02b"
|
||||
teal = "#179299"
|
||||
sky = "#04a5e5"
|
||||
sapphire = "#209fb5"
|
||||
blue = "#1e66f5"
|
||||
lavender = "#7287fd"
|
||||
text = "#4c4f69"
|
||||
subtext1 = "#5c5f77"
|
||||
subtext0 = "#6c6f85"
|
||||
overlay2 = "#7c7f93"
|
||||
overlay1 = "#8c8fa1"
|
||||
overlay0 = "#9ca0b0"
|
||||
surface2 = "#acb0be"
|
||||
surface1 = "#bcc0cc"
|
||||
surface0 = "#ccd0da"
|
||||
base = "#eff1f5"
|
||||
mantle = "#e6e9ef"
|
||||
crust = "#dce0e8"
|
||||
|
||||
[palettes.catppuccin_macchiato]
|
||||
rosewater = "#f4dbd6"
|
||||
flamingo = "#f0c6c6"
|
||||
pink = "#f5bde6"
|
||||
mauve = "#c6a0f6"
|
||||
red = "#ed8796"
|
||||
maroon = "#ee99a0"
|
||||
peach = "#f5a97f"
|
||||
yellow = "#eed49f"
|
||||
green = "#a6da95"
|
||||
teal = "#8bd5ca"
|
||||
sky = "#91d7e3"
|
||||
sapphire = "#7dc4e4"
|
||||
blue = "#8aadf4"
|
||||
lavender = "#b7bdf8"
|
||||
text = "#cad3f5"
|
||||
subtext1 = "#b8c0e0"
|
||||
subtext0 = "#a5adcb"
|
||||
overlay2 = "#939ab7"
|
||||
overlay1 = "#8087a2"
|
||||
overlay0 = "#6e738d"
|
||||
surface2 = "#5b6078"
|
||||
surface1 = "#494d64"
|
||||
surface0 = "#363a4f"
|
||||
base = "#24273a"
|
||||
mantle = "#1e2030"
|
||||
crust = "#181926"
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/stylix/palette.html
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/aavn5w35bw494vfycdw46d5pg14nf5g4-home-manager-files/.config/stylix/palette.json
|
||||
@@ -0,0 +1,116 @@
|
||||
# Walker UI layout/theme config (Catppuccin Mocha tuned)
|
||||
|
||||
theme = "frosted"
|
||||
debug = true
|
||||
|
||||
[ui]
|
||||
css = "home/henrov/themes/frosted/walker.css"
|
||||
|
||||
[ui.anchors]
|
||||
top = true
|
||||
left = true
|
||||
right = true
|
||||
bottom = false # don't stretch to full height; keeps it as a panel
|
||||
|
||||
[ui.window]
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
|
||||
[ui.window.box]
|
||||
h_align = "center"
|
||||
# Single source of truth for the main content width
|
||||
width = 520
|
||||
|
||||
[ui.window.box.margins]
|
||||
top = 140
|
||||
|
||||
[ui.window.box.bar]
|
||||
orientation = "horizontal"
|
||||
position = "end"
|
||||
|
||||
[ui.window.box.bar.entry]
|
||||
h_align = "fill"
|
||||
h_expand = true
|
||||
|
||||
[ui.window.box.bar.entry.icon]
|
||||
h_align = "center"
|
||||
h_expand = false
|
||||
pixel_size = 22
|
||||
theme = "" # leave empty to inherit your system icon theme (Papirus etc.)
|
||||
|
||||
# --- AI scroll area (match main width, reduce hardcoding) ---
|
||||
[ui.window.box.ai_scroll]
|
||||
name = "aiScroll"
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
min_width = 520
|
||||
width = 520
|
||||
max_height = 260
|
||||
height = 260
|
||||
|
||||
[ui.window.box.ai_scroll.margins]
|
||||
top = 10
|
||||
|
||||
[ui.window.box.ai_scroll.list]
|
||||
name = "aiList"
|
||||
orientation = "vertical"
|
||||
width = 520
|
||||
spacing = 10
|
||||
|
||||
[ui.window.box.ai_scroll.list.item]
|
||||
name = "aiItem"
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
x_align = 0
|
||||
y_align = 0
|
||||
wrap = true
|
||||
|
||||
# --- Main results list ---
|
||||
[ui.window.box.scroll.list]
|
||||
# Catppuccin Mocha accent (pick one):
|
||||
# - teal: #94e2d5
|
||||
# - blue: #89b4fa
|
||||
marker_color = "#89b4fa"
|
||||
max_height = 360
|
||||
min_width = 520
|
||||
max_width = 520
|
||||
width = 520
|
||||
|
||||
[ui.window.box.scroll.list.margins]
|
||||
top = 10
|
||||
|
||||
[ui.window.box.scroll.list.item.activation_label]
|
||||
h_align = "fill"
|
||||
v_align = "fill"
|
||||
width = 22
|
||||
x_align = 0.5
|
||||
y_align = 0.5
|
||||
|
||||
[ui.window.box.scroll.list.item.icon]
|
||||
pixel_size = 24
|
||||
theme = "" # inherit system icon theme
|
||||
|
||||
# --- Search row (icons + input) ---
|
||||
[ui.window.box.search.prompt]
|
||||
name = "prompt"
|
||||
icon = "edit-find"
|
||||
theme = ""
|
||||
pixel_size = 18
|
||||
h_align = "center"
|
||||
v_align = "center"
|
||||
|
||||
[ui.window.box.search.clear]
|
||||
name = "clear"
|
||||
icon = "edit-clear"
|
||||
theme = ""
|
||||
pixel_size = 18
|
||||
h_align = "center"
|
||||
v_align = "center"
|
||||
|
||||
[ui.window.box.search.input]
|
||||
h_align = "fill"
|
||||
h_expand = true
|
||||
icons = true
|
||||
|
||||
[ui.window.box.search.spinner]
|
||||
hide = true
|
||||
@@ -0,0 +1,162 @@
|
||||
/* AUTO GENERATED. DO NOT EDIT. CHANGES WILL BE OVERWRITTEN. */
|
||||
|
||||
@define-color foreground rgba(255, 255, 255, 0.8);
|
||||
@define-color background hsla(240, 12.7%, 13.9%, 0.98);
|
||||
@define-color color1 hsl(172, 100%, 25.3%);
|
||||
/* AUTO GENERATED. DO NOT EDIT. CHANGES WILL BE OVERWRITTEN. */
|
||||
|
||||
#window,
|
||||
#box,
|
||||
#aiScroll,
|
||||
#aiList,
|
||||
#search,
|
||||
#password,
|
||||
#input,
|
||||
#prompt,
|
||||
#clear,
|
||||
#typeahead,
|
||||
#list,
|
||||
child,
|
||||
scrollbar,
|
||||
slider,
|
||||
#item,
|
||||
#text,
|
||||
#label,
|
||||
#bar,
|
||||
#sub,
|
||||
#activationlabel {
|
||||
all: unset;
|
||||
}
|
||||
|
||||
#cfgerr {
|
||||
background: rgba(255, 0, 0, 0.4);
|
||||
margin-top: 20px;
|
||||
padding: 8px;
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
#window {
|
||||
color: @foreground;
|
||||
}
|
||||
|
||||
#box {
|
||||
border-radius: 2px;
|
||||
background: @background;
|
||||
padding: 32px;
|
||||
border: 1px solid lighter(@background);
|
||||
box-shadow:
|
||||
0 19px 38px rgba(0, 0, 0, 0.3),
|
||||
0 15px 12px rgba(0, 0, 0, 0.22);
|
||||
}
|
||||
|
||||
#search {
|
||||
box-shadow:
|
||||
0 1px 3px rgba(0, 0, 0, 0.1),
|
||||
0 1px 2px rgba(0, 0, 0, 0.22);
|
||||
background: lighter(@background);
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
#prompt {
|
||||
margin-left: 4px;
|
||||
margin-right: 12px;
|
||||
color: @foreground;
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
#clear {
|
||||
color: @foreground;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
#password,
|
||||
#input,
|
||||
#typeahead {
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
#input {
|
||||
background: none;
|
||||
}
|
||||
|
||||
#password {
|
||||
}
|
||||
|
||||
#spinner {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
#typeahead {
|
||||
color: @foreground;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
#input placeholder {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
#list {
|
||||
}
|
||||
|
||||
child {
|
||||
padding: 8px;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
child:selected,
|
||||
child:hover {
|
||||
background: alpha(@color1, 0.4);
|
||||
}
|
||||
|
||||
#item {
|
||||
}
|
||||
|
||||
#icon {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
#text {
|
||||
}
|
||||
|
||||
#label {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
#sub {
|
||||
opacity: 0.5;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
#activationlabel {
|
||||
}
|
||||
|
||||
#bar {
|
||||
}
|
||||
|
||||
.barentry {
|
||||
}
|
||||
|
||||
.activation #activationlabel {
|
||||
}
|
||||
|
||||
.activation #text,
|
||||
.activation #icon,
|
||||
.activation #search {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.aiItem {
|
||||
padding: 10px;
|
||||
border-radius: 2px;
|
||||
color: @foreground;
|
||||
background: @background;
|
||||
}
|
||||
|
||||
.aiItem.user {
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.aiItem.assistant {
|
||||
background: lighter(@background);
|
||||
}
|
||||
@@ -0,0 +1,185 @@
|
||||
/* Catppuccin Mocha Walker Theme — Frosted Glass */
|
||||
|
||||
@import "default.css";
|
||||
|
||||
/* --- Palette --- */
|
||||
/* glass layers: low alpha + slightly cool tint */
|
||||
@define-color base rgba(220, 230, 255, 0.15);
|
||||
@define-color mantle rgba(24, 24, 37, 0.55); /* was opaque */
|
||||
@define-color crust rgba(17, 17, 27, 0.80);
|
||||
|
||||
@define-color text #cdd6f4;
|
||||
@define-color subtext0 #a6adc8;
|
||||
@define-color subtext1 #bac2de;
|
||||
|
||||
/* use these as “edge lights” more than solid fills */
|
||||
@define-color surface0 rgba(49, 50, 68, 0.35);
|
||||
@define-color surface1 rgba(69, 71, 90, 0.40);
|
||||
@define-color surface2 rgba(88, 91, 112, 0.45);
|
||||
|
||||
@define-color overlay0 rgba(108, 112, 134, 0.70);
|
||||
@define-color overlay1 rgba(127, 132, 156, 0.85);
|
||||
@define-color overlay2 rgba(147, 153, 178, 0.90);
|
||||
|
||||
@define-color blue #89b4fa;
|
||||
@define-color lavender #b4befe;
|
||||
@define-color mauve #cba6f7;
|
||||
@define-color green #a6e3a1;
|
||||
@define-color red #f38ba8;
|
||||
@define-color peach #fab387;
|
||||
@define-color yellow #f9e2af;
|
||||
|
||||
/* --- Walker expected tokens --- */
|
||||
@define-color foreground @text;
|
||||
|
||||
/* very transparent base to let compositor blur show through */
|
||||
@define-color background: rgba(26, 26, 40, 0.75);
|
||||
|
||||
/* selection tint */
|
||||
@define-color color1 @blue;
|
||||
|
||||
/* --- Reset --- */
|
||||
#window,
|
||||
#box,
|
||||
#aiScroll,
|
||||
#aiList,
|
||||
#search,
|
||||
#password,
|
||||
#input,
|
||||
#prompt,
|
||||
#clear,
|
||||
#typeahead,
|
||||
#list,
|
||||
child,
|
||||
scrollbar,
|
||||
slider,
|
||||
#item,
|
||||
#text,
|
||||
#label,
|
||||
#bar,
|
||||
#sub,
|
||||
#activationlabel {
|
||||
all: unset;
|
||||
}
|
||||
|
||||
/* --- Error --- */
|
||||
#cfgerr {
|
||||
background: alpha(@red, 0.35);
|
||||
margin-top: 20px;
|
||||
padding: 10px;
|
||||
border-radius: 10px;
|
||||
border: 1px solid alpha(@red, 0.3);
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
/* --- Window --- */
|
||||
#window {
|
||||
color: @foreground;
|
||||
}
|
||||
|
||||
/* --- Main container (frosted glass card) --- */
|
||||
#box {
|
||||
border-radius: 18px;
|
||||
background: @background;
|
||||
|
||||
border: 1px solid alpha(@text, 0.08);
|
||||
|
||||
box-shadow:
|
||||
inset 0 1px 0 alpha(@text, 0.04),
|
||||
0 8px 18px alpha(@crust, 0.4);
|
||||
|
||||
padding: 28px;
|
||||
}
|
||||
|
||||
/* --- Search “pill” --- */
|
||||
#search {
|
||||
background: rgba(49, 50, 68, 0.22);
|
||||
padding: 10px 12px;
|
||||
border-radius: 14px;
|
||||
|
||||
border: 1px solid alpha(@text, 0.1);
|
||||
box-shadow:
|
||||
inset 0 1px 0 alpha(@text, 0.06),
|
||||
0 6px 16px alpha(@crust, 0.35);
|
||||
}
|
||||
|
||||
#prompt {
|
||||
margin-left: 6px;
|
||||
margin-right: 12px;
|
||||
color: alpha(@overlay1, 0.9);
|
||||
}
|
||||
|
||||
#clear {
|
||||
color: alpha(@overlay2, 0.9);
|
||||
}
|
||||
|
||||
/* --- Inputs --- */
|
||||
#password,
|
||||
#input,
|
||||
#typeahead {
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#input {
|
||||
background: none;
|
||||
}
|
||||
|
||||
#typeahead {
|
||||
color: alpha(@subtext1, 0.85);
|
||||
}
|
||||
|
||||
#input placeholder {
|
||||
color: alpha(@overlay0, 0.75);
|
||||
}
|
||||
|
||||
/* --- List items --- */
|
||||
child {
|
||||
padding: 10px 12px;
|
||||
border-radius: 14px;
|
||||
background: @background;
|
||||
border: 1px solid alpha(@text, 0.05);
|
||||
}
|
||||
|
||||
/* Hover / Selection: brighter glass + tinted glow */
|
||||
child:selected,
|
||||
child:hover {
|
||||
background: rgba(22, 22, 34, 0.8);
|
||||
border: 1px solid alpha(@text, 0.08);
|
||||
|
||||
box-shadow:
|
||||
inset 0 1px 0 alpha(@text, 0.05),
|
||||
0 6px 14px alpha(@crust, 0.35);
|
||||
}
|
||||
|
||||
/* --- Text --- */
|
||||
#label {
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
#sub {
|
||||
color: alpha(@subtext0, 0.85);
|
||||
font-size: 0.85em;
|
||||
}
|
||||
|
||||
/* --- Activation --- */
|
||||
.activation #text,
|
||||
.activation #icon,
|
||||
.activation #search {
|
||||
opacity: 0.55;
|
||||
}
|
||||
|
||||
/* --- AI Panel --- */
|
||||
.aiItem {
|
||||
padding: 12px;
|
||||
border-radius: 14px;
|
||||
color: @foreground;
|
||||
|
||||
/* glass tile */
|
||||
background: rgba(24, 24, 37, 0.3);
|
||||
border: 1px solid rgba(255, 255, 255, 0.05);
|
||||
box-shadow: inset 0 1px 0 alpha(@text, 0.05);
|
||||
}
|
||||
|
||||
.aiItem.assistant {
|
||||
background: rgba(49, 50, 68, 0.22);
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/5dnlin4x7n2y5k4zi4wavyy519s2yq6s-waybar-config
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/32wq1s4gch0r44g105azxbbnklcm12ii-waybar-style
|
||||
@@ -0,0 +1,26 @@
|
||||
// Zed settings
|
||||
//
|
||||
// For information on how to configure Zed, see the Zed
|
||||
// documentation: https://zed.dev/docs/configuring-zed
|
||||
//
|
||||
// To see all of Zed's default settings without changing your
|
||||
// custom settings, run `zed: open default settings` from the
|
||||
// command palette (cmd-shift-p / ctrl-shift-p)
|
||||
{
|
||||
"agent": {
|
||||
"default_model": {
|
||||
"provider": "ollama",
|
||||
"model": "codellama:34b",
|
||||
"enable_thinking": false
|
||||
},
|
||||
"favorite_models": [],
|
||||
"model_parameters": []
|
||||
},
|
||||
"ui_font_size": 16,
|
||||
"buffer_font_size": 15,
|
||||
"theme": {
|
||||
"mode": "dark",
|
||||
"light": "One Light",
|
||||
"dark": "Catppuccin Mocha",
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/hqg1qv89c89x5z6hyafbbyc0ncy0jbqs-home-manager-files/nixos_conf/wallpaperstuff/pictures/5.jpg
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/hqg1qv89c89x5z6hyafbbyc0ncy0jbqs-home-manager-files/nixos_conf/wallpaperstuff/pictures/6.jpg
|
||||
|
After Width: | Height: | Size: 94 KiB |
@@ -0,0 +1 @@
|
||||
/nix/store/hqg1qv89c89x5z6hyafbbyc0ncy0jbqs-home-manager-files/nixos_conf/wallpaperstuff/pictures/7.jpg
|
||||
|
After Width: | Height: | Size: 126 KiB |
|
After Width: | Height: | Size: 290 KiB |
|
After Width: | Height: | Size: 306 KiB |
|
After Width: | Height: | Size: 391 KiB |
|
After Width: | Height: | Size: 203 KiB |
|
After Width: | Height: | Size: 382 KiB |
|
After Width: | Height: | Size: 224 KiB |
|
After Width: | Height: | Size: 221 KiB |
|
After Width: | Height: | Size: 98 KiB |
|
After Width: | Height: | Size: 123 KiB |
|
After Width: | Height: | Size: 133 KiB |
|
After Width: | Height: | Size: 136 KiB |
|
After Width: | Height: | Size: 149 KiB |
|
After Width: | Height: | Size: 112 KiB |
|
After Width: | Height: | Size: 114 KiB |
|
After Width: | Height: | Size: 112 KiB |
@@ -0,0 +1 @@
|
||||
/nix/store/hqg1qv89c89x5z6hyafbbyc0ncy0jbqs-home-manager-files/nixos_conf/wallpaperstuff/videos/dark_water_large.mp4
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/9cznk9vc494karcb2pq7sccallv76m82-home-manager-files/nixos_conf/wallpaperstuff/videos/white_blobs_small.mp4
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/hqg1qv89c89x5z6hyafbbyc0ncy0jbqs-home-manager-files/nixos_conf/wallpaperstuff/videos/white_blobs_small.mp4
|
||||
@@ -0,0 +1 @@
|
||||
/nix/store/hqg1qv89c89x5z6hyafbbyc0ncy0jbqs-home-manager-files/nixos_conf/wallpaperstuff/wallpaper.conf
|
||||
@@ -0,0 +1,6 @@
|
||||
[default]
|
||||
mode = "stretch"
|
||||
|
||||
# Fallback for outputs not explicitly listed:
|
||||
[any]
|
||||
path = "/home/henrov/nixos_conf/wallpaperstuff/pictures"
|
||||
@@ -1,22 +1,3 @@
|
||||
##############################################
|
||||
# These files are just for reference.
|
||||
# If you want to change anything, edit the source files in:
|
||||
# ~/henrovnix/assets/conf
|
||||
#
|
||||
# After that, run:
|
||||
# cd ~/henrovnix && emacs README.org --batch -f org-babel-tangle && git add . && git commit -m "Adjusted conf files" && sudo nixos-rebuild switch --flake .#<yourhost>
|
||||
#
|
||||
# If everything still works, you can use the same command but:
|
||||
# - keep "switch"
|
||||
# - and add a reboot:
|
||||
#
|
||||
# cd ~/henrovnix && sudo nixos-rebuild switch --flake .#<yourhost> && systemctl reboot
|
||||
#
|
||||
# NOTE:
|
||||
# Make sure the lines starting with: cd ~/henrovnix
|
||||
# are written as ONE single line.
|
||||
##############################################
|
||||
#app.zen_browser.zen
|
||||
com.github.tchx84.Flatseal
|
||||
eu.betterbird.Betterbird
|
||||
com.todoist.Todoist
|
||||
|
||||
@@ -6,6 +6,8 @@ brave
|
||||
chromium
|
||||
|
||||
# utils
|
||||
git
|
||||
direnv
|
||||
ripgrep
|
||||
wget
|
||||
kdePackages.kdeconnect-kde
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
hyprland = true;
|
||||
gtk = false;
|
||||
henrov = true;
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
enable = true;
|
||||
base16Scheme = ../../../assets/system/theming/stylix/catppuccin-mocha.yaml;
|
||||
image = ../../../assets/hyprland/wallpaperstuff/pictures/wall1.jpg;
|
||||
polarity = "dark";
|
||||
|
||||
cursor = {
|
||||
package = "phinger-cursors"; # symbolic reference
|
||||
name = "phinger-cursors-light";
|
||||
size = 24;
|
||||
};
|
||||
|
||||
fonts = {
|
||||
monospace = {
|
||||
package = "nerd-fonts-fira-code";
|
||||
name = "Fira Code Nerd Font";
|
||||
};
|
||||
sansSerif = {
|
||||
package = "lato";
|
||||
name = "Lato";
|
||||
};
|
||||
};
|
||||
|
||||
icons = {
|
||||
enable = true;
|
||||
package = "papirus-icon-theme";
|
||||
dark = "Papirus-Dark";
|
||||
light = "Papirus-Light";
|
||||
};
|
||||
@@ -0,0 +1,26 @@
|
||||
# Catppuccin Mocha colors
|
||||
local mocha_base="#1E1E2E"
|
||||
local mocha_surface0="#313244"
|
||||
local mocha_text="#CDD6F4"
|
||||
local mocha_lavender="#B4BEFE"
|
||||
local mocha_blue="#89B4FA"
|
||||
local mocha_sapphire="#74C7EC"
|
||||
local mocha_teal="#94D2D5"
|
||||
local mocha_green="#A6E3A1"
|
||||
local mocha_yellow="#F9E2AF"
|
||||
local mocha_peach="#FAB387"
|
||||
local mocha_maroon="#EBA0AC"
|
||||
local mocha_red="#F38BA8"
|
||||
local mocha_mauve="#CBA6F7"
|
||||
local mocha_pink="#F5E2C7"
|
||||
local mocha_flamingo="#F2CDCD"
|
||||
local mocha_rosewater="#F5E0DC"
|
||||
|
||||
# Prompt
|
||||
PROMPT='%{$fg[$mocha_blue]%}%n%{$reset_color%}@%{$fg[$mocha_peach]%}%m%{$reset_color%} %{$fg[$mocha_lavender]%}%~%{$reset_color%} %{$fg[$mocha_red]%}$%{$reset_color%} '
|
||||
RPROMPT='%{$fg[$mocha_green]%}%T%{$reset_color%}'
|
||||
|
||||
# Source zsh-syntax-highlighting if present
|
||||
if [ -f ${files."zsh-syntax-highlighting".src} ]; then
|
||||
source ${files."zsh-syntax-highlighting".src}
|
||||
fi
|
||||
@@ -1,15 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Find all nix files under generated/modules
|
||||
echo "Scanning generated/modules for modules returning lists..."
|
||||
|
||||
for f in $(find generated/modules -name '*.nix'); do
|
||||
# Look for lines where config or modules is assigned to a list
|
||||
if rg -q '^\s*(config|modules)\s*=\s*\[' "$f"; then
|
||||
echo "⚠️ Possible nested list in: $f"
|
||||
rg '^\s*(config|modules)\s*=\s*\[' "$f"
|
||||
echo ""
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Scan complete."
|
||||
@@ -101,27 +101,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"emacs-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773912849,
|
||||
"narHash": "sha256-j8+nTPoUiiyyMAN0bk/8AqqkApusi38laEaQ4m45KIA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "emacs-overlay",
|
||||
"rev": "4ce92db83efd3393ba51df6bbc06cc34f48c4475",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "emacs-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -635,22 +614,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1773814637,
|
||||
"narHash": "sha256-GNU+ooRmrHLfjlMsKdn0prEKVa0faVanm0jrgu1J/gY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fea3b367d61c1a6592bc47c72f40a9f3e6a53e96",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-25.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1773821835,
|
||||
@@ -717,14 +680,12 @@
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"emacs-overlay": "emacs-overlay",
|
||||
"flake-parts": "flake-parts",
|
||||
"home-manager": "home-manager",
|
||||
"hyprland": "hyprland",
|
||||
"import-tree": "import-tree",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"stylix": "stylix",
|
||||
"zen-browser": "zen-browser"
|
||||
"stylix": "stylix"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
@@ -912,26 +873,6 @@
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zen-browser": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773722260,
|
||||
"narHash": "sha256-U8MsSiqqYZHR3oKE+cCZ2AJt3b4LcXs+oQuNLipaO78=",
|
||||
"owner": "youwen5",
|
||||
"repo": "zen-browser-flake",
|
||||
"rev": "0e6e43342fb3e9a3439fafa777d8cdf98e4ffc49",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "youwen5",
|
||||
"repo": "zen-browser-flake",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
import-tree.url = "github:vic/import-tree";
|
||||
|
||||
@@ -18,42 +17,34 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
emacs-overlay = {
|
||||
url = "github:nix-community/emacs-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
zen-browser = {
|
||||
url = "github:youwen5/zen-browser-flake";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
};
|
||||
|
||||
outputs = inputs@{ flake-parts, nixpkgs, ... }:
|
||||
flake-parts.lib.mkFlake { inherit inputs; } {
|
||||
outputs = inputs@{ flake-parts, nixpkgs, import-tree, ... }:
|
||||
flake-parts.lib.mkFlake { inherit inputs; } {
|
||||
systems = [ "x86_64-linux" ];
|
||||
|
||||
systems = [ "x86_64-linux" ];
|
||||
flake = {
|
||||
nixosConfigurations.traveldroid = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
|
||||
flake = {
|
||||
nixosConfigurations.traveldroid = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
|
||||
specialArgs = { inherit inputs; };
|
||||
|
||||
modules =
|
||||
[
|
||||
# ./generated/system/mysystem.nix
|
||||
]
|
||||
++ (inputs.import-tree ./generated/modules).imports
|
||||
++ [
|
||||
./generated/hosts/traveldroid/traveldroid.nix
|
||||
./generated/hosts/traveldroid/boot.nix
|
||||
./generated/hosts/traveldroid/hardware-configuration.nix
|
||||
|
||||
inputs.stylix.nixosModules.default
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
];
|
||||
specialArgs = {
|
||||
inherit inputs;
|
||||
flakeRoot = ./.; # <-- Pass the absolute path of the flake root
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
modules = [
|
||||
./generated/hosts/traveldroid/boot.nix
|
||||
./generated/hosts/traveldroid/hardware-configuration.nix
|
||||
|
||||
# Import all dendritic modules (users, desktops, system modules)
|
||||
(import-tree ./generated/modules)
|
||||
|
||||
# Extra modules
|
||||
inputs.stylix.nixosModules.default
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,16 +1,66 @@
|
||||
{ inputs, config, lib, pkgs, ... }:
|
||||
{ pkgs, config, lib, flakeRoot, ... }:
|
||||
|
||||
let
|
||||
grubThemeDir = "/boot/grub/themes/catppuccin-mocha";
|
||||
grubThemeFile = "${grubThemeDir}/theme.txt";
|
||||
plymouthThemeDir = "/usr/share/plymouth/themes/catppuccin";
|
||||
in
|
||||
{
|
||||
boot = {
|
||||
initrd = {
|
||||
verbose = false;
|
||||
kernelModules = [];
|
||||
};
|
||||
|
||||
boot.loader.grub = {
|
||||
enable = true;
|
||||
efiSupport = true;
|
||||
device = "nodev";
|
||||
useOSProber = true;
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
kernelParams = [ "quiet" "udev.log_level=3" "systemd.show_status=auto" ];
|
||||
consoleLogLevel = 3;
|
||||
|
||||
supportedFilesystems = [ "ntfs" ];
|
||||
|
||||
# Correct GRUB + UEFI configuration
|
||||
loader = {
|
||||
grub = {
|
||||
enable = true;
|
||||
efiSupport = true; # enable UEFI mode
|
||||
devices = [ "nodev" ]; # nodev for UEFI
|
||||
useOSProber = true;
|
||||
theme = grubThemeFile;
|
||||
};
|
||||
|
||||
timeout = 5;
|
||||
};
|
||||
|
||||
# Plymouth splashscreen
|
||||
plymouth = {
|
||||
enable = true;
|
||||
theme = "rings";
|
||||
themePackages = with pkgs; [
|
||||
(adi1090x-plymouth-themes.override {
|
||||
selected_themes = [ "rings" ];
|
||||
})
|
||||
];
|
||||
};
|
||||
};
|
||||
#boot.efi.canTouchEfiVariables = true;
|
||||
|
||||
boot.kernelParams = [
|
||||
"systemd.mask=dev-tpm0.device"
|
||||
"systemd.mask=dev-tpmrm0.device"
|
||||
];
|
||||
# Activation script: write Catppuccin GRUB theme
|
||||
system.activationScripts.grubTheme = {
|
||||
text = ''
|
||||
mkdir -p ${grubThemeDir}
|
||||
|
||||
cat > ${grubThemeFile} <<EOF
|
||||
# Catppuccin Mocha GRUB theme
|
||||
desktop-color = #1e1e2e
|
||||
normal-color = #cdd6f4
|
||||
selected-item-color = #f5e0dc
|
||||
selected-item-highlight-color = #f5c2e7
|
||||
EOF
|
||||
|
||||
if [ -f "${flakeRoot}/assets/system/theming/boot/background.png" ]; then
|
||||
cp "${flakeRoot}/assets/system/theming/boot/background.png" "${grubThemeDir}/background.png"
|
||||
fi
|
||||
|
||||
echo "GRUB Catppuccin Mocha theme installed."
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,11 +1,42 @@
|
||||
{ config, lib, ... }:
|
||||
{ lib, config, pkgs, inputs, ... }:
|
||||
|
||||
{
|
||||
# Host-specific system configuration
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
modulesPath = ./generated/modules;
|
||||
|
||||
# Import all modules recursively
|
||||
importedModules = inputs.import-tree modulesPath;
|
||||
|
||||
# Evaluate all modules
|
||||
evaluatedModules =
|
||||
map (m:
|
||||
if builtins.isFunction m then m { inherit lib config pkgs; } else m
|
||||
) importedModules.imports;
|
||||
|
||||
# Attach names
|
||||
modulesWithNames =
|
||||
map (m: {
|
||||
name = if m ? _file then lib.removeSuffix ".nix" (builtins.baseNameOf m._file) else "unknown";
|
||||
value = m;
|
||||
}) evaluatedModules;
|
||||
|
||||
# Filter enabled modules from config file (optional)
|
||||
moduleSwitches = import ../../../assets/system/conf/modules.conf;
|
||||
enabledModules =
|
||||
builtins.filter (m: moduleSwitches.${m.name} or false) modulesWithNames;
|
||||
|
||||
# Collect Home Manager user attrsets
|
||||
hmUsersList = map (m: m.value._module.args.hmUsers or {}) enabledModules;
|
||||
|
||||
in {
|
||||
networking.hostName = "traveldroid";
|
||||
system.stateVersion = "26.05";
|
||||
# User-defined features
|
||||
mySystem.system.core.enable = true;
|
||||
# Hardware overrides
|
||||
hardware.nvidia.enabled = false;
|
||||
|
||||
imports = [
|
||||
./boot.nix
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
# Merge Home Manager user configurations
|
||||
home-manager.users = lib.mkMerge hmUsersList;
|
||||
}
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
{
|
||||
username = "henrov";
|
||||
hashedPassword = "$6$ISAmsPLyFi7idYXr$VmZsq.zMsyh1irSkyDNqtorNXG0oEHbbMVqTii1t8bymvrQ5ZQmbdi4OiBNeNYe/huHGrojXM.3TST2fTLz0T.";
|
||||
homeDirectory = "/home/henrov";
|
||||
stateVersion = "26.05";
|
||||
locale = "nl_NL.UTF-8";
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
user = import ./henrov.nix;
|
||||
in
|
||||
{
|
||||
home-manager.users.${user.username} = {
|
||||
home.stateVersion = "26.05";
|
||||
home.username = user.username;
|
||||
home.homeDirectory = user.homeDirectory;
|
||||
};
|
||||
|
||||
# Ensure the user is in the necessary groups
|
||||
users.users.${config.users.users.${user.username}.username} = {
|
||||
extraGroups = [ "wheel" "networkmanager" ];
|
||||
};
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
config.system.default = [ "hyprland" "gtk" ];
|
||||
};
|
||||
}
|
||||
@@ -1,32 +1,34 @@
|
||||
{ lib, pkgs, config, ... }:
|
||||
|
||||
let
|
||||
flatpakConfPath = ../../../assets/system/apps/flatpaks.conf;
|
||||
# Module name
|
||||
moduleName = "flatpaks";
|
||||
|
||||
# Top-level toggle for this module
|
||||
enableProgram = config.enableFlatpaks or false;
|
||||
|
||||
# Path to your Flatpak list
|
||||
assetPath = ../../../assets/system/apps/flatpaks.conf;
|
||||
|
||||
# Resolve user safely
|
||||
username = config.defaultUser or "henrov";
|
||||
in
|
||||
{
|
||||
# Top-level toggle
|
||||
# --- Top-level toggle option ---
|
||||
options.enableFlatpaks = lib.mkEnableOption "Enable automatic Flatpak installation";
|
||||
|
||||
# Config assignments
|
||||
# --- Config only applied if enabled ---
|
||||
config = lib.mkIf enableProgram {
|
||||
# Use programs.flatpaks instead of myApps.flatpaks
|
||||
programs.flatpaks = {
|
||||
enable = true;
|
||||
user = config.defaultUser or "henrov";
|
||||
assetsDir = flatpakConfPath;
|
||||
files = []; # handled at runtime
|
||||
};
|
||||
|
||||
# Deploy the conf file
|
||||
environment.etc."flatpak/flatpaks.conf".source = flatpakConfPath;
|
||||
# Deploy the Flatpak conf file
|
||||
environment.etc."flatpak/flatpaks.conf".source = assetPath;
|
||||
|
||||
# Enable system flatpak service
|
||||
# Enable system Flatpak service
|
||||
services.flatpak.enable = true;
|
||||
xdg.portal.enable = true;
|
||||
|
||||
# Systemd service for installing listed flatpaks
|
||||
systemd.services.flatpak-sync = {
|
||||
# Systemd service to install Flatpaks from the list
|
||||
systemd.services."${moduleName}-sync" = {
|
||||
description = "Install Flatpak apps listed in flatpaks.conf";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
@@ -36,12 +38,14 @@ in
|
||||
Type = "oneshot";
|
||||
ExecStart = ''
|
||||
set -euo pipefail
|
||||
CONF="${flatpakConfPath}"
|
||||
CONF="${assetPath}"
|
||||
|
||||
# Add Flathub if not present
|
||||
if ! flatpak remotes --system --columns=name | grep -qx flathub; then
|
||||
flatpak remote-add --system --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||
fi
|
||||
|
||||
# Install every Flatpak listed in the conf file
|
||||
while IFS= read -r app || [ -n "$app" ]; do
|
||||
app=$(echo "$app" | sed 's/#.*//;s/^[[:space:]]*//;s/[[:space:]]*$//')
|
||||
if [ -n "$app" ]; then
|
||||
@@ -53,7 +57,9 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
restartTriggers = [ flatpakConfPath ];
|
||||
restartTriggers = [ assetPath ];
|
||||
|
||||
# Include only the packages needed for this service
|
||||
path = [ pkgs.flatpak pkgs.coreutils pkgs.gnugrep pkgs.gnused ];
|
||||
};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
{ config, lib, pkgs, flakeRoot, ... }:
|
||||
|
||||
let
|
||||
packagesConfPath = "${flakeRoot}/assets/system/apps/packages.conf";
|
||||
raw = builtins.readFile packagesConfPath;
|
||||
|
||||
# Split lines safely, keep guard against splitting into characters
|
||||
rawLines = lib.splitString "\n" raw;
|
||||
_guard =
|
||||
assert !(builtins.stringLength raw > 1 && builtins.length rawLines == builtins.stringLength raw);
|
||||
true;
|
||||
|
||||
# Clean each line: remove CRs, remove comments, trim
|
||||
cleanLine = line:
|
||||
let
|
||||
noCR = lib.replaceStrings [ "\r" ] [ "" ] line;
|
||||
noInlineComment = lib.head (lib.splitString "#" noCR);
|
||||
in
|
||||
lib.strings.trim noInlineComment;
|
||||
|
||||
# Filter out empty lines
|
||||
entries = builtins.filter (l: l != "") (map cleanLine rawLines);
|
||||
|
||||
# Resolve attribute path in pkgs
|
||||
resolvePkg = name:
|
||||
let
|
||||
parts = lib.splitString "." name;
|
||||
found = lib.attrByPath parts null pkgs;
|
||||
in
|
||||
if found == null then
|
||||
throw ''
|
||||
packages.nix: package not found in pkgs
|
||||
Token : ${builtins.toJSON name}
|
||||
packages.conf : ${packagesConfPath}
|
||||
Hint : check the attribute name on search.nixos.org/packages
|
||||
''
|
||||
else
|
||||
found;
|
||||
|
||||
# Final system-wide package list
|
||||
packages = builtins.seq _guard (map resolvePkg entries);
|
||||
|
||||
in
|
||||
{
|
||||
|
||||
nixpkgs.config = { allowUnfree = true; };
|
||||
environment.systemPackages = packages;
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
{ lib, pkgs, config, ... }:
|
||||
|
||||
let
|
||||
enableProgram = config.enableThunar or false;
|
||||
in
|
||||
{
|
||||
# Top-level toggle
|
||||
options.enableThunar = lib.mkEnableOption "Enable Thunar file manager";
|
||||
|
||||
# Config assignments
|
||||
config = lib.mkIf enableProgram {
|
||||
# Replace myApps.thunar with programs.thunar (or your own flat container)
|
||||
programs.thunar = {
|
||||
user = config.defaultUser or "henrov";
|
||||
# Add extra Thunar options here
|
||||
};
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.thunar
|
||||
pkgs.thunar-plugins
|
||||
pkgs.xarchiver
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
{ lib, config, ... }:
|
||||
|
||||
let
|
||||
# Path to your configuration assets
|
||||
wofiAssets = ../../../assets/system/conf/wofi;
|
||||
|
||||
# Read the files in that directory
|
||||
wofiFiles = builtins.readDir wofiAssets;
|
||||
|
||||
# Build an attribute set mapping filenames to their full paths
|
||||
wofiConfs = lib.genAttrs (builtins.attrNames wofiFiles) (name: {
|
||||
src = "${wofiAssets}/${name}";
|
||||
});
|
||||
|
||||
# Toggle for enabling Wofi
|
||||
enableWofi = true;
|
||||
in
|
||||
{
|
||||
# Module option to enable/disable Wofi
|
||||
options.enableWofi = lib.mkEnableOption "Enable Wofi terminal launcher";
|
||||
|
||||
# Everything in config is wrapped safely with mkIf
|
||||
config = lib.mkIf enableWofi {
|
||||
# Use mySystem as a container for all your programs
|
||||
mySystem = {
|
||||
wofi = {
|
||||
enable = true;
|
||||
assetsDir = wofiAssets;
|
||||
files = wofiConfs;
|
||||
|
||||
# Example: you could reference a top-level user option
|
||||
user = config.defaultUser or "henrov";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,35 +1,57 @@
|
||||
{ lib, pkgs, config, ... }:
|
||||
{ lib, config, pkgs, ... }:
|
||||
|
||||
let
|
||||
programName = "zenbrowser";
|
||||
|
||||
# Optional: path to any assets (empty here since you don't need config)
|
||||
programAssets = ../../../assets/system/conf/${programName};
|
||||
programFiles = builtins.readDir programAssets;
|
||||
# Assets (optional, empty if no config)
|
||||
assetPath =
|
||||
if builtins.pathExists ../../../assets/system/conf/${programName}
|
||||
then ../../../assets/system/conf/${programName}
|
||||
else null;
|
||||
|
||||
programFiles =
|
||||
if assetPath != null then builtins.readDir assetPath else {};
|
||||
|
||||
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
|
||||
src = "${programAssets}/${name}";
|
||||
src = "${assetPath}/${name}";
|
||||
});
|
||||
|
||||
# Toggle variable referring to the module option
|
||||
enableProgram = config.enableZenBrowser or false;
|
||||
|
||||
in {
|
||||
# Top-level toggle option for the module
|
||||
# Default user fallback
|
||||
username = config.defaultUser or "henrov";
|
||||
in
|
||||
{
|
||||
# --- Option ---
|
||||
options.enableZenBrowser = lib.mkEnableOption "Install Zen Browser";
|
||||
|
||||
# Wrap all configuration in mkIf(enable)
|
||||
# --- Config ---
|
||||
config = lib.mkIf enableProgram {
|
||||
# mySystem container
|
||||
mySystem = {
|
||||
${programName} = {
|
||||
enable = true;
|
||||
assetsDir = programAssets;
|
||||
files = files;
|
||||
user = config.defaultUser or "henrov";
|
||||
};
|
||||
};
|
||||
|
||||
# Install the package system-wide
|
||||
# --- Deploy assets (if any) ---
|
||||
environment.etc."${programName}".source = assetPath;
|
||||
|
||||
# --- System packages ---
|
||||
environment.systemPackages = [ pkgs.zen-browser ];
|
||||
|
||||
# --- Example systemd service to sync assets ---
|
||||
systemd.services."${programName}-sync" = {
|
||||
description = "Sync ${programName} configuration files";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
after = [ "network-online.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = ''
|
||||
set -euo pipefail
|
||||
if [ -d "${assetPath}" ]; then
|
||||
for f in ${lib.concatStringsSep " " (builtins.attrNames files)}; do
|
||||
cp -u "${assetPath}/$f" "/home/${username}/.config/${programName}/$f"
|
||||
done
|
||||
fi
|
||||
'';
|
||||
};
|
||||
|
||||
restartTriggers = [ assetPath ];
|
||||
path = [];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,85 +1,46 @@
|
||||
{ lib, config, flakeRoot, ... }:
|
||||
{ lib, config, pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
# --- Program definition ---
|
||||
programName = "hyprland";
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
# --- Assets ---
|
||||
programAssets = "${flakeRoot}/assets/hyprland/conf/hypr";
|
||||
# Paths
|
||||
assetPath = ../../../assets/hyprland/conf/hypr;
|
||||
mainConfig = "${assetPath}/hyprland.conf";
|
||||
|
||||
programFiles =
|
||||
if builtins.pathExists programAssets
|
||||
then builtins.readDir programAssets
|
||||
else {};
|
||||
# Determine Hyprland package with fallbacks
|
||||
hyprlandPkg =
|
||||
pkgs.hyprland or
|
||||
pkgs.hyprland-git or
|
||||
inputs.hyprland.packages.${pkgs.system}.default;
|
||||
|
||||
fileNames = builtins.attrNames programFiles;
|
||||
|
||||
# Exclude main config (handled separately)
|
||||
otherFiles = lib.filter (name: name != "hyprland.conf") fileNames;
|
||||
|
||||
# Generate file mappings
|
||||
files = lib.genAttrs otherFiles (name: {
|
||||
src = "${programAssets}/${name}";
|
||||
});
|
||||
|
||||
# Main config (inline)
|
||||
mainConfigPath = "${programAssets}/hyprland.conf";
|
||||
|
||||
# Enable toggle (must match option)
|
||||
enableProgram = config.enableHyprland or true;
|
||||
|
||||
# Resolve user safely
|
||||
user = config.defaultUser or "henrov";
|
||||
# Map all files in the asset folder
|
||||
hyprFiles =
|
||||
builtins.listToAttrs (
|
||||
map (f: {
|
||||
name = ".config/hypr/${f}";
|
||||
value = { source = "${assetPath}/${f}"; };
|
||||
}) (builtins.attrNames (builtins.readDir assetPath))
|
||||
);
|
||||
in
|
||||
{
|
||||
# --- Option ---
|
||||
options.enableHyprland =
|
||||
lib.mkEnableOption "Enable Hyprland desktop";
|
||||
# System-wide package
|
||||
environment.systemPackages = [ hyprlandPkg ];
|
||||
|
||||
# --- Config ---
|
||||
config = lib.mkIf enableProgram {
|
||||
# Home Manager user settings
|
||||
_module.args.hmUsers = {
|
||||
${username} = {
|
||||
home.packages = [ hyprlandPkg ];
|
||||
|
||||
# --- Dendritic app definition ---
|
||||
mySystem.${programName} = {
|
||||
enable = true;
|
||||
assetsDir = programAssets;
|
||||
files = files;
|
||||
inherit user;
|
||||
# Merge main config + all other files
|
||||
home.file = lib.mkMerge [
|
||||
hyprFiles
|
||||
{
|
||||
".config/hypr/hyprland.conf" = { source = mainConfig; };
|
||||
}
|
||||
];
|
||||
|
||||
compositor = "hyprland";
|
||||
};
|
||||
|
||||
# --- System-level enable ---
|
||||
programs.hyprland.enable = true;
|
||||
|
||||
# --- Home Manager wiring ---
|
||||
home-manager.users.${user} = {
|
||||
|
||||
home.stateVersion = "26.05";
|
||||
home.username = user;
|
||||
home.homeDirectory = "/home/${user}";
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
|
||||
settings.general."col.active_border" =
|
||||
lib.mkForce "0xff97cbcd 0xff89b4fa";
|
||||
};
|
||||
|
||||
# --- Config files ---
|
||||
xdg.configFile =
|
||||
(lib.mapAttrs' (name: value: {
|
||||
name = "hypr/${name}";
|
||||
value.source = value.src;
|
||||
}) files)
|
||||
// {
|
||||
"hypr/hyprland.conf".text =
|
||||
if builtins.pathExists mainConfigPath
|
||||
then builtins.readFile mainConfigPath
|
||||
else "";
|
||||
|
||||
"hypr/.keep".text = "";
|
||||
};
|
||||
# Optional module-specific settings
|
||||
settings.general."col.active_border" = "0xff97cbcd 0xff89b4fa";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,96 +1,56 @@
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
{ lib, config, pkgs, ... }:
|
||||
|
||||
let
|
||||
# --- Program definition ---
|
||||
programName = "stylix";
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
moduleName = "stylix";
|
||||
assetPath = ../../../assets/system/conf/${moduleName};
|
||||
|
||||
# Read all files in asset directory
|
||||
programFiles = builtins.readDir assetPath;
|
||||
|
||||
# Assets (theme + wallpaper)
|
||||
programAssets = "${flakeRoot}/assets/system/theming/${programName}";
|
||||
programFiles =
|
||||
if builtins.pathExists programAssets
|
||||
then builtins.readDir programAssets
|
||||
else {};
|
||||
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
|
||||
src = "${programAssets}/${name}";
|
||||
source = "${assetPath}/${name}";
|
||||
});
|
||||
|
||||
# Enable toggle (must match option)
|
||||
enableProgram = config.enableStylix or true;
|
||||
# Read optional stylix.conf
|
||||
stylixConfFile = "${assetPath}/stylix.conf";
|
||||
stylixConf =
|
||||
if builtins.pathExists stylixConfFile
|
||||
then builtins.readFile stylixConfFile
|
||||
else "";
|
||||
|
||||
# Resolve user safely (outside mkIf)
|
||||
user = config.defaultUser or "henrov";
|
||||
|
||||
# --- Stylix configuration (self-contained) ---
|
||||
stylixCfg = {
|
||||
enable = true;
|
||||
|
||||
base16Scheme =
|
||||
"${flakeRoot}/assets/system/theming/stylix/catppuccin-mocha.yaml";
|
||||
|
||||
image =
|
||||
"${flakeRoot}/assets/hyprland/wallpaperstuff/pictures/wall1.jpg";
|
||||
|
||||
polarity = "dark";
|
||||
|
||||
cursor = {
|
||||
package = pkgs.phinger-cursors;
|
||||
name = "phinger-cursors-light";
|
||||
size = 24;
|
||||
};
|
||||
|
||||
fonts = {
|
||||
monospace = {
|
||||
package = pkgs.nerd-fonts.fira-code;
|
||||
name = "Fira Code Nerd Font";
|
||||
};
|
||||
sansSerif = {
|
||||
package = pkgs.lato;
|
||||
name = "Lato";
|
||||
};
|
||||
};
|
||||
|
||||
icons = {
|
||||
enable = true;
|
||||
package = pkgs.papirus-icon-theme;
|
||||
dark = "Papirus-Dark";
|
||||
light = "Papirus-Light";
|
||||
};
|
||||
};
|
||||
# Cursor defaults
|
||||
cursorName = "phinger-cursors-light";
|
||||
cursorSize = 24;
|
||||
in
|
||||
{
|
||||
# --- Option ---
|
||||
options.enableStylix =
|
||||
lib.mkEnableOption "Enable Stylix system theming";
|
||||
# System packages
|
||||
environment.systemPackages = [
|
||||
pkgs.feh
|
||||
pkgs.st
|
||||
];
|
||||
|
||||
# --- Config ---
|
||||
config = lib.mkIf enableProgram {
|
||||
# Home Manager user settings
|
||||
_module.args.hmUsers = {
|
||||
${username} = {
|
||||
|
||||
# --- Dendritic app definition ---
|
||||
mySystem.${programName} = {
|
||||
enable = true;
|
||||
assetsDir = programAssets;
|
||||
files = files;
|
||||
inherit user;
|
||||
# Copy all stylix config files into ~/.config/stylix/
|
||||
xdg.configFile =
|
||||
lib.mapAttrs' (name: value: {
|
||||
name = "${moduleName}/${name}";
|
||||
value = { inherit (value) source; };
|
||||
}) files;
|
||||
|
||||
theme = "catppuccin-mocha";
|
||||
polarity = "dark";
|
||||
};
|
||||
# Session variables
|
||||
home.sessionVariables = {
|
||||
STYLIX_CONF = "$HOME/.config/stylix/stylix.conf";
|
||||
|
||||
# --- Stylix theming ---
|
||||
stylix = stylixCfg;
|
||||
|
||||
# --- Optional: wallpaper helper (kept dendritic) ---
|
||||
mySystem.wallpaper = {
|
||||
enable = true;
|
||||
packages = [ "feh" "st" ];
|
||||
};
|
||||
|
||||
# --- Cursor environment variables ---
|
||||
home-manager.users.${user}.home.sessionVariables = {
|
||||
XCURSOR_THEME = stylixCfg.cursor.name;
|
||||
XCURSOR_SIZE = toString stylixCfg.cursor.size;
|
||||
HYPRCURSOR_THEME = stylixCfg.cursor.name;
|
||||
HYPRCURSOR_SIZE = toString stylixCfg.cursor.size;
|
||||
XCURSOR_THEME = cursorName;
|
||||
XCURSOR_SIZE = toString cursorSize;
|
||||
HYPRCURSOR_THEME = cursorName;
|
||||
HYPRCURSOR_SIZE = toString cursorSize;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
{ lib, pkgs, config, ... }:
|
||||
|
||||
let
|
||||
programName = "waybar";
|
||||
|
||||
# Path to configuration assets
|
||||
programAssets = ../../../assets/system/conf/${programName};
|
||||
programFiles = builtins.readDir programAssets;
|
||||
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
|
||||
src = "${programAssets}/${name}";
|
||||
});
|
||||
|
||||
# Toggle variable referring to the top-level option
|
||||
enableProgram = config.enableWaybar or false;
|
||||
|
||||
# Default user fallback
|
||||
defaultUser = "henrov";
|
||||
|
||||
in {
|
||||
# Top-level toggle for the module
|
||||
options.enableWaybar = lib.mkEnableOption "Enable Waybar status bar";
|
||||
|
||||
# Wrap all actual configuration in mkIf(enableProgram)
|
||||
config = lib.mkIf enableProgram {
|
||||
# mySystem container for dendritic structure
|
||||
mySystem = {
|
||||
${programName} = {
|
||||
enable = true;
|
||||
user = config.defaultUser or defaultUser;
|
||||
assetsDir = programAssets;
|
||||
files = files;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,63 +0,0 @@
|
||||
{ lib, config, ... }:
|
||||
|
||||
let
|
||||
# --- Program definition ---
|
||||
programName = "wayland";
|
||||
|
||||
# Assets (optional, kept for consistency with template)
|
||||
programAssets = ../../../assets/system/conf/${programName};
|
||||
programFiles =
|
||||
if builtins.pathExists programAssets
|
||||
then builtins.readDir programAssets
|
||||
else {};
|
||||
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
|
||||
src = "${programAssets}/${name}";
|
||||
});
|
||||
|
||||
# Enable toggle (must match option name)
|
||||
enableProgram = config.enableWayland or true;
|
||||
|
||||
# Resolve user safely (outside mkIf)
|
||||
user = config.defaultUser or "henrov";
|
||||
in
|
||||
{
|
||||
# --- Option ---
|
||||
options.enableWayland =
|
||||
lib.mkEnableOption "Enable Wayland + portals";
|
||||
|
||||
# --- Config ---
|
||||
config = lib.mkIf enableProgram {
|
||||
|
||||
# --- Dendritic app definition ---
|
||||
mySystem.${programName} = {
|
||||
enable = true;
|
||||
assetsDir = programAssets;
|
||||
files = files;
|
||||
inherit user;
|
||||
|
||||
# Wayland-specific metadata
|
||||
portals = [ "hyprland" ];
|
||||
};
|
||||
|
||||
# --- Actual system wiring ---
|
||||
home-manager.users.${user} = {
|
||||
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
|
||||
# pkgs is unavoidable here (real package dependency)
|
||||
extraPortals = [
|
||||
config.pkgs.xdg-desktop-portal-hyprland
|
||||
];
|
||||
|
||||
config.hyprland = {
|
||||
"org.freedesktop.impl.portal.Screencast" = [ "hyprland" ];
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = [
|
||||
config.pkgs.uwsm
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
{ lib, config, pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
# Default user fallback
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
# Safe package reference with flake input fallback
|
||||
xdgPortalHyprlandPkg = pkgs.xdg-desktop-portal-hyprland or
|
||||
inputs.xdgPortalHyprland.packages.${pkgs.system}.default;
|
||||
in
|
||||
{
|
||||
# System-wide installation of XDG portal package
|
||||
environment.systemPackages = [
|
||||
xdgPortalHyprlandPkg
|
||||
];
|
||||
|
||||
# Home Manager user configuration
|
||||
_module.args.hmUsers = {
|
||||
${username} = {
|
||||
home.packages = [
|
||||
xdgPortalHyprlandPkg
|
||||
];
|
||||
|
||||
# Enable XDG portal for Hyprland
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = [ xdgPortalHyprlandPkg ];
|
||||
config.hyprland = {
|
||||
"org.freedesktop.impl.portal.Screencast" = [ "hyprland" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,74 +1,36 @@
|
||||
{ lib, config, pkgs, flakeRoot, ... }:
|
||||
{ lib, pkgs, config, ... }:
|
||||
|
||||
let
|
||||
# --- Module metadata ---
|
||||
moduleName = "kitty"; # Change per module
|
||||
assetPath = "${flakeRoot}/assets/system/conf/${moduleName}"; # Path to kitty config
|
||||
username = config.defaultUser or "henrov"; # Use default user
|
||||
enableProgram = config.enableKitty or true; # Toggle for this module
|
||||
username = config.defaultUser or "henrov";
|
||||
moduleName = "kitty";
|
||||
|
||||
# Read asset files
|
||||
assetFiles = builtins.readDir assetPath;
|
||||
|
||||
# Map files → attrset
|
||||
files = lib.genAttrs (builtins.attrNames assetFiles) (name: {
|
||||
# Paths and files
|
||||
assetPath = ../../../assets/system/conf/${moduleName};
|
||||
programFiles = builtins.readDir assetPath;
|
||||
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
|
||||
src = "${assetPath}/${name}";
|
||||
});
|
||||
in
|
||||
{
|
||||
# --- Top-level toggle option ---
|
||||
options.enableKitty = lib.mkEnableOption "Enable Kitty terminal integration";
|
||||
# Install kitty system-wide
|
||||
environment.systemPackages = [ pkgs.kitty ];
|
||||
|
||||
# --- Apply configuration only if enabled ---
|
||||
config = lib.mkIf enableProgram {
|
||||
|
||||
# Dendritic container for this program
|
||||
myApps.${moduleName} = {
|
||||
enable = true;
|
||||
user = username;
|
||||
assetsDir = assetPath;
|
||||
files = files;
|
||||
|
||||
# Program-specific metadata
|
||||
theme = "catppuccin-mocha";
|
||||
};
|
||||
|
||||
# Deploy config files to XDG config
|
||||
home-manager.users.${username} = {
|
||||
# Home Manager user-specific configuration
|
||||
_module.args.hmUsers = {
|
||||
${username} = {
|
||||
programs.kitty.enable = true;
|
||||
|
||||
xdg.configFile = lib.mapAttrs' (name: value: {
|
||||
name = "${moduleName}/${name}";
|
||||
value.source = value.src;
|
||||
}) files;
|
||||
};
|
||||
# Extra user config snippet
|
||||
programs.kitty.extraConfig = ''
|
||||
# Include the Catppuccin-Mocha theme
|
||||
include themes/Catppuccin-Mocha.conf
|
||||
'';
|
||||
|
||||
# Optional systemd service to sync Kitty config (example)
|
||||
systemd.services."${moduleName}-sync" = {
|
||||
description = "Sync ${moduleName} configuration";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
after = [ "network-online.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = ''
|
||||
set -euo pipefail
|
||||
CONF="${assetPath}"
|
||||
|
||||
# Sync each file (example logic)
|
||||
for f in ${lib.concatStringsSep " " (builtins.attrNames files)}; do
|
||||
cp -u "$CONF/$f" "$USER_HOME/.config/${moduleName}/$f"
|
||||
done
|
||||
'';
|
||||
};
|
||||
|
||||
restartTriggers = [ assetPath ];
|
||||
|
||||
# Use system-wide binaries without referencing pkgs directly
|
||||
path = [
|
||||
"/run/current-system/sw/bin/coreutils"
|
||||
];
|
||||
# Copy all asset files into ~/.config/kitty/
|
||||
home.file = lib.mkMerge (
|
||||
map (name: { ".config/${moduleName}/${name}" = { source = files.${name}.src; }; })
|
||||
(builtins.attrNames files)
|
||||
);
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,32 +1,7 @@
|
||||
{ lib, ... }:
|
||||
{ config, pkgs, lib, flakeRoot, ... }:
|
||||
|
||||
let
|
||||
# Path to your Starship config inside the flake
|
||||
starshipAssets = ../../../assets/system/conf/starship.toml;
|
||||
|
||||
# Read and parse the TOML file as a symbolic value
|
||||
starshipConfig = lib.importTOML starshipAssets;
|
||||
|
||||
# Toggle on/off
|
||||
enableStarship = true;
|
||||
in
|
||||
{
|
||||
# Declare a top-level module option
|
||||
options.starship = {
|
||||
enable = lib.mkEnableOption "Enable Starship prompt";
|
||||
configFiles = lib.mkOption {
|
||||
type = lib.types.attrsOf lib.types.any;
|
||||
default = {};
|
||||
description = "Symbolic Starship configuration files";
|
||||
};
|
||||
};
|
||||
|
||||
# Populate the option safely
|
||||
config = lib.mkIf enableStarship {
|
||||
starship.enable = true;
|
||||
starship.configFiles = {
|
||||
"starship.toml" = starshipConfig;
|
||||
assetsDir = ../../../assets/system/conf;
|
||||
};
|
||||
programs.starship = {
|
||||
enable = true; # enable Starship integration
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
#autocd = true;
|
||||
#dotDir = "${config.xdg.configHome}/zsh";
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
theme = "";
|
||||
plugins = [
|
||||
"git"
|
||||
"sudo"
|
||||
"extract"
|
||||
"colored-man-pages"
|
||||
"command-not-found"
|
||||
"history"
|
||||
"docker"
|
||||
"kubectl"
|
||||
];
|
||||
};
|
||||
#autosuggestion.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{ config, pkgs, lib, flakeRoot, ... }:
|
||||
|
||||
let
|
||||
# Default to the configured default user
|
||||
username = config.users.users.defaultUser or "henrov";
|
||||
homeDir = "/home/${username}";
|
||||
assetPath = "${flakeRoot}/assets/copy_2_home";
|
||||
in
|
||||
{
|
||||
# Ensure rsync is available system-wide
|
||||
environment.systemPackages = [ pkgs.rsync ];
|
||||
|
||||
# System service to copy assets to the user home at boot
|
||||
systemd.services.copyAssets = {
|
||||
description = "Copy assets to ${username}'s home directory";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig.Type = "oneshot";
|
||||
|
||||
serviceConfig.ExecStart = ''
|
||||
echo "Copying assets from ${assetPath} to ${homeDir} ..."
|
||||
|
||||
if [ ! -d "${assetPath}" ]; then
|
||||
echo "ERROR: ${assetPath} does not exist"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkdir -p "${homeDir}"
|
||||
chown ${username}:${username} "${homeDir}"
|
||||
|
||||
${pkgs.rsync}/bin/rsync -a --no-owner --no-group "${assetPath}/" "${homeDir}/"
|
||||
|
||||
echo "Done copying assets."
|
||||
'';
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
{ lib, config, pkgs, ... }:
|
||||
|
||||
let
|
||||
username = "henrov";
|
||||
in
|
||||
{
|
||||
# NixOS user
|
||||
users.users.${username} = {
|
||||
isNormalUser = true;
|
||||
home = "/home/${username}";
|
||||
hashedPassword = "$6$S7iShgBxB.77CwmP$i0njK.2r3OL5UEvgZbmwZ0rnpZ4QyJcv8p9uCmJ4AiVPSMXkQkIwMLzyAOnJ0q8.tPLIp/7EquEIZeK8qbmgw/";
|
||||
extraGroups = [ "wheel" "networkmanager" ];
|
||||
};
|
||||
|
||||
# Home Manager user definition
|
||||
_module.args.hmUsers = {
|
||||
${username} = {
|
||||
home.username = username;
|
||||
home.homeDirectory = "/home/${username}";
|
||||
home.stateVersion = "26.05";
|
||||
|
||||
# Example: user packages
|
||||
home.packages = [ pkgs.git pkgs.vim ];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,101 @@
|
||||
{ lib, pkgs, config, ... }:
|
||||
|
||||
let
|
||||
moduleName = "emacs";
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
# Paths to your init files (relative to this module)
|
||||
emacsAssets = ../../../assets/system/conf/emacs;
|
||||
initFile = "${emacsAssets}/init.el";
|
||||
earlyInitFile = "${emacsAssets}/early-init.el";
|
||||
|
||||
# Toggle for this module
|
||||
enableProgram = config.enableEmacs or false;
|
||||
in
|
||||
{
|
||||
# Top-level toggle option
|
||||
options.enableEmacs = lib.mkEnableOption "Enable Emacs configuration";
|
||||
|
||||
config = lib.mkIf enableProgram {
|
||||
|
||||
# Minimal system-wide Emacs package
|
||||
environment.systemPackages = [
|
||||
pkgs.emacs-pgtk.override { withTreeSitter = true; }
|
||||
];
|
||||
|
||||
# Home Manager Emacs config
|
||||
home-manager.users.${username} = {
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
package = pkgs.emacs-pgtk.override { withTreeSitter = true; };
|
||||
|
||||
extraPackages = epkgs: with epkgs; [
|
||||
# Core dev and language support
|
||||
manualPackages.treesit-grammars.with-all-grammars
|
||||
rust-mode
|
||||
rustic
|
||||
nix-mode
|
||||
hcl-mode
|
||||
|
||||
# UI & workflow
|
||||
nerd-icons
|
||||
doom-modeline
|
||||
diminish
|
||||
eldoc
|
||||
eldoc-box
|
||||
pulsar
|
||||
which-key
|
||||
avy
|
||||
consult
|
||||
vertico
|
||||
marginalia
|
||||
crux
|
||||
shell-pop
|
||||
|
||||
# Completion/snippets
|
||||
nerd-icons-corfu
|
||||
corfu
|
||||
cape
|
||||
orderless
|
||||
yasnippet
|
||||
yasnippet-snippets
|
||||
|
||||
# Utilities
|
||||
rg
|
||||
exec-path-from-shell
|
||||
eat
|
||||
f
|
||||
gptel
|
||||
nixpkgs-fmt
|
||||
envrc
|
||||
|
||||
# Theming
|
||||
catppuccin-theme
|
||||
|
||||
# Git
|
||||
magit
|
||||
|
||||
# Editing/workflow
|
||||
expreg
|
||||
vundo
|
||||
puni
|
||||
|
||||
# Error/side panels
|
||||
sideline
|
||||
sideline-flymake
|
||||
sideline-eglot
|
||||
];
|
||||
|
||||
# Load your init files from assets
|
||||
initFile = initFile;
|
||||
earlyInitFile = earlyInitFile;
|
||||
};
|
||||
|
||||
# Useful session variables
|
||||
home.sessionVariables = {
|
||||
EDITOR = "emacs";
|
||||
XDG_SCREENSHOTS_DIR = "~/screenshots";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -368,15 +368,15 @@ the top of the file."
|
||||
(org-hide-emphasis-markers t)
|
||||
(org-src-fontify-natively t)
|
||||
(org-src-tab-acts-natively t)
|
||||
(org-capture-templates '(("t" "Todo" entry (file org-inbox-file)
|
||||
"* TODO %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n%a\n\n)")
|
||||
(org-capture-templates '(("t" "todo" entry (file org-inbox-file)
|
||||
"* todo %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n%a\n\n)")
|
||||
("j" "Journal" entry (file+olp+datetree org-journal-file)
|
||||
"* %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n%a\n\n")
|
||||
("n" "Note" entry (file org-notes-file)
|
||||
"* %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n%a\n\n")
|
||||
("p" "Project Task" item
|
||||
(file+function org-work-file my/org-capture-project-target-heading)
|
||||
"* TODO %? \n CLOCK: %U"
|
||||
"* todo %? \n CLOCK: %U"
|
||||
))
|
||||
)
|
||||
:config
|
||||
@@ -0,0 +1,28 @@
|
||||
{ lib, pkgs, config, ... }:
|
||||
|
||||
let
|
||||
enableProgram = config.enableThunar or false;
|
||||
username = config.defaultUser or "henrov";
|
||||
in
|
||||
{
|
||||
# Top-level toggle
|
||||
options.enableThunar = lib.mkEnableOption "Enable Thunar file manager";
|
||||
|
||||
# Only apply config if enabled
|
||||
config = lib.mkIf enableProgram {
|
||||
# Install Thunar and related packages system-wide
|
||||
environment.systemPackages = [
|
||||
pkgs.thunar
|
||||
pkgs.thunar-plugins
|
||||
pkgs.xarchiver
|
||||
];
|
||||
|
||||
# Remove invalid top-level 'home' reference
|
||||
# If you want sessionVariables, define them in Home Manager instead
|
||||
# Example for Home Manager:
|
||||
# home-manager.users.${username}.sessionVariables = {
|
||||
# FILE_MANAGER = "thunar";
|
||||
# USERNAME = username;
|
||||
# };
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
{ lib, config, ... }:
|
||||
|
||||
let
|
||||
# --- Program definition ---
|
||||
programName = "wofi";
|
||||
|
||||
# Path to assets
|
||||
assetPath = ../../../assets/system/conf/${programName};
|
||||
|
||||
# Generate file mappings
|
||||
programFiles =
|
||||
if builtins.pathExists assetPath then builtins.readDir assetPath else {};
|
||||
files = lib.genAttrs (builtins.attrNames programFiles) (name: {
|
||||
src = "${assetPath}/${name}";
|
||||
});
|
||||
|
||||
# Top-level toggle for this module
|
||||
enableProgram = config.enableWofi or false;
|
||||
|
||||
# Default user
|
||||
username = config.defaultUser or "henrov";
|
||||
in
|
||||
{
|
||||
# --- Module option ---
|
||||
options.enableWofi = lib.mkEnableOption "Enable Wofi terminal launcher";
|
||||
|
||||
# --- Config ---
|
||||
config = lib.mkIf enableProgram {
|
||||
|
||||
# --- Deploy assets to ~/.config/wofi ---
|
||||
environment.etc."${programName}".source = assetPath;
|
||||
|
||||
# --- Optional systemd service to sync config ---
|
||||
systemd.services."${programName}-sync" = {
|
||||
description = "Sync ${programName} configuration files";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
after = [ "network-online.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = ''
|
||||
set -euo pipefail
|
||||
if [ -d "${assetPath}" ]; then
|
||||
for f in ${lib.concatStringsSep " " (builtins.attrNames files)}; do
|
||||
mkdir -p "/home/${username}/.config/${programName}"
|
||||
cp -u "${assetPath}/$f" "/home/${username}/.config/${programName}/$f"
|
||||
done
|
||||
fi
|
||||
'';
|
||||
};
|
||||
|
||||
restartTriggers = [ assetPath ];
|
||||
path = [];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{ lib, config, ... }:
|
||||
|
||||
let
|
||||
# --- Module variables ---
|
||||
moduleName = "waybar";
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
# Assets directory (self-contained)
|
||||
assetPath = ../../../assets/system/conf/${moduleName};
|
||||
|
||||
# Read required config files
|
||||
waybarConfig = "${assetPath}/waybar.conf";
|
||||
waybarStyle = "${assetPath}/style.css";
|
||||
|
||||
# Top-level toggle
|
||||
enableProgram = config.enableWaybar or false;
|
||||
in
|
||||
{
|
||||
# --- Option ---
|
||||
options.enableWaybar =
|
||||
lib.mkEnableOption "Enable Waybar status bar";
|
||||
|
||||
# --- Config ---
|
||||
config = lib.mkIf enableProgram {
|
||||
|
||||
# Install Waybar (symbolic reference expected to be resolved elsewhere)
|
||||
environment.systemPackages = [
|
||||
"waybar"
|
||||
];
|
||||
|
||||
# Deploy only required files to ~/.config/waybar
|
||||
home-manager.users.${username}.xdg.configFile = {
|
||||
|
||||
"waybar/config".source =
|
||||
if builtins.pathExists waybarConfig
|
||||
then waybarConfig
|
||||
else null;
|
||||
|
||||
"waybar/style.css".source =
|
||||
if builtins.pathExists waybarStyle
|
||||
then waybarStyle
|
||||
else null;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{ lib, config, pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
# Wayland-specific packages
|
||||
uwsmPkg = pkgs.uwsm or inputs.uwsm.packages.${pkgs.system}.default;
|
||||
in
|
||||
{
|
||||
# System packages
|
||||
environment.systemPackages = [ uwsmPkg ];
|
||||
|
||||
# Enable Hyprland at system level
|
||||
wayland.windowManager.hyprland.enable = true;
|
||||
|
||||
# Home Manager user settings
|
||||
_module.args.hmUsers = {
|
||||
${username} = {
|
||||
home.packages = [ uwsmPkg ];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
{ lib, config, pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
# Default username fallback
|
||||
username = config.defaultUser or "henrov";
|
||||
|
||||
# Asset folder for configs
|
||||
assetPath = ../../../assets/<myModuleName>/conf;
|
||||
|
||||
# Main configuration file
|
||||
mainConfig = "${assetPath}/<mainConfigFile>";
|
||||
|
||||
# Determine the package: prefer Nixpkgs, fallback to -git, fallback to flake input
|
||||
myPkg =
|
||||
pkgs.<myPackage> or
|
||||
pkgs.<myPackage>-git or
|
||||
inputs.<myPackage>.packages.${pkgs.system}.default;
|
||||
in
|
||||
{
|
||||
# Install system-wide
|
||||
environment.systemPackages = [ myPkg ];
|
||||
|
||||
# Home Manager user settings
|
||||
_module.args.hmUsers = {
|
||||
${username} = {
|
||||
home.packages = [ myPkg ];
|
||||
|
||||
# Copy main config into user's home
|
||||
home.file.".config/<myModuleName>/<mainConfigFile>".source = mainConfig;
|
||||
|
||||
# Optional module-specific settings
|
||||
settings.general = {
|
||||
# Example placeholder
|
||||
"example.setting" = "value";
|
||||
};
|
||||
|
||||
# Optional: you can add more files dynamically from assetPath if needed
|
||||
};
|
||||
};
|
||||
}
|
||||