803 Commits

Author SHA1 Message Date
Hadi 69a01839f9 change apps
Former-commit-id: 7aa07cde8e
2025-02-11 20:59:24 +01:00
Hadi 6f66b88206 Merge branch 'main' of github.com:anotherhadi/nixy
Former-commit-id: 4e438e9f78
2025-02-11 20:58:45 +01:00
Hadi 93e9a86212 update flakes
Former-commit-id: ca73bf3af3
2025-02-11 20:58:40 +01:00
Hadi 3283a0f705 remove resurrect
Former-commit-id: af79d8031d
2025-02-11 20:58:30 +01:00
github-actions 229faa0d10 Update KEYBINDINGS-HYPRLAND.md (auto)
Former-commit-id: c5f99341d5
2025-02-04 19:42:52 +00:00
Hadi 69f1612f06 update flake
Former-commit-id: 1f4be60931
2025-02-04 20:42:09 +01:00
Hadi 16a212afae edit
Former-commit-id: 43f27ff383
2025-02-04 20:41:21 +01:00
Hadi 38ff91f5fd change bindings
Former-commit-id: 2433d287f8
2025-02-04 20:41:13 +01:00
Hadi b750d6f30d screenshot to clipboard
Former-commit-id: e4f6f611d6
2025-02-04 20:41:10 +01:00
Hadi e394982570 markdown writting
Former-commit-id: 6f1bcbf4dc
2025-02-04 20:40:54 +01:00
Hadi 6f5c0f371e update flakes
Former-commit-id: 0e5fbb9ea5
2025-01-27 09:53:06 +01:00
Hadi 8079e378bc add mimes for zen
Former-commit-id: 7906679e9a
2025-01-27 08:36:23 +01:00
Hadi c05f40070b change homepage path
Former-commit-id: d694a57ae6
2025-01-27 08:36:12 +01:00
Hadi 3c5af99518 edit nextcloud notes path
Former-commit-id: 2ebed4ab9c
2025-01-27 08:35:50 +01:00
Hadi 180a6dedb1 update flakes
Former-commit-id: 406889a019
2025-01-23 17:49:40 +01:00
Hadi 3318bf045e update my nvim config
Former-commit-id: cd54511aa0
2025-01-23 17:36:26 +01:00
Hadi 43428e0c5d delete old modules
Former-commit-id: 5cc7a65ea1
2025-01-23 17:36:13 +01:00
github-actions 26b43a6201 Update SCRIPTS.md (auto)
Former-commit-id: 726bb896dd
2025-01-22 19:16:05 +00:00
Hadi 645c1c1338 update flakes
Former-commit-id: 57f9723b87
2025-01-22 20:15:49 +01:00
Hadi 36046e308d disable hyprspace, broken
Former-commit-id: d8a45d947b
2025-01-22 20:15:45 +01:00
Hadi bc8aa1eefd temp fix for nvidia drivers
Former-commit-id: b26a7b9dd0
2025-01-22 20:15:38 +01:00
Hadi a5980e584b remove desktop & pia
Former-commit-id: fd8f7de9b1
2025-01-22 19:41:19 +01:00
Hadi 4bbe1c1119 edit theme
Former-commit-id: 44a8ac06ec
2025-01-22 19:41:09 +01:00
Hadi 3799a28915 app test
Former-commit-id: 722efcf03a
2025-01-22 19:41:03 +01:00
Hadi 62c03d7d45 delete desktop
Former-commit-id: a030370542
2025-01-22 19:40:41 +01:00
Hadi 972ea412b1 open vpn scripts
Former-commit-id: f83370b4fa
2025-01-22 19:40:23 +01:00
github-actions b93d46004d Update KEYBINDINGS-HYPRLAND.md (auto)
Former-commit-id: dbe30d164e
2025-01-21 19:55:49 +00:00
Hadi 2ea0a422dd remove systemd.enable
Former-commit-id: 8c92529ef2
2025-01-21 20:55:36 +01:00
Hadi e2954d2439 add keybind to toggle the bar
Former-commit-id: 141f6d8fc1
2025-01-21 20:55:27 +01:00
Hadi 3a87fa8cad open webpage to display wallpapers
Former-commit-id: 2fb93eaff5
2025-01-21 20:55:17 +01:00
Hadi ef639df3b5 fix hyprpanel toggleWindow call
Former-commit-id: 943ea80ac2
2025-01-21 20:54:47 +01:00
Hadi e7650132f3 fix
Former-commit-id: 4d63588ddc
2025-01-21 20:54:37 +01:00
Hadi c8ca262f2d copilot nvim broken on unstable
Former-commit-id: 2962bd8503
2025-01-21 20:54:28 +01:00
Hadi 8bc813900b add duckduckgo colorscheme
Former-commit-id: ed605769b0
2025-01-21 20:54:16 +01:00
Hadi fab8e510b6 update flake
Former-commit-id: c828520da1
2025-01-21 20:54:03 +01:00
Hadi 6a73211266 update theme
Former-commit-id: 5fab44846d
2025-01-21 20:53:59 +01:00
Hadi 67391b1714 flake update
Former-commit-id: f10612b1d1
2025-01-12 20:00:10 +01:00
Hadi 6d903c59f4 fix hyprpanel hide & show
Former-commit-id: 3a34579f35
2025-01-07 21:34:54 +01:00
Hadi cc9c9c9a57 flake update
Former-commit-id: 05aa21e311
2025-01-07 21:34:46 +01:00
Hadi 7c53a49383 edit theme
Former-commit-id: 5b4670d6e2
2025-01-07 20:23:59 +01:00
Hadi a177e123c5 config edit
Former-commit-id: 972490513f
2025-01-07 20:22:54 +01:00
Hadi 6a8fbf18c7 change theme & update flake
Former-commit-id: 868c3b4e4f
2025-01-07 00:27:57 +01:00
Hadi 9b32bd722a update flake & fix nixpkgs error
Former-commit-id: 8f3645996a
2025-01-06 23:35:06 +01:00
Hadi 785fc88903 enable the hyprpanel overlay
Former-commit-id: b1702060f2
2025-01-06 20:58:55 +01:00
Hadi 7bb1d4f48b treesitter ensure installed
Former-commit-id: d158c6160f
2025-01-06 20:58:41 +01:00
Hadi e3c89cdce9 migrate config to hyprpanel v2
Former-commit-id: d7dbea9437
2025-01-02 19:42:41 +01:00
Hadi 3387f719cf new theme!
Former-commit-id: ada0a0761c
2025-01-02 19:42:26 +01:00
Hadi 4c45e854de flakes update
Former-commit-id: 3941e15c5c
2025-01-02 19:01:55 +01:00
Hadi fce14f5b56 update flake
Former-commit-id: f6f203f848
2025-01-02 18:31:06 +01:00
Hadi 8988a6713c add a configuration limit in boot menu
Former-commit-id: ce32ac84fa
2025-01-02 18:31:02 +01:00
Hadi 0c3881a056 enable auto gc
Former-commit-id: 70baebf547
2025-01-02 18:30:54 +01:00
Hadi 1295ef51f2 update flakes
Former-commit-id: 87cf8f6bfa
2024-12-30 20:41:31 +01:00
Hadi 3dbdde790b remove GTK theming
Former-commit-id: 8ceabe0a8a
2024-12-30 20:41:27 +01:00
Hadi c50b2f6fb7 hyprpanel v2 migration
Former-commit-id: d4db565e46
2024-12-30 20:41:20 +01:00
Hadi c30894b82b removed some imports
Former-commit-id: 4551530344
2024-12-30 20:41:12 +01:00
Hadi cb703b7ac6 toolbar-items
Former-commit-id: a957fe856c
2024-12-30 20:40:38 +01:00
Hadi 2b5e649877 Merge pull request #11 from hcw9iu/fix-btop-gpu
Former-commit-id: 50b01f235d
2024-12-22 23:47:53 +01:00
william1209 8ef64ed165 fix btop not show gpu
Former-commit-id: 2a50a895ef
2024-12-23 02:38:42 +08:00
Hadi a52f208ed9 update flakes
Former-commit-id: b6014cc3a1
2024-12-20 21:49:52 +01:00
Hadi 7b3501d595 update flakes
Former-commit-id: dbfc4887f0
2024-12-17 13:55:08 +01:00
Hadi 5d98434404 update flake
Former-commit-id: 277bafd297
2024-12-16 15:47:02 +01:00
Hadi a6b54dab72 update flake
Former-commit-id: d1a14bb22c
2024-12-15 22:01:15 +01:00
Hadi 9a089a473d update flakes
Former-commit-id: 0d1ff6074f
2024-12-12 21:38:50 +01:00
Hadi 3a31822da9 Add typescript LSP
Former-commit-id: 1577960c51
2024-12-12 21:37:18 +01:00
Hadi b4cc023466 Fixed!!
Former-commit-id: 46bf6c9cb3
2024-12-12 21:37:05 +01:00
Hadi 949be45201 update flakes
Former-commit-id: 65acc4d2da
2024-12-09 10:08:01 +01:00
Hadi c1334bbcbf new theme!
Former-commit-id: 89db4101fd
2024-12-06 17:02:23 +01:00
Hadi 6ff7cfde7b update flakes
Former-commit-id: dbe720e366
2024-12-06 16:49:51 +01:00
Hadi 37425c8fb7 remove old temp packages
Former-commit-id: 275178807d
2024-12-06 16:34:02 +01:00
Hadi 6f8ec3d66f add desktop to .sops.yaml
Former-commit-id: e928fcf59a
2024-12-05 23:16:46 +01:00
Hadi 593fb748d5 add secrets
Former-commit-id: b94c673084
2024-12-05 23:04:30 +01:00
Hadi cab201daf6 add desktop host
Former-commit-id: e3e5be7b73
2024-12-05 23:03:57 +01:00
Hadi e16264a74b Change zen input
Former-commit-id: c79a153478
2024-12-05 22:22:01 +01:00
Hadi e706f743dc Merge pull request #9 from underscoregeb/patch-1
new zen url

Former-commit-id: 88c1d7f6e0
2024-12-05 19:23:36 +01:00
geb 2fed544807 new zen url
Former-commit-id: ad8a0ccf53
2024-12-05 08:54:14 -06:00
Hadi 463fc6b83b wallpaper change
Former-commit-id: 30bd93f973
2024-12-04 17:24:13 +01:00
Hadi ce4287b650 flake update
Former-commit-id: a16a9acd49
2024-12-04 17:24:09 +01:00
Hadi 815f76c51f Update flake
Former-commit-id: b3b191831f
2024-12-04 09:19:18 +01:00
github-actions 23161537de Update KEYBINDINGS-HYPRLAND.md (auto)
Former-commit-id: 8309831a6e
2024-12-03 21:46:55 +00:00
Hadi 156826e625 change cursor
Former-commit-id: 4107af5343
2024-12-03 22:46:42 +01:00
Hadi 3ba6ba93cb change browser binding
Former-commit-id: 4a42049faf
2024-12-03 22:46:38 +01:00
Hadi 38d7a0a326 update
Former-commit-id: b8920ade11
2024-12-03 20:08:04 +01:00
Hadi 267b8f3ef0 oops
Former-commit-id: c8c8738bfd
2024-12-03 20:07:49 +01:00
Hadi a740adfbe1 Switch from Firefox to Zen, ...
Former-commit-id: 7add142ab1
2024-12-03 19:36:15 +01:00
Hadi f9e9d2e21b update flake
Former-commit-id: 52213697ea
2024-11-29 22:03:36 +01:00
Hadi e3896ef257 fix nixd encoding
Former-commit-id: ea3d436c6e
2024-11-25 10:24:53 +01:00
Hadi 2979638534 put bindings to hyprspace file
Former-commit-id: b991c66c2e
2024-11-25 10:01:58 +01:00
Hadi 4256b93eb9 move hyprspace to file
Former-commit-id: de8de47de4
2024-11-25 09:59:45 +01:00
Hadi 0144ae28ae Firefox homepage
Former-commit-id: cb041ad452
2024-11-25 09:34:08 +01:00
Hadi 4640a241e5 Firefox config
Former-commit-id: c8aff9ee96
2024-11-25 09:33:56 +01:00
Hadi 1377248513 update flakes
Former-commit-id: a6cc144770
2024-11-19 18:16:55 +01:00
Hadi 2ae2151c04 try transparentBackground config
Former-commit-id: fd4535f566
2024-11-17 19:53:03 +01:00
Hadi 00ef3b45b5 switch to firefox
Former-commit-id: 8a692431e4
2024-11-17 19:52:52 +01:00
Hadi 7ad11967af doesn't build on unstable
Former-commit-id: 69c0605202
2024-11-17 19:52:22 +01:00
Hadi b2031d4b9f add backupFileExtension in HM
Former-commit-id: 887668d962
2024-11-17 19:52:10 +01:00
Hadi 58789a4a3a update flakes
Former-commit-id: d7a03d4a80
2024-11-17 19:51:53 +01:00
Hadi 131b4ff4e9 fix colors for the workspace modules
Former-commit-id: 619b0d3724
2024-11-16 12:06:44 +01:00
Hadi 0153473d3c update flakes & fix
Former-commit-id: 9f1b464ce4
2024-11-16 11:57:00 +01:00
Hadi b34c5ca59e Fix ssh kitty
Former-commit-id: 8b6f98d153
2024-11-14 20:53:26 +01:00
Hadi ba412ce128 update flakes
Former-commit-id: 65a9e23d90
2024-11-08 14:19:32 +01:00
Hadi fe4e69375e change theme
Former-commit-id: 48c334cb5e
2024-11-08 14:19:25 +01:00
Hadi 42a2cc4343 regroup calls
Former-commit-id: 3b45228e47
2024-11-08 14:19:14 +01:00
Hadi b956ab0087 new theme
Former-commit-id: d2aa568fff
2024-11-08 14:18:55 +01:00
Hadi 1af7b9f9d3 Hyprland breaking changes. (Stylix fix, waiting for upstream)
Former-commit-id: f4f9f889ed
2024-11-08 13:32:25 +01:00
Hadi e18224c8b2 update flakes
Former-commit-id: 61a4d11ca4
2024-11-08 11:37:33 +01:00
Hadi 7ea671275c update flakes
Former-commit-id: a43e3e36cf
2024-11-05 15:39:17 +01:00
Hadi dd94c689fb private internet access (vpn)
Former-commit-id: 53efbb88d6
2024-11-05 15:39:11 +01:00
Hadi c09a2a4b7c update todos
Former-commit-id: 67f96bde02
2024-11-05 11:36:03 +01:00
Hadi 8440da49c2 Add colored output for git
Former-commit-id: d721e1bc1c
2024-11-05 11:07:21 +01:00
github-actions 625216c6cc Update SCRIPTS.md (auto)
Former-commit-id: 868cf5d3b3
2024-11-05 10:01:56 +00:00
Hadi 4784054a5b update docs
Former-commit-id: b6f9d2b570
2024-11-05 11:01:41 +01:00
Hadi 961055328c hyprshade -> hyprsunset
Former-commit-id: 8d5eefced0
2024-11-05 10:59:34 +01:00
Hadi 7761e4b44c broken on unstable
Former-commit-id: f343ef25d2
2024-11-05 10:59:01 +01:00
Hadi 351f8b478b update flakes
Former-commit-id: f2b11b84a2
2024-11-05 10:58:49 +01:00
Hadi 10550b1d65 rename underscore
Former-commit-id: c0cdd3fcde
2024-11-05 10:47:07 +01:00
Hadi d31584d9bc update github actions
Former-commit-id: b0bb2016bc
2024-11-05 10:46:24 +01:00
Hadi d1faa73c61 rename underscore
Former-commit-id: 63d38846d8
2024-11-05 10:42:32 +01:00
Hadi 03c2f66d2c update flake
Former-commit-id: 9fc781c7da
2024-11-01 20:01:30 +01:00
Hadi fc2c7550e3 add nh informations
Former-commit-id: 999b3abda5
2024-10-29 11:19:37 +01:00
Hadi 99e100334b init nh
Former-commit-id: 9ffeb42e14
2024-10-29 11:17:40 +01:00
Hadi 9dc676092e switch to nh
Former-commit-id: 1ae412cf5b
2024-10-29 11:12:35 +01:00
Hadi 6fc2b080a8 update todos
Former-commit-id: 46b7f8d1b7
2024-10-29 10:44:49 +01:00
Hadi da88abb7b1 update flake
Former-commit-id: 2551b8c9ec
2024-10-29 09:23:55 +01:00
Hadi e795b1893b init docker
Former-commit-id: 4657ca3d75
2024-10-28 12:56:55 +01:00
Hadi 813fd97d6b disable channels
Former-commit-id: 863253bc74
2024-10-25 18:10:08 +02:00
Hadi ae31cad367 update flake
Former-commit-id: 34e71c0efd
2024-10-25 18:10:01 +02:00
Hadi 2c09922445 Init hyprsunset
Former-commit-id: 9a41310dd7
2024-10-23 20:21:49 +02:00
Hadi 2a9cde726e update todos
Former-commit-id: be5b996255
2024-10-23 20:21:33 +02:00
Hadi 0ee029945b fix mistake
Former-commit-id: 0c169156bb
2024-10-23 20:20:26 +02:00
Hadi 3ea5482490 Init hyprpolkitagent
Former-commit-id: 965ef9e76e
2024-10-23 20:15:46 +02:00
Hadi da2be6568f add nix path to nixd config
Former-commit-id: d7831f4115
2024-10-23 20:00:11 +02:00
Hadi d5b65a09fe add nixpkgs path
Former-commit-id: a74e365403
2024-10-23 19:59:57 +02:00
Hadi a19b627987 update flake
Former-commit-id: f38ee3051c
2024-10-22 20:34:24 +02:00
github-actions a479159044 Update README.md (auto)
Former-commit-id: a1fcbd51d8
2024-10-21 15:08:56 +00:00
Hadi bd3cdbf9eb update readme theme section
Former-commit-id: 4e69c6702f
2024-10-21 17:08:34 +02:00
Hadi 9b2e372286 add the theme variables inside the theme dir
Former-commit-id: ba911dc627
2024-10-21 17:06:15 +02:00
Hadi 2bd844a12c add just to dev packages
Former-commit-id: c36755f90e
2024-10-21 16:54:39 +02:00
Hadi 341910b9fd add position option for hyprpanel
Former-commit-id: 1ac07c3ace
2024-10-21 13:16:27 +02:00
Hadi b350e0cbad Merge branch 'main' of github.com:anotherhadi/nixy
Former-commit-id: 7af05cf3b3
2024-10-21 13:04:00 +02:00
Hadi f9568d1a65 update todos
Former-commit-id: b1a5af1257
2024-10-21 13:03:51 +02:00
github-actions cda5be8ed1 Update KEYBINDINGS-HYPRLAND.md (auto)
Former-commit-id: 893260f073
2024-10-20 18:38:06 +00:00
Hadi 9f0767d932 tofi rules & dbus activation
Former-commit-id: f42dc43810
2024-10-20 20:37:53 +02:00
Hadi 48c04ce469 playerctl shortcuts
Former-commit-id: bb06cc673a
2024-10-20 20:37:10 +02:00
Hadi bb76d72dc8 launch drun through tofi
Former-commit-id: d4761c8c51
2024-10-20 20:36:54 +02:00
Hadi 66a8e8060c Add gpu & disable ghost monitors
Former-commit-id: 6744550bf6
2024-10-17 20:29:08 +02:00
Hadi c13ebbeaea add hints for changeme comments
Former-commit-id: b8b9d16f8c
2024-10-16 18:56:56 +02:00
Hadi aa2fec2609 remove kde connect
Former-commit-id: 4c5963dcaa
2024-10-16 18:56:41 +02:00
Hadi 6f553426e6 add aliases for git reset
Former-commit-id: 968ca31d18
2024-10-16 16:19:20 +02:00
Hadi 3b7ecf820b update todos
Former-commit-id: c283b9cb9c
2024-10-16 16:17:55 +02:00
Hadi 7945ce542a sort by lines
Former-commit-id: 339349661a
2024-10-16 16:16:49 +02:00
github-actions 966bb424f8 Update KEYBINDINGS-HYPRLAND.md (auto)
Former-commit-id: c904a81267
2024-10-15 23:59:19 +00:00
Hadi d515f74707 init quickmenu
Former-commit-id: c9663e1da6
2024-10-16 01:59:04 +02:00
Hadi e984148360 update todos
Former-commit-id: 37c6ba8d1b
2024-10-16 01:29:47 +02:00
Hadi 742d706539 disable autoDrag (overview)
Former-commit-id: 6f052316e9
2024-10-16 01:29:36 +02:00
github-actions 0407ec6844 Update KEYBINDINGS-HYPRLAND.md (auto)
Former-commit-id: 01a5992be0
2024-10-15 23:22:27 +00:00
Hadi 5b7b474925 Init Hyprspace (overview)
Former-commit-id: e0e09df208
2024-10-16 01:22:12 +02:00
Hadi 30eebcce84 fix prompts
Former-commit-id: 0d50980a8d
2024-10-16 00:43:59 +02:00
Hadi cbac917367 add tofi commandw
Former-commit-id: fdec6ed81c
2024-10-16 00:40:40 +02:00
Hadi 982491561e change markdown title highlight
Former-commit-id: f878719b3d
2024-10-15 21:20:43 +02:00
Hadi 427239c54d disable treesitter context
Former-commit-id: 491e29a8fc
2024-10-15 20:15:22 +02:00
Hadi 0675a17166 buttons background color fix if transparent bar
Former-commit-id: e513c2cb44
2024-10-15 19:53:20 +02:00
Hadi 0e468b1aa5 nixy loop prompt fix
Former-commit-id: f36410f05f
2024-10-15 19:53:08 +02:00
Hadi 6c1e0940ac init nixy loop
Former-commit-id: 51c64ace97
2024-10-15 17:42:52 +02:00
Hadi e4f099dea7 Delete .sops.yaml
Former-commit-id: a88496af4f
2024-10-15 17:37:01 +02:00
Hadi 6fcfa9bade remove .sops.yaml from github
Former-commit-id: 3c72f875ed
2024-10-15 17:36:37 +02:00
Hadi edbd970b73 remove .sops.yaml from github
Former-commit-id: 159e4aad23
2024-10-15 17:36:01 +02:00
Hadi 745a9baae9 tmux shortcuts for config
Former-commit-id: 3dee75c5d5
2024-10-15 17:30:47 +02:00
Hadi 43cbd98b22 update flake
Former-commit-id: e5c39e4f2c
2024-10-15 16:54:19 +02:00
Hadi ff11b6a768 update github actions
Former-commit-id: 05fb0f494a
2024-10-15 15:08:08 +02:00
Hadi 7b8774d81f update todos
Former-commit-id: f760d9b564
2024-10-15 15:03:50 +02:00
Hadi 017160cff1 change tab size for markdown
Former-commit-id: 80e52cc5c6
2024-10-15 15:02:39 +02:00
Hadi 949c6dacfd Add comments to explain each file
Former-commit-id: 915a767283
2024-10-15 15:02:07 +02:00
Hadi 7bd210ba3c update markdown tab size
Former-commit-id: 4733414bb3
2024-10-15 14:24:58 +02:00
Hadi 4e2c6cbce5 hyprshot -> grimblast
Former-commit-id: 3910bef1bf
2024-10-15 14:14:12 +02:00
Hadi 35f0fcbb1f add glib
Former-commit-id: 92dded9cc6
2024-10-15 14:05:20 +02:00
Hadi d4f2128b72 update flake
Former-commit-id: 5e94040f34
2024-10-15 13:42:42 +02:00
Hadi d5486d9b86 update todo
Former-commit-id: 178cb469ab
2024-10-15 13:42:12 +02:00
Hadi 044adea965 From flake to nixvim plugin
Former-commit-id: 59202f132e
2024-10-15 03:47:58 +02:00
Hadi b637233137 update todo
Former-commit-id: 9f98570ef4
2024-10-15 03:47:43 +02:00
Hadi 82b96a1900 update todo
Former-commit-id: bcd3bd19f0
2024-10-15 03:28:56 +02:00
github-actions bcec00e51c Update README.md (auto)
Former-commit-id: ad13d77413
2024-10-15 01:22:40 +00:00
Hadi f591bd6b2b edit readme
Former-commit-id: 98d8e2c87d
2024-10-15 03:22:09 +02:00
github-actions 87db8442ed Update README.md (auto)
Former-commit-id: fd87e06e20
2024-10-15 01:20:20 +00:00
Hadi d628b6a5a4 Edit readme
Former-commit-id: 6c9e632ab8
2024-10-15 03:19:53 +02:00
Hadi 95fbe68e96 Edit github actions
Former-commit-id: 66160d6ae2
2024-10-15 03:18:22 +02:00
Hadi 3acb5429cd Changes config screenshots
Former-commit-id: 480ae1761d
2024-10-15 03:17:17 +02:00
Hadi 50304e6fbe Edit aliases
Former-commit-id: 1b41b58e68
2024-10-15 03:16:57 +02:00
Hadi 241757518c Update todolist
Former-commit-id: bbbf23b3b0
2024-10-15 02:47:32 +02:00
Hadi adab419e03 Config lazygit
Former-commit-id: ff2d397191
2024-10-15 02:45:32 +02:00
Hadi 7103042597 Merge branch 'main' of github.com:anotherhadi/nixy
Former-commit-id: afe8e81bf6
2024-10-15 02:34:33 +02:00
Hadi 74dc346ea3 Init lazygit hm module
Former-commit-id: d097caf401
2024-10-15 02:34:18 +02:00
Hadi 47305b4f49 Add git aliases
Former-commit-id: 4b6814ae28
2024-10-15 02:34:00 +02:00
github-actions 05a795fb1f Update README.md (auto)
Former-commit-id: c76675c145
2024-10-15 00:29:21 +00:00
Hadi 0ec9ee4d51 Move files to .github
Former-commit-id: ff86acc8c8
2024-10-15 02:28:55 +02:00
Hadi ba8e07ed87 Edit github actions
Former-commit-id: 7bb5c3b36c
2024-10-15 02:28:24 +02:00
Hadi edc9615f6f Add transparentButtons option in hyprpanel
Former-commit-id: 1c477bacc3
2024-10-15 02:23:14 +02:00
Hadi fbef284ba2 Update todo
Former-commit-id: 391d3dd58b
2024-10-15 02:18:54 +02:00
Hadi 241fa97263 Add lazygit
Former-commit-id: e6dd29dac7
2024-10-15 02:17:45 +02:00
Hadi b155c35a9c Add info
Former-commit-id: 67bed2c355
2024-10-14 22:29:08 +02:00
Hadi df659a917c Update github actions
Former-commit-id: 5ec16c82c4
2024-10-14 22:27:33 +02:00
github-actions 85a0c3d118 Update README.md (auto)
Former-commit-id: 277faa310d
2024-10-14 20:21:09 +00:00
Hadi a08c6833e4 Init tofi
Former-commit-id: 059acab3f9
2024-10-14 22:20:39 +02:00
Hadi 9631d4ef4f Update todolist
Former-commit-id: 95248322f7
2024-10-14 22:20:30 +02:00
Hadi 703bb9ff79 Update readme
Former-commit-id: 0ea82dbf32
2024-10-14 22:20:16 +02:00
Hadi 7f6bf8e405 Update github actions
Former-commit-id: 65b9ab0b7e
2024-10-14 22:19:25 +02:00
Hadi 4ec04c372a Update readme
Former-commit-id: 4fd7e39c4e
2024-10-14 22:14:49 +02:00
Hadi cf12e5c310 Update github actions
Former-commit-id: de477fd3dd
2024-10-14 22:14:30 +02:00
Hadi bfb8cc8880 Update readme
Former-commit-id: 62e6928036
2024-10-14 22:13:13 +02:00
Hadi 35ea4e364b Update github actions
Former-commit-id: 4cfdd8f461
2024-10-14 22:12:52 +02:00
Hadi 5596b17feb Update readme
Former-commit-id: 2909de8e3a
2024-10-14 22:11:18 +02:00
Hadi 234d68d34b Fix github action
Former-commit-id: e2f6c5e1ff
2024-10-14 22:09:29 +02:00
Hadi 1b40ad6547 Update readme
Former-commit-id: 206de96fa2
2024-10-14 22:08:31 +02:00
Hadi d6ea51c5ad Update github actions
Former-commit-id: ff7f46aa5d
2024-10-14 22:07:10 +02:00
Hadi 10b4e2b826 Add white-noise app
Former-commit-id: 34cc630789
2024-10-14 21:23:59 +02:00
Hadi e5fd687524 Update todolist
Former-commit-id: eb4cb4f4f4
2024-10-14 21:23:45 +02:00
Hadi c872dfe1f5 Init KDE Connect
Former-commit-id: 52d7a9f2f0
2024-10-14 21:10:16 +02:00
Hadi 7a37403334 Fix gtk settings key
Former-commit-id: a8dca6d1c1
2024-10-14 20:57:56 +02:00
Hadi 5c8674f619 Flake update
Former-commit-id: d06355d5b7
2024-10-14 20:51:31 +02:00
Hadi 2fe6378221 Add documentation per modules
Former-commit-id: 39f74ee63c
2024-10-14 16:35:57 +02:00
Hadi 417e18f7dc Edit network placement
Former-commit-id: bd57c19a2b
2024-10-14 14:22:14 +02:00
Hadi 6bba61db34 Edit popup font size
Former-commit-id: b9e3f09e7f
2024-10-11 22:33:29 +02:00
Hadi 6525cc6a0b Fix copilot completion key overlap
Former-commit-id: f5388f478b
2024-10-11 13:02:43 +02:00
Hadi 8df6f3faac Edit todo
Former-commit-id: a24167d107
2024-10-10 22:42:02 +02:00
Hadi e6bf30682a Init zenmode
Former-commit-id: 53703c0db0
2024-10-10 22:41:39 +02:00
Hadi 68d78063af merge gh actions updates
Former-commit-id: 6adc0d7c3c
2024-10-10 21:43:33 +02:00
Hadi 623675965c Init hyprswitch
Former-commit-id: 4969b5aa8f
2024-10-10 21:43:24 +02:00
github-actions bf1c8e33a4 Update KEYBINDINGS-HYPRLAND.md (auto)
Former-commit-id: f595e67528
2024-10-10 14:33:34 +00:00
Hadi 28d03937a4 Update
Former-commit-id: b5071b889b
2024-10-10 16:33:21 +02:00
Hadi a53de1dc18 Update
Former-commit-id: fa59c4d8c2
2024-10-10 16:31:30 +02:00
github-actions c85f9f5add Update README.md (auto)
Former-commit-id: 568306aade
2024-10-10 14:29:41 +00:00
Hadi ab5bd64fa8 Update
Former-commit-id: 159ce3c1c2
2024-10-10 16:29:14 +02:00
Hadi 0f587c2d7a Update
Former-commit-id: df52538c42
2024-10-10 15:35:23 +02:00
Hadi 90917d269f Update
Former-commit-id: ee894aaea7
2024-10-10 15:28:25 +02:00
Hadi 4ae0793b12 Update
Former-commit-id: bd7ff1cc20
2024-10-10 15:09:59 +02:00
Hadi 6e50f7cb72 Update
Former-commit-id: 3c2157260d
2024-10-09 18:34:02 +02:00
Hadi 23d9aad7aa Update
Former-commit-id: 36e9281397
2024-10-09 17:09:33 +02:00
Hadi 70baccb96b Put every variables in top of the file for easy copy to another config
Former-commit-id: 0bd55fdc10
2024-10-09 15:12:50 +02:00
Hadi 06a41b3d6e Update
Former-commit-id: 55c7c7068a
2024-10-08 21:56:44 +02:00
Hadi c98f623bbf Update
Former-commit-id: 5603871ef1
2024-10-08 20:46:56 +02:00
Hadi cb2272746f Update
Former-commit-id: a554505de2
2024-10-08 20:07:56 +02:00
Hadi cd943828cc Update
Former-commit-id: 3f0a694b5f
2024-10-08 20:02:45 +02:00
Hadi 8a7a3354eb Update
Former-commit-id: a781a227ac
2024-10-08 13:00:40 +02:00
Hadi aa8f600bd1 Remove duckduckgo theme changing alert
Former-commit-id: 5e8139963f
2024-10-08 12:37:56 +02:00
Hadi 9159b34d59 Update the readme
Former-commit-id: 85b8874094
2024-10-08 12:35:38 +02:00
Hadi becdaf407e Update the readme
Former-commit-id: d7184174cd
2024-10-08 12:34:50 +02:00
Hadi 746f105209 Update
Former-commit-id: 8d7fbd74b5
2024-10-08 12:33:38 +02:00
Hadi 96932de4fa Update
Former-commit-id: 36527362a7
2024-10-08 11:43:12 +02:00
Hadi 69c12bf054 Update
Former-commit-id: e83de257ad
2024-10-08 11:29:59 +02:00
Hadi 16aa758975 Update
Former-commit-id: c401b9bd7f
2024-10-08 10:39:10 +02:00
Hadi 07b4b490ae Update
Former-commit-id: 741a6f97ae
2024-10-08 10:17:01 +02:00
Hadi ecf6ff0627 Update
Former-commit-id: 52e267a436
2024-10-07 20:41:30 +02:00
Hadi c5db47ab0e Update
Former-commit-id: d11cf580f9
2024-10-07 20:27:07 +02:00
Hadi 26bc2fef9a Update
Former-commit-id: d37504de7c
2024-10-07 18:34:06 +02:00
Hadi 27dcbaafa4 Update
Former-commit-id: 8a41ffad2f
2024-10-07 13:13:23 +02:00
Hadi 87695c4e21 Update
Former-commit-id: 3aa0fb8a22
2024-10-07 12:02:26 +02:00
Hadi 3b43b088ba Update
Former-commit-id: 75f2c2c7c6
2024-10-07 11:17:59 +02:00
Hadi 792466d8c6 Update
Former-commit-id: ab65fe342b
2024-10-07 10:13:21 +02:00
Hadi 25be368726 Update
Former-commit-id: 905cc9a885
2024-10-06 18:49:52 +02:00
Hadi 28d0da590c Testing
Former-commit-id: 23dcfd5290
2024-10-05 11:48:16 +02:00
Hadi 064407796e Update
Former-commit-id: 270c1b959e
2024-10-04 21:12:13 +02:00
Hadi 98f75ebf3c Update
Former-commit-id: 58fa41a210
2024-10-04 21:03:01 +02:00
Hadi f7ab27b629 Update
Former-commit-id: 8f6b049129
2024-10-04 10:58:53 +02:00
Hadi 049c0c5803 Update
Former-commit-id: 7047ffe785
2024-10-03 10:18:49 +02:00
Hadi 24e5badf06 Update
Former-commit-id: fe657984fe
2024-10-01 17:16:24 +02:00
Hadi 964c511052 Update
Former-commit-id: 660c99d5ed
2024-10-01 15:05:02 +02:00
Hadi c971073a28 Update
Former-commit-id: 7f1c7446f8
2024-10-01 14:57:15 +02:00
Hadi 6f5fa48009 Update
Former-commit-id: 804e6b255e
2024-10-01 13:58:05 +02:00
Hadi 2c8b7ef08a Update
Former-commit-id: 381e839dfa
2024-10-01 13:21:25 +02:00
Hadi c3f611af88 Update
Former-commit-id: 57c0df5d48
2024-09-30 21:15:21 +02:00
Hadi 4d3b0e5244 Update
Former-commit-id: c1609eefff
2024-09-23 15:12:05 +02:00
Hadi 121991682b Update
Former-commit-id: 22c67467c0
2024-09-20 13:35:40 +02:00
Hadi a80e52d0d0 Update
Former-commit-id: f49ac89514
2024-09-18 23:54:02 +02:00
Hadi 21845bef5f Update
Former-commit-id: e47edc0c1f
2024-09-18 23:53:39 +02:00
Hadi ebdbddf5c0 Update
Former-commit-id: 2721d11575
2024-09-18 00:52:23 +02:00
Hadi cceb96c26b Update
Former-commit-id: c97e51a9d2
2024-09-16 17:28:52 +02:00
Hadi 943eaf2116 Update
Former-commit-id: ac293a378c
2024-09-16 17:24:47 +02:00
Hadi 1d034481e9 Update
Former-commit-id: 615028dcca
2024-09-15 20:58:24 +02:00
Hadi 079e01f71e update
Former-commit-id: feeb938f5e
2024-09-13 22:07:19 +02:00
Hadi f9733872fd Update
Former-commit-id: b6ec38b1a1
2024-09-13 20:04:14 +02:00
Hadi 5a235ce597 Update
Former-commit-id: 86d990f157
2024-09-12 01:36:59 +02:00
Hadi a21e68fe5d Update
Former-commit-id: a16ea9af7d
2024-09-12 00:25:37 +02:00
Hadi f7616d564b Update
Former-commit-id: 7904e497bd
2024-09-11 17:53:25 +02:00
Hadi b1f7498303 Update
Former-commit-id: 7f5e4a8e6d
2024-09-10 09:50:27 +02:00
Hadi 1b6a2dd89e Update
Former-commit-id: 1a7e84a8dd
2024-09-09 13:56:45 +02:00
Hadi f985ded50a Update
Former-commit-id: 381f88cf0d
2024-09-07 17:25:21 +02:00
Hadi 7ecde5089e Update
Former-commit-id: 166c9f3139
2024-09-06 20:19:21 +02:00
Hadi c4415474c3 Update
Former-commit-id: 316e0cd2d3
2024-09-04 22:37:24 +02:00
Hadi a8e6060a92 Update
Former-commit-id: 8fe7237409
2024-09-04 22:36:17 +02:00
Hadi 28e7f5c0dc Update
Former-commit-id: 2ffa7e9518
2024-09-04 22:01:48 +02:00
Hadi 0968954de1 Update
Former-commit-id: cc8d0ddca3
2024-09-04 21:24:51 +02:00
Hadi e6b7406730 update
Former-commit-id: da2aab6f76
2024-09-04 21:07:53 +02:00
Hadi a3d38d8183 update
Former-commit-id: 79403b916d
2024-09-04 21:06:59 +02:00
Hadi 932f6b6dbb Update
Former-commit-id: 0489f7eaa7
2024-09-04 21:04:53 +02:00
Hadi c97948ba09 Release v2.4.0
Former-commit-id: 7ddff66f00
2024-09-04 10:11:28 +02:00
Hadi a4050c3422 Update
Former-commit-id: e1f973cabf
2024-09-04 10:10:52 +02:00
Hadi c025097810 Update
Former-commit-id: e38895c4a5
2024-09-04 10:10:32 +02:00
Hadi 769880a865 Update
Former-commit-id: c2e6fd7d32
2024-09-04 09:34:42 +02:00
Hadi f7d00d972f Update
Former-commit-id: 3d8bcaeeb2
2024-09-04 02:02:57 +02:00
Hadi 3a65e6b9a4 Add wofi clipman
Former-commit-id: 4135134261
2024-09-04 01:53:36 +02:00
Hadi 893417e316 Add wofi emoji
Former-commit-id: 027ef1c398
2024-09-04 01:44:37 +02:00
Hadi 5bf5e9dee3 Change to gammastep
Former-commit-id: 659509e613
2024-09-04 01:40:24 +02:00
Hadi 36d09253cf Update
Former-commit-id: e9a20f49e2
2024-09-02 18:30:30 +02:00
Hadi e69ebdd9d5 Update
Former-commit-id: 75562adea8
2024-09-02 09:29:50 +02:00
Hadi 697a5c3d63 Update
Former-commit-id: 4afca71b91
2024-08-30 17:29:30 +02:00
Hadi 4636723f7c Update
Former-commit-id: 4a8f1be75f
2024-08-30 17:02:38 +02:00
Hadi 7bdbc3fdde Update
Former-commit-id: 4540b40dc4
2024-08-30 16:13:57 +02:00
Hadi 66e52892ba Update
Former-commit-id: fcd5eca04f
2024-08-30 16:06:22 +02:00
Hadi 437fe822ed Update
Former-commit-id: da1b88305d
2024-08-30 15:47:17 +02:00
Hadi 48f7170f4f Update
Former-commit-id: f0e9294982
2024-08-30 14:16:30 +02:00
Hadi 9943a1dacf Update
Former-commit-id: b3f20e6aef
2024-08-30 09:33:57 +02:00
Hadi 6cc1d430a5 Update
Former-commit-id: 48a59c4c55
2024-08-29 22:46:04 +02:00
Hadi 8b5ff95ba3 Update
Former-commit-id: c83e5b2213
2024-08-29 17:04:05 +02:00
Hadi 678098460a Update
Former-commit-id: 55a5c52c51
2024-08-29 14:29:05 +02:00
Hadi 5eb34e05ab Release v2.3.0
Former-commit-id: 90e8d5577e
2024-08-28 12:30:52 +02:00
Hadi e94c09a5e2 Fetch the gtk flatcolor theme folder from github
Former-commit-id: 835a9e9da2
2024-08-28 12:30:04 +02:00
Hadi 0d00056d61 Update
Former-commit-id: 3c171c33be
2024-08-28 11:43:03 +02:00
Hadi 11909b2db3 Update
Former-commit-id: aa8fca0bed
2024-08-26 17:48:05 +02:00
Hadi 50ad65ec50 Update
Former-commit-id: 1255919f41
2024-08-24 17:09:12 +02:00
Hadi 128b9a79c3 update
Former-commit-id: 109f31151d
2024-08-23 11:42:33 +02:00
Hadi e17a7f6e5c update
Former-commit-id: 3c3acd03b4
2024-08-23 11:28:15 +02:00
Hadi 60c6ba9bd1 update
Former-commit-id: 65c95ac82a
2024-08-23 11:28:07 +02:00
Hadi 4362d3ada7 update
Former-commit-id: 776095c817
2024-08-23 11:25:23 +02:00
Hadi e73350a76b update
Former-commit-id: d36952e040
2024-08-23 11:23:16 +02:00
Hadi 71b6f444c2 update
Former-commit-id: ae0480cab3
2024-08-23 10:59:21 +02:00
Hadi 8cb73c1a34 update
Former-commit-id: bd8e69fe44
2024-08-23 10:58:07 +02:00
Hadi 70596d95fb update
Former-commit-id: ddeaf0170d
2024-08-23 10:56:42 +02:00
Hadi d937db8573 update
Former-commit-id: f27b66f878
2024-08-23 10:52:35 +02:00
Hadi 1c6a9f5caa update
Former-commit-id: 574b0043ac
2024-08-23 10:52:11 +02:00
Hadi 3470c61c5e update
Former-commit-id: fbd804939f
2024-08-23 10:51:31 +02:00
Hadi 005aaef5e1 update
Former-commit-id: cfa4e187c5
2024-08-23 10:31:25 +02:00
Hadi 03490447cb update
Former-commit-id: b1d3094bcc
2024-08-23 10:25:43 +02:00
Hadi 280b114e66 update
Former-commit-id: 1f7ca17d94
2024-08-23 10:12:00 +02:00
Hadi ed4eba3d14 update
Former-commit-id: d939bc6f53
2024-08-23 10:11:07 +02:00
Hadi b70aa6661b update
Former-commit-id: 3419421098
2024-08-23 10:09:02 +02:00
Hadi b0507d10ea Update
Former-commit-id: d816099985
2024-08-22 21:02:14 +02:00
Hadi c94a3b85d8 update
Former-commit-id: 28424b82ab
2024-08-22 16:28:08 +02:00
Hadi 04015018a4 update
Former-commit-id: 771dceeb06
2024-08-22 16:11:48 +02:00
Hadi fe1f3fce14 update
Former-commit-id: a2d4d36289
2024-08-22 16:07:39 +02:00
Hadi b1c379221e update
Former-commit-id: e4fce0a17a
2024-08-22 16:06:44 +02:00
Hadi 5812e60eb5 update
Former-commit-id: 88a8168ce2
2024-08-22 16:02:10 +02:00
Hadi e7f2c03502 update
Former-commit-id: 58d809d860
2024-08-22 15:41:28 +02:00
Hadi 9db064e331 update
Former-commit-id: 4b3f43e402
2024-08-22 15:32:46 +02:00
Hadi 7fce5419aa update
Former-commit-id: bbe0574051
2024-08-22 15:28:47 +02:00
Hadi 948542bbd8 Update
Former-commit-id: 3ef71b9fa2
2024-08-22 15:25:32 +02:00
Hadi 4ab85f4f1c Update
Former-commit-id: a240a76a8e
2024-08-20 15:27:18 +02:00
Hadi 7d2e868a03 Update
Former-commit-id: d254085e29
2024-08-20 00:17:10 +02:00
Hadi 5f794cfabd Update
Former-commit-id: ac2223ad24
2024-08-19 22:50:30 +02:00
Hadi f5f37f420d Update
Former-commit-id: 8092a2d348
2024-08-19 22:28:49 +02:00
Hadi b6a0ac38de Update
Former-commit-id: c434816d83
2024-08-19 22:20:59 +02:00
Hadi 56d0aac939 Update
Former-commit-id: 9e8637e9a8
2024-08-19 21:09:21 +02:00
Hadi 9e6dbb465b Update
Former-commit-id: d1896b626b
2024-08-19 20:40:29 +02:00
Hadi 4875fce088 Release v2.2.0
Former-commit-id: e6f66110f0
2024-08-19 20:32:10 +02:00
Hadi 6ff18b7d15 Update
Former-commit-id: caaa500232
2024-08-19 19:42:20 +02:00
Hadi a6526de2a4 Update
Former-commit-id: e27d43df71
2024-08-19 19:41:24 +02:00
Hadi bf04dce6d5 Update
Former-commit-id: 79a69d245c
2024-08-19 19:36:21 +02:00
Hadi fdabd7edf9 Update
Former-commit-id: 849eb5dd11
2024-08-19 00:38:27 +02:00
Hadi a13ea2b8da Update
Former-commit-id: 31ac58592e
2024-08-19 00:15:43 +02:00
Hadi 0473880942 Update
Former-commit-id: b9fda769bc
2024-08-18 23:57:00 +02:00
Hadi c2afa515ee Update
Former-commit-id: 94c88e04f2
2024-08-18 23:56:48 +02:00
Hadi ecee3e4daa Update
Former-commit-id: 9d74ac9d82
2024-08-18 23:52:21 +02:00
Hadi 39c70d2152 Update
Former-commit-id: a64c79ae22
2024-08-18 23:43:17 +02:00
Hadi c6cc2b3e2b Release v2.1.0
Former-commit-id: a134abdea3
2024-08-18 23:40:47 +02:00
Hadi 61eac2f021 Update
Former-commit-id: 957b148656
2024-08-18 23:29:31 +02:00
Hadi 55cfb67493 Update
Former-commit-id: 7fab715859
2024-08-18 23:29:08 +02:00
Hadi 082fbb2130 Update
Former-commit-id: 246b5b6c8e
2024-08-11 12:02:11 +02:00
Hadi 207caa7ba5 Update
Former-commit-id: a318562aa7
2024-08-10 13:28:07 +02:00
Hadi 9d03a16364 Update
Former-commit-id: 4ec671e6b4
2024-08-02 20:53:58 +02:00
Hadi 7832f5f750 Update
Former-commit-id: e3f4493865
2024-07-29 19:34:43 +02:00
Hadi c9775af4ea Update
Former-commit-id: 5c5a2796f6
2024-07-25 23:23:11 +02:00
Hadi 146afb1de5 Update
Former-commit-id: a7bd5ad28b
2024-07-24 23:38:16 +02:00
Hadi e9e7d4f06f Update
Former-commit-id: 830dc909e2
2024-07-22 22:32:10 +02:00
Hadi 273fd77b86 Update
Former-commit-id: 351dc0ebb3
2024-07-22 21:49:19 +02:00
Hadi cf04176b10 Update
Former-commit-id: aff363f37d
2024-07-21 22:20:55 +02:00
Hadi eb3083346f Update
Former-commit-id: fdd41cf848
2024-07-19 13:03:34 +02:00
Hadi 5078a34ee3 Update
Former-commit-id: 308cbfcb19
2024-07-13 12:04:41 +02:00
Hadi b5f27c6ed6 Update
Former-commit-id: 1dc5190c43
2024-07-11 16:07:04 +02:00
Hadi cb7c2f3c40 Update
Former-commit-id: 8412b4dd93
2024-07-09 16:20:53 +02:00
Hadi 3e6f8b856d Update
Former-commit-id: 04d2e91dd5
2024-07-09 15:01:41 +02:00
Hadi 38b516453a Update
Former-commit-id: 70459117ed
2024-07-09 14:16:50 +02:00
Hadi 2e9fd1710f Update
Former-commit-id: 87ee1c7738
2024-07-09 14:00:14 +02:00
Hadi 4b8593b097 Update
Former-commit-id: 0509eba07f
2024-07-09 13:41:42 +02:00
Hadi fd5dfea2c4 Update
Former-commit-id: 9142814f8f
2024-07-09 12:05:04 +02:00
Hadi b623474fc0 Update
Former-commit-id: 33a9386356
2024-07-09 11:44:32 +02:00
Hadi ffcd2c0c19 Update
Former-commit-id: fb73cce28a
2024-07-09 11:12:41 +02:00
Hadi aa1a9c25d7 Update
Former-commit-id: e0c24bf068
2024-07-09 09:47:29 +02:00
Hadi cd837e208e Update
Former-commit-id: 8e63ef0b46
2024-07-09 09:38:51 +02:00
Hadi eca9b216ba Merge branch 'main' of github.com:anotherhadi/nixy
Update


Former-commit-id: e107b25a2f
2024-07-09 09:33:49 +02:00
Hadi f1bff29cd9 Update
Former-commit-id: 841f9625e9
2024-07-09 09:33:21 +02:00
Hadi e452d79f0c update
Former-commit-id: ddddd3b4a4
2024-07-08 07:45:56 +00:00
Hadi 0fb184e8d3 Update
Former-commit-id: a73a50aa1f
2024-07-06 00:37:24 +02:00
Hadi 5b337e5e94 Update
Former-commit-id: cd7db37ccd
2024-07-06 00:35:41 +02:00
Hadi 498c03decc Update
Former-commit-id: 9931071846
2024-07-05 14:56:19 +02:00
Hadi 5f6fb011a2 Update
Former-commit-id: de4347765c
2024-07-05 10:16:16 +02:00
Hadi 46b913a7d3 Update
Former-commit-id: 5bee2d6931
2024-07-05 09:20:58 +02:00
Hadi 0ecb821342 Update
Former-commit-id: 7dc7cfcaba
2024-07-05 09:09:43 +02:00
Hadi f7d23ddee9 Update
Former-commit-id: a8d37c3fcd
2024-07-05 08:49:18 +02:00
Hadi fb63d4c0e9 Update
Former-commit-id: fa6d5d50bd
2024-07-02 12:18:49 +02:00
Hadi 9bddf6dab9 update
Former-commit-id: fdff88cc9d
2024-07-01 13:15:24 +00:00
Hadi 2f39827f03 nixvim refactor
Former-commit-id: 55caf123df
2024-07-01 13:07:12 +00:00
Hadi 41a6417a2d Update
Former-commit-id: 88ae1d29a5
2024-07-01 13:04:32 +02:00
Hadi 02331d9deb update todos
Former-commit-id: 51739ac610
2024-07-01 08:41:07 +00:00
Hadi 742aa325aa update
Former-commit-id: 76a6f6cd6e
2024-07-01 08:34:04 +00:00
Hadi 6d487ab9f0 update
Former-commit-id: 7ef2c71725
2024-07-01 08:32:49 +00:00
Hadi a0f7128a28 update
Former-commit-id: 81574fd7bc
2024-07-01 08:31:12 +00:00
Hadi fdd5d685d6 Add wallpapers
Former-commit-id: ba9dde2c1a
2024-07-01 10:13:17 +02:00
Hadi 62213109f7 update
Former-commit-id: 93837b6bea
2024-06-30 18:01:52 +02:00
Hadi 9c43c89a3f Update
Former-commit-id: 8b76bf48a6
2024-06-30 17:59:39 +02:00
Hadi 9c1fc992e2 update
Former-commit-id: c80ddff8eb
2024-06-30 17:46:32 +02:00
Hadi cc2b0989d3 update
Former-commit-id: c4d436b434
2024-06-30 17:42:09 +02:00
Hadi 3ee5f2097d update
Former-commit-id: dae8755b59
2024-06-30 17:35:58 +02:00
Hadi 5657e0b24c Update
Former-commit-id: 7c0216b1fb
2024-06-30 17:32:42 +02:00
Hadi b51725e7cd Update
Former-commit-id: 40ffce6605
2024-06-29 00:18:07 +02:00
Hadi 86f8c99554 Update
Former-commit-id: 56c2c41b68
2024-06-28 16:35:49 +02:00
Hadi c256b870aa Update
Former-commit-id: 06f5e03e66
2024-06-28 16:32:52 +02:00
Hadi 94103e9dfb Update
Former-commit-id: 921c359693
2024-06-28 15:02:53 +02:00
Hadi af6319c8ec update
Former-commit-id: 1f35859f2c
2024-06-28 14:35:35 +02:00
Hadi 6edda0e6e1 Update
Former-commit-id: 71f405e633
2024-06-28 01:24:27 +02:00
Hadi 3ba7648eb0 update
Former-commit-id: 84b645e181
2024-06-28 01:11:49 +02:00
Hadi 484d82a788 update
Former-commit-id: 5857299c20
2024-06-28 01:10:09 +02:00
Hadi be0d934622 update
Former-commit-id: ec24cde14f
2024-06-28 01:07:53 +02:00
Hadi abab0d1b96 update
Former-commit-id: 3f79044a2a
2024-06-28 01:07:24 +02:00
Hadi 9dd462b0b8 Update
Former-commit-id: cf6ea202e1
2024-06-28 00:58:12 +02:00
Hadi 28404f07cd Update
Former-commit-id: 84f87f9833
2024-06-27 19:42:08 +02:00
Hadi eb0e205e99 Update
Former-commit-id: ae6818ed65
2024-06-27 18:32:17 +02:00
Hadi 0c856fe2d2 update
Former-commit-id: cd7b35389e
2024-06-27 09:49:24 +00:00
Hadi 26452fbf23 update
Former-commit-id: c8c81e20ae
2024-06-27 09:20:44 +00:00
Hadi 6f2ad22139 golang bin to $PATH
Former-commit-id: 2972b4238c
2024-06-27 08:45:21 +00:00
Hadi e79b8ac14c update
Former-commit-id: b35d35f3d5
2024-06-27 08:42:42 +00:00
Hadi 9826faa7d0 update
Former-commit-id: bde31a4934
2024-06-27 08:32:24 +00:00
Hadi 68e5393f5d update
Former-commit-id: 170287e948
2024-06-27 08:31:28 +00:00
Hadi f3e7766229 create keybindings doc
Former-commit-id: 5d14ec00b5
2024-06-27 08:24:13 +00:00
Hadi 76f7b763cf Merge branch 'main' of https://github.com/anotherhadi/nixy
Former-commit-id: f6209d0754
2024-06-27 07:50:31 +00:00
Hadi 51191f82c7 update todo
Former-commit-id: 9e906c161a
2024-06-27 07:46:24 +00:00
Hadi e86c831653 Update
Former-commit-id: 071ce93f11
2024-06-27 00:11:54 +02:00
Hadi 91f8e392ef Update
Former-commit-id: a9939a0f54
2024-06-27 00:10:09 +02:00
Hadi 7ce04c1ae9 Update
Former-commit-id: 9cf68648eb
2024-06-26 22:18:39 +02:00
Hadi 1aff187d21 Update
Former-commit-id: 652377bd9b
2024-06-26 22:17:03 +02:00
Hadi 856c0c3212 Update
Former-commit-id: dd9c61b9ff
2024-06-26 22:13:14 +02:00
Hadi acfaa9d9e8 update
Former-commit-id: c00458c02a
2024-06-26 21:30:04 +02:00
Hadi 20307f9096 Update
Former-commit-id: 1df0f31dbc
2024-06-26 21:19:04 +02:00
Hadi ff1d70ba79 add md-table-of-contents source
Former-commit-id: 6a8382c79e
2024-06-26 14:46:22 +00:00
Hadi 188e34a575 update
Former-commit-id: 1ed7675095
2024-06-26 14:44:08 +00:00
Hadi 373c2d4546 Update
Former-commit-id: 57cab5fa52
2024-06-26 12:31:58 +02:00
Hadi ae1335d4d2 update
Former-commit-id: 3cfb9e733a
2024-06-26 10:32:58 +02:00
Hadi 70e9831d3a Update
Former-commit-id: bb4617160c
2024-06-25 22:22:26 +02:00
Hadi 446e610c59 update
Former-commit-id: 80f8ca3e9a
2024-06-25 22:20:17 +02:00
Hadi 894e9872c3 Update
Former-commit-id: c618feced4
2024-06-25 21:57:24 +02:00
Hadi f00d34f38b Update
Former-commit-id: 6f6c8bebf7
2024-06-25 18:10:20 +02:00
Hadi 93395308a0 Update
Former-commit-id: 6d0855ce44
2024-06-25 18:02:38 +02:00
Hadi 3fcd3c316f update
Former-commit-id: 32af0cf534
2024-06-25 11:57:53 +02:00
Hadi 07a2b77f84 init keybindings.md
Former-commit-id: 0b4f2d6970
2024-06-25 11:47:15 +02:00
Hadi 1a28823b3b install script test
Former-commit-id: b4947a61c5
2024-06-25 11:39:34 +02:00
Hadi 597afc0b39 up
Former-commit-id: 4e5cdbbac5
2024-06-25 09:49:11 +02:00
Hadi 540636df16 version pull
Former-commit-id: c0a0afd077
2024-06-25 09:26:10 +02:00
Hadi 1c8b68182a Update TODO.md
Former-commit-id: e047f99306
2024-06-24 22:31:49 +02:00
Hadi dee40034cd rearrange folders
Former-commit-id: fbb6fe70ff
2024-06-24 21:18:20 +02:00
Hadi cb347c715b Change notification system
Former-commit-id: 3b84f735ee
2024-06-24 21:13:22 +02:00
Hadi 0e683e111f Fix
Former-commit-id: 1cdfe8e278
2024-06-24 20:44:09 +02:00
Hadi ceb8e98fbf Update TODO.md
Former-commit-id: 1eb830a97c
2024-06-24 16:37:59 +02:00
Hadi da50226d9f todo update
Former-commit-id: ec924af562
2024-06-24 14:35:46 +02:00
Hadi 3ba87d750f update
Former-commit-id: 5d47643320
2024-06-24 11:05:38 +02:00
Hadi 2cab0e6903 Update
Former-commit-id: 282c04af67
2024-06-24 00:40:05 +02:00
Hadi 846e83545f Update
Former-commit-id: 7397237149
2024-06-24 00:33:36 +02:00
Hadi 14b568ae7d Update
Former-commit-id: 1a4ff5e542
2024-06-24 00:17:07 +02:00
Hadi 1fc8bce262 Update
Former-commit-id: 0cec3f04d2
2024-06-24 00:12:53 +02:00
Hadi 16f8d6d8b3 Update
Former-commit-id: 87ae5dd36f
2024-06-24 00:10:35 +02:00
Hadi ae337d1631 update
Former-commit-id: 2e31e74d92
2024-06-23 23:51:07 +02:00
Hadi c9959e4715 update
Former-commit-id: 0922357af2
2024-06-23 23:47:31 +02:00
Hadi 26fd7e8775 update
Former-commit-id: 1d298c60d5
2024-06-23 23:43:47 +02:00
Hadi 1819e78c0b update
Former-commit-id: d5aa5b1a49
2024-06-23 23:32:18 +02:00
Hadi e26a6eb442 update
Former-commit-id: 469f903657
2024-06-23 20:11:35 +02:00
Hadi 4cc072fa14 update
Former-commit-id: ae95a1b457
2024-06-23 20:10:15 +02:00
Hadi 46436db4a5 update
Former-commit-id: 101712c8bb
2024-06-23 19:59:53 +02:00
Hadi 1e0f379981 update
Former-commit-id: 5dce9af547
2024-06-23 19:54:21 +02:00
Hadi 2027dd0cd1 update
Former-commit-id: d215570fea
2024-06-23 18:35:16 +02:00
Hadi 59be989faa update
Former-commit-id: aa7801b04f
2024-06-23 18:32:04 +02:00
Hadi fadb6fcfd8 update
Former-commit-id: d1789906a2
2024-06-23 18:28:15 +02:00
Hadi 988f7a68db update
Former-commit-id: a4f74f5fe7
2024-06-23 18:26:25 +02:00
Hadi 60ef1c61f2 update
Former-commit-id: afd56d878e
2024-06-23 18:24:30 +02:00
Hadi a70bb23316 update
Former-commit-id: 12ebcadd71
2024-06-23 17:53:09 +02:00
Hadi 186d1c69de update
Former-commit-id: c5420f8d3a
2024-06-23 17:52:19 +02:00
Hadi 90f0adb29e Update
Former-commit-id: f8786dd24f
2024-06-23 17:32:18 +02:00
Hadi 11a12e6ca6 Update
Former-commit-id: caee38f568
2024-06-23 15:48:52 +02:00
Hadi ec1c7f1dc6 Update
Former-commit-id: 487d81ff86
2024-06-23 15:14:29 +02:00
Hadi e8f3660561 Update
Former-commit-id: 4046038cf2
2024-06-23 14:53:23 +02:00
Hadi 173c2f89fc Update
Former-commit-id: e9a5a9e574
2024-06-23 14:52:35 +02:00
Hadi 577d33bdd1 Update
Former-commit-id: 98f708d693
2024-06-23 14:50:06 +02:00
Hadi 5d09cd1097 Update
Former-commit-id: 66cd92d740
2024-06-23 14:47:22 +02:00
Hadi ade814e4af Update
Former-commit-id: 2b5813057c
2024-06-23 14:46:11 +02:00
Hadi 4c39b0044d Update
Former-commit-id: bbb35737c2
2024-06-23 14:45:51 +02:00
Hadi 08c43f4771 Update
Former-commit-id: 1efdadbdad
2024-06-23 14:23:36 +02:00
Hadi def4d2a994 Update
Former-commit-id: 9f98ec2a52
2024-06-23 14:22:01 +02:00
Hadi 7256d94c49 Update
Former-commit-id: 6f8c9d7836
2024-06-23 14:19:45 +02:00
Hadi 52345c06cd Add remote rebuild (server)
Former-commit-id: d1f5aa6dfa
2024-06-23 13:53:01 +02:00
Hadi 26f6c935af Update
Former-commit-id: 54eb13bc40
2024-06-23 13:46:07 +02:00
Hadi 7aa0413931 Update
Former-commit-id: f29e68ef63
2024-06-23 13:36:37 +02:00
Hadi 04b54566b1 Update
Former-commit-id: 8260c9d554
2024-06-21 15:49:16 +02:00
Hadi ff0e41c73f Update
Former-commit-id: ec5b132e17
2024-06-21 15:48:37 +02:00
Hadi b070d20ef4 Update
Former-commit-id: 45c0175d72
2024-06-21 15:25:14 +02:00
Hadi 5849179d0b Update
Former-commit-id: 154c21859d
2024-06-21 13:58:14 +02:00
Hadi 9aa13777c5 Update
Former-commit-id: d100690333
2024-06-21 13:45:59 +02:00
Hadi 79ca8b68a8 Update
Former-commit-id: 9fd64e9f04
2024-06-21 13:44:56 +02:00
Hadi 99038231a8 Update
Former-commit-id: 909c32fef8
2024-06-21 13:42:14 +02:00
Hadi 5c877f5f76 Update
Former-commit-id: feea4f5ad9
2024-06-21 13:14:54 +02:00
Hadi 2beda6180b Update
Former-commit-id: 1ce9d2e46f
2024-06-20 18:04:50 +02:00
Hadi 3921780961 Update
Former-commit-id: ae48fb8605
2024-06-20 17:43:20 +02:00
Hadi 6d856f0bfa Update
Former-commit-id: 636d921341
2024-06-20 17:34:56 +02:00
Hadi 7ef5dac5cb Update
Former-commit-id: fa7ec583b6
2024-06-20 17:33:40 +02:00
Hadi ada5bebfe0 Update
Former-commit-id: a723bd6087
2024-06-20 17:30:14 +02:00
Hadi fd472e7abc Update
Former-commit-id: 3950c68160
2024-06-20 17:08:25 +02:00
Hadi 67c02f59de Update
Former-commit-id: 4653a9e86f
2024-06-20 16:39:59 +02:00
Hadi 34a090cb13 Update
Former-commit-id: 9e191c76eb
2024-06-20 16:32:27 +02:00
Hadi 6c66562c77 Update
Former-commit-id: 2996ca0d12
2024-06-20 15:43:04 +02:00
Hadi 44474f2cbb Update
Former-commit-id: c7beef1880
2024-06-20 15:41:54 +02:00
Hadi 0c34497671 Update
Former-commit-id: 1a3c28f69a
2024-06-20 15:35:06 +02:00
Hadi 957d749df5 Update
Former-commit-id: 597f88adab
2024-06-20 15:33:42 +02:00
Hadi 23e45b3679 Update
Former-commit-id: 85a4a4ad2a
2024-06-20 15:31:01 +02:00
Hadi 58f45a48b4 Update
Former-commit-id: e078d81b51
2024-06-20 15:29:25 +02:00
Hadi 64884b1367 Update
Former-commit-id: b676e1bdbb
2024-06-20 15:27:32 +02:00
Hadi 41808ad011 Update
Former-commit-id: 83252b0da5
2024-06-20 15:16:28 +02:00
Hadi f1f9ee57f0 Update
Former-commit-id: 56b09db387
2024-06-20 15:13:02 +02:00
Hadi 2fa2d20c8b Update
Former-commit-id: 6f998c79ab
2024-06-20 15:07:15 +02:00
Hadi d1047e2abf Update
Former-commit-id: 4bec772eb2
2024-06-20 12:10:00 +02:00
Hadi eb75f6e451 Update
Former-commit-id: 5bdbfb3a5f
2024-06-20 12:09:20 +02:00
Hadi 95329e82fb Update
Former-commit-id: 0cc6e18f3d
2024-06-20 11:45:19 +02:00
Hadi c139f1c12a Update
Former-commit-id: f9bd98bc58
2024-06-20 11:42:57 +02:00
Hadi 4ead1d07ae Update
Former-commit-id: 81e72e574d
2024-06-20 11:41:28 +02:00
Hadi 81d9c22cbc Update
Former-commit-id: fe393e3c2a
2024-06-20 11:38:53 +02:00
Hadi 5da1dcccba Update
Former-commit-id: e0803c6bd5
2024-06-20 11:31:02 +02:00
Hadi 6a950d4bcc Update
Former-commit-id: f761b8c66a
2024-06-20 11:27:41 +02:00
Hadi 26263eee48 Update
Former-commit-id: 01b056d4cb
2024-06-20 11:25:35 +02:00
Hadi ba0a151f1e Update
Former-commit-id: 73ac8d8188
2024-06-20 11:24:41 +02:00
Hadi 2c5be469f0 Update TODO.md
Former-commit-id: b90999d5b6
2024-06-20 09:39:02 +02:00
Hadi 9728b2ed6b Update TODO.md
Former-commit-id: 365fab9659
2024-06-20 02:47:27 +02:00
Hadi 2255bd8d7c Update
Former-commit-id: a0c5bd962b
2024-06-20 02:45:24 +02:00
Hadi 7617488f52 Fix
Former-commit-id: b796117725
2024-06-20 01:55:49 +02:00
Hadi c0b0ed81c8 Update
Former-commit-id: 1b4cd64024
2024-06-20 01:31:30 +02:00
Hadi 4ab75fb583 Update
Former-commit-id: 8ec1744969
2024-06-20 01:23:20 +02:00
Hadi 339eb8877c Update
Former-commit-id: b44a2e17f9
2024-06-20 00:25:10 +02:00
Hadi 2e92ce971e Update
Former-commit-id: de9b1de37c
2024-06-20 00:17:59 +02:00
Hadi 51e58883fa Update
Former-commit-id: e94276c144
2024-06-20 00:15:18 +02:00
Hadi 59fe18dcd6 Update
Former-commit-id: 0114f7281b
2024-06-20 00:14:15 +02:00
Hadi d543f308b3 Update
Former-commit-id: 5db186ba9b
2024-06-20 00:07:23 +02:00
Hadi 0881baf082 Update
Former-commit-id: eec2b56fcd
2024-06-20 00:06:06 +02:00
Hadi 3f4590bda4 Update
Former-commit-id: 265651c931
2024-06-19 23:59:20 +02:00
Hadi c692d33216 Update
Former-commit-id: 7e5c45d406
2024-06-19 23:53:17 +02:00
Hadi 33de46de17 Update
Former-commit-id: ae9ffdf2a8
2024-06-19 23:52:10 +02:00
Hadi ff55504616 Update
Former-commit-id: 325f8e9d15
2024-06-19 23:51:36 +02:00
Hadi 627435b452 Update
Former-commit-id: 29905a460b
2024-06-19 23:49:03 +02:00
Hadi 64f057b1b1 Update
Former-commit-id: 92e8eb8983
2024-06-19 23:48:36 +02:00
Hadi f6f4acf2b6 Update
Former-commit-id: cafce8e7c9
2024-06-19 23:47:35 +02:00
Hadi 44b79b0ff0 Update
Former-commit-id: 21482d4a44
2024-06-19 23:45:03 +02:00
Hadi f5887c9f24 Update
Former-commit-id: 1b3cc99197
2024-06-19 23:42:42 +02:00
Hadi 178aeb2aac Update
Former-commit-id: adecf1bc29
2024-06-19 23:39:30 +02:00
Hadi 8e8caed609 Update
Former-commit-id: a272a038f1
2024-06-19 23:38:04 +02:00
Hadi 92c1b38ca5 Update
Former-commit-id: a6d3e17135
2024-06-19 23:32:31 +02:00
Hadi 9f196b8fb8 Update
Former-commit-id: 0e291d3388
2024-06-19 23:28:50 +02:00
Hadi a8ad3a28fb Update
Former-commit-id: c852176e0d
2024-06-19 23:28:13 +02:00
Hadi 19f5613c74 Update
Former-commit-id: ad339a19a6
2024-06-19 23:23:29 +02:00
Hadi 35848dfd62 Update
Former-commit-id: aad8b9d8e6
2024-06-19 23:21:24 +02:00
Hadi a37fda47ea Update
Former-commit-id: debb139aeb
2024-06-19 23:20:49 +02:00
Hadi 60f5d20cbe Update
Former-commit-id: 939597dd90
2024-06-19 23:15:52 +02:00
Hadi 6a808cbc89 Update
Former-commit-id: 7a89711897
2024-06-19 23:11:37 +02:00
Hadi 75f9e08d7b Update
Former-commit-id: e51b20e4ab
2024-06-19 23:07:47 +02:00
Hadi 1d7d1e1c89 Update
Former-commit-id: 9dbc87c010
2024-06-19 23:02:56 +02:00
Hadi b8356528ba Update
Former-commit-id: 137dd150fd
2024-06-19 22:59:06 +02:00
Hadi 602423d9ae Update
Former-commit-id: 6e66f200a3
2024-06-19 22:57:14 +02:00
Hadi 295085c7e9 Update
Former-commit-id: 28dcb1f574
2024-06-19 22:50:58 +02:00
Hadi 872735897c Update
Former-commit-id: 536de64d5c
2024-06-19 22:48:21 +02:00
Hadi b064228958 Update
Former-commit-id: ac1c7da665
2024-06-19 22:47:37 +02:00
Hadi 156ca28cbf Update
Former-commit-id: d3604fa6cf
2024-06-19 22:47:13 +02:00
Hadi cd08d5ad46 Update
Former-commit-id: 241a91487c
2024-06-19 22:46:33 +02:00
Hadi 109cd5075b Update
Former-commit-id: 2f2aad2b91
2024-06-19 22:45:37 +02:00
Hadi bbdf394dda Update
Former-commit-id: ce756d2f78
2024-06-19 22:44:55 +02:00
Hadi c1ace49f38 Update
Former-commit-id: 94cb2758e6
2024-06-19 22:40:01 +02:00
Hadi 05c1fe6313 Update
Former-commit-id: 50ee6b2dbf
2024-06-19 22:39:12 +02:00
Hadi a94489d52d Update
Former-commit-id: 0949607442
2024-06-19 22:37:52 +02:00
Hadi 2db08a1a06 Update
Former-commit-id: 12e8e9e870
2024-06-19 22:36:42 +02:00
Hadi abf9f53eee Update
Former-commit-id: aa519ba3ee
2024-06-19 22:36:18 +02:00
Hadi 33e9ca6021 Update
Former-commit-id: 2cd6b6be58
2024-06-19 22:33:48 +02:00
Hadi 601306033d Update
Former-commit-id: 3939348e1b
2024-06-19 22:32:03 +02:00
Hadi a67177bbb3 Update
Former-commit-id: 26767f861c
2024-06-19 21:53:34 +02:00
Hadi 13cecc6f19 Update
Former-commit-id: adbbcec22c
2024-06-19 21:52:46 +02:00
Hadi 83ee267214 Update
Former-commit-id: f868a937d5
2024-06-19 21:50:36 +02:00
Hadi 7322f50f14 Update
Former-commit-id: c9ba9b30fe
2024-06-19 21:47:33 +02:00
Hadi e91e838528 Update
Former-commit-id: f2b659add1
2024-06-19 21:43:28 +02:00
Hadi 332caad470 Update
Former-commit-id: c18fffcb3d
2024-06-19 21:42:12 +02:00
Hadi de1ef7f45e test
Former-commit-id: b5fe18ab2f
2024-06-19 21:41:04 +02:00
Hadi 6375bcaf34 add hardware config
Former-commit-id: 115c6345c3
2024-06-19 21:31:18 +02:00
Hadi 12394f2945 Update
Former-commit-id: 884abe9e6c
2024-06-19 21:22:41 +02:00
Hadi 4e7ae503f8 Update
Former-commit-id: d877b40d0b
2024-06-19 21:18:28 +02:00
Hadi 53ae7625af test
Former-commit-id: 530e9d8bea
2024-06-19 21:17:54 +02:00
Hadi ba48ce3942 Update
Former-commit-id: d9e4bd4cd1
2024-06-19 21:16:15 +02:00
Hadi 9a236765ed Update
Former-commit-id: 4cba1f2acf
2024-06-19 21:12:30 +02:00
Hadi 355c13c8f0 Update
Former-commit-id: 8c0c636ec8
2024-06-19 21:05:03 +02:00
Hadi 0810128ee4 Update
Former-commit-id: 39a4b5cc00
2024-06-19 21:03:58 +02:00
Hadi be7548e10a Update
Former-commit-id: a5e4015cf3
2024-06-19 21:01:08 +02:00
Hadi b3df107c36 Update
Former-commit-id: 5414f49671
2024-06-19 21:01:01 +02:00
Hadi 56df3723d2 Update
Former-commit-id: 10f3754b0a
2024-06-19 09:55:58 +02:00
Hadi 27abeac6db Update
Former-commit-id: 063534079d
2024-06-18 19:15:19 +02:00
Hadi da81e80716 Update
Former-commit-id: d4abd221c0
2024-06-18 19:14:18 +02:00
Hadi d70cf4ebe7 Update
Former-commit-id: 77696506bc
2024-06-18 19:13:15 +02:00
Hadi ab11bf5b91 Update
Former-commit-id: 05932e597c
2024-06-18 19:05:40 +02:00
Hadi 88ff53dc29 Update README.md
Former-commit-id: 6606762bca
2024-06-18 15:49:32 +02:00
Hadi d93dda3f6d change image
Former-commit-id: e0bae26b5d
2024-06-18 15:44:27 +02:00
Hadi fed0845912 Update README.md
Former-commit-id: cd91c40f7d
2024-06-18 15:43:27 +02:00
Hadi f18c96bcea Add files via upload
Former-commit-id: 07e81831fa
2024-06-18 15:42:24 +02:00
Hadi dd81dc8e54 Add files via upload
Former-commit-id: a900a2a121
2024-06-18 15:34:25 +02:00
Hadi 67dae73157 update readme colors
Former-commit-id: d2916aa984
2024-06-18 15:25:59 +02:00
Hadi 27cffd8917 edit
Former-commit-id: f79b67c04e
2024-06-18 14:39:51 +02:00
Hadi 5338fa3c93 move nextcloud to home manager
Former-commit-id: 6c936a12f1
2024-06-18 14:32:35 +02:00
Hadi 9ab398c6d2 update todo
Former-commit-id: b5ae490899
2024-06-18 14:26:49 +02:00
Hadi 1a1ec40517 todo update
Former-commit-id: fd9b7ea141
2024-06-18 14:20:23 +02:00
Hadi ab6813996d update
Former-commit-id: c11a21a34a
2024-06-18 14:09:55 +02:00
Hadi d84912df76 fix
Former-commit-id: ba09c5cfe3
2024-06-18 14:07:48 +02:00
Hadi cfb4904976 add tailscale
Former-commit-id: 8ec108927c
2024-06-18 14:05:14 +02:00
Hadi 9ac6e92dc5 fix
Former-commit-id: d311675fe9
2024-06-18 13:41:33 +02:00
Hadi a5e1ee5285 update
Former-commit-id: 63fd084dcf
2024-06-18 13:41:07 +02:00
Hadi d34eafd868 Update
Former-commit-id: 759f7e715a
2024-06-18 12:36:26 +02:00
Hadi 402a1a512a Update
Former-commit-id: c0e0609ef4
2024-06-18 12:35:13 +02:00
Hadi f26f8ad0e1 Update
Former-commit-id: fb2f1824a3
2024-06-18 12:32:45 +02:00
Hadi 8cc97c5cc7 Update
Former-commit-id: bfed924f0f
2024-06-18 12:30:56 +02:00
Hadi 242298923e Update
Former-commit-id: 1ad4233def
2024-06-18 12:21:57 +02:00
Hadi 85011e69d3 Update
Former-commit-id: b536a87854
2024-06-18 12:10:45 +02:00
Hadi b4ad55a8c2 update
Former-commit-id: c3b54c538f
2024-06-18 11:42:22 +02:00
Hadi 8935e3e520 temp
Former-commit-id: 40648d4041
2024-06-18 11:26:35 +02:00
Hadi 883d95ca39 temp
Former-commit-id: cb4a8f024f
2024-06-18 11:11:08 +02:00
Hadi 91055f207f temp
Former-commit-id: f4aa262e74
2024-06-18 10:29:37 +02:00
Hadi 299222f9fd temp
Former-commit-id: ac6a0f59c4
2024-06-18 10:23:07 +02:00
Hadi a2485b18b3 temp
Former-commit-id: 93b7145e70
2024-06-18 10:10:21 +02:00
Hadi 75bc825770 temp
Former-commit-id: dc4f3160cc
2024-06-18 09:54:18 +02:00
Hadi b6c4c0e00a rename shared to modules
Former-commit-id: 2ccd17867f
2024-06-18 09:21:14 +02:00
Hadi 6797cb1107 Update
Former-commit-id: d3e6730df0
2024-06-18 00:01:23 +02:00
Hadi 1bd451a8bb Update
Former-commit-id: 57eb1c9459
2024-06-17 23:57:26 +02:00
Hadi 63f101763d update
Former-commit-id: 880ed3d0e9
2024-06-17 23:47:58 +02:00
Hadi 01e890081a add server
Former-commit-id: 93ba190cbf
2024-06-17 23:41:41 +02:00
Hadi 147e0715cf Update
Former-commit-id: 251f535146
2024-06-17 23:32:56 +02:00
Hadi 2922ef04a4 Update
Former-commit-id: 8e0691ca6a
2024-06-17 23:32:52 +02:00
Hadi 9f2afd0f8a add server
Former-commit-id: 25d4dc93f1
2024-06-17 23:29:47 +02:00
Hadi ba31976fcf add pfetch
Former-commit-id: d1b581fd58
2024-06-17 21:34:54 +02:00
Hadi ce2dcf66a4 update
Former-commit-id: bbaf52b496
2024-06-17 20:47:28 +02:00
Hadi 0d9b79c73e update
Former-commit-id: 5835d73997
2024-06-17 20:44:37 +02:00
Hadi a17e3583e6 Update
Former-commit-id: bbbf516812
2024-06-17 20:38:13 +02:00
Hadi 1885087e56 Update
Former-commit-id: 6f8698e345
2024-06-17 20:37:09 +02:00
Hadi b79d37ad06 Update
Former-commit-id: b49b2d2c60
2024-06-17 20:08:17 +02:00
Hadi 8952cbaade update
Former-commit-id: a703d0816b
2024-06-17 19:50:35 +02:00
Hadi cbda10510d update
Former-commit-id: 4aba4116de
2024-06-17 19:45:21 +02:00
Hadi e09cae9c44 Update
Former-commit-id: 9db5b9231e
2024-06-17 19:23:43 +02:00
Hadi 187bdb0a32 Update
Former-commit-id: dc5c227667
2024-06-17 19:20:34 +02:00
Hadi 5ba463757e update
Former-commit-id: 912c0abc51
2024-06-17 19:20:01 +02:00
Hadi 7763a854af update
Former-commit-id: d8659825a2
2024-06-17 19:18:05 +02:00
Hadi 6cd8da4bf1 Update README.md
Former-commit-id: 087dd4dfec
2024-06-17 17:10:04 +02:00
Hadi a397f5e82b update
Former-commit-id: a6207c07ab
2024-06-17 17:04:39 +02:00
Hadi 31ba52c9ac add hyprcursor
Former-commit-id: efc017e5bd
2024-06-17 16:55:42 +02:00
Hadi bd5998521b moved gtk theme
Former-commit-id: 2982684252
2024-06-17 16:54:50 +02:00
Hadi 5d043297d3 update
Former-commit-id: 5e3a372259
2024-06-17 16:53:18 +02:00
Hadi 07dd6c09a5 temp
Former-commit-id: 8d16aa86e0
2024-06-17 16:35:53 +02:00
Hadi 28513feea4 temp
Former-commit-id: 3f613c9910
2024-06-17 16:33:34 +02:00
Hadi 982c4b2f80 update
Former-commit-id: 8b2f8c08d3
2024-06-17 16:23:03 +02:00
Hadi cd3ac7cfbc update
Former-commit-id: f2c80d003c
2024-06-17 14:24:18 +02:00
Hadi 58bbb5532a Add themes folder
Former-commit-id: a6cc46cf93
2024-06-17 14:18:15 +02:00
Hadi 6b115d6d28 Update
Former-commit-id: 857c98e32a
2024-06-17 13:49:05 +02:00
Hadi 7d97cc9148 Update
Former-commit-id: d169306a68
2024-06-17 13:47:13 +02:00
Hadi 992929e13a test hosts
Former-commit-id: b22d2f596f
2024-06-17 09:23:37 +02:00
Hadi 65b80a7d8d test
Former-commit-id: 026be4852e
2024-06-17 09:22:31 +02:00
Hadi 396a4dcf84 Update
Former-commit-id: 49cf0fc0e3
2024-06-14 21:18:42 +02:00
Hadi dae5881128 Add animations speed in variables
Former-commit-id: 7267fa55fb
2024-06-14 21:13:50 +02:00
Hadi c00de1af0e Update
Former-commit-id: c410d04e1a
2024-06-14 21:04:33 +02:00
Hadi 5c760f5bfc Update
Former-commit-id: fad7c6e46d
2024-06-14 20:58:52 +02:00
Hadi d3881d0897 Update
Former-commit-id: 089c57802e
2024-06-14 15:28:30 +02:00
Hadi 64771ae931 Update
Former-commit-id: 47701f3f49
2024-06-14 14:43:21 +02:00
Hadi 516b7eaed4 Update
Former-commit-id: 5af6219fff
2024-06-14 14:24:09 +02:00
Hadi dc11045158 Update
Former-commit-id: 9eb2dbf579
2024-06-14 14:21:27 +02:00
Hadi c462a44130 Refactor
Former-commit-id: ea15e4fa98
2024-06-14 14:20:06 +02:00
Hadi 9130b97e13 Update
Former-commit-id: cf99fa5687
2024-06-14 14:03:35 +02:00
Hadi c1291fa9e7 Update
Former-commit-id: 98d8545186
2024-06-14 13:58:54 +02:00
Hadi 282031208e Update
Former-commit-id: 60ee25a3fa
2024-06-14 13:56:43 +02:00
Hadi 2ee7347334 Update
Former-commit-id: 25e4b89053
2024-06-14 13:44:30 +02:00
Hadi d3d4c5c7e6 Fix
Former-commit-id: 758b594e39
2024-06-14 12:54:46 +02:00
Hadi 47b46bdbf1 Update
Former-commit-id: eb94f6b527
2024-06-14 10:03:29 +02:00
Hadi a5750d59be test
Former-commit-id: aae1271cf0
2024-06-14 10:00:54 +02:00
Hadi e7324aa80d Update
Former-commit-id: 70a3473916
2024-06-13 11:02:21 +02:00
Hadi 61728dd166 Update
Former-commit-id: 96b64e86e0
2024-06-13 10:52:06 +02:00
Hadi f405b40518 Temp
Former-commit-id: d117be2be9
2024-06-13 10:48:06 +02:00
Hadi 4fbcff7320 Update
Former-commit-id: a30df8d186
2024-06-11 23:41:38 +02:00
Hadi 9e77650fa6 Stable
Former-commit-id: 3b52711351
2024-06-11 23:31:59 +02:00
Hadi 2e3a459e5c Fix
Former-commit-id: 0e3989391e
2024-06-11 22:00:58 +02:00
Hadi 3e0a36a9d9 Fix
Former-commit-id: e9310630bd
2024-06-11 21:58:04 +02:00
Hadi 84463917f5 Update
Former-commit-id: c2bb7f475b
2024-06-08 20:50:18 +02:00
Hadi b23b815696 Update
Former-commit-id: 14eeb7bd3a
2024-06-08 02:32:42 +02:00
Hadi d2858a640b Update
Former-commit-id: 08b9ef2677
2024-06-08 02:28:42 +02:00
Hadi 8cd055be59 Update
Former-commit-id: cbb276551c
2024-06-08 02:28:13 +02:00
Hadi 7a3787d62d Update
Former-commit-id: 4556c5ea2f
2024-06-08 02:26:47 +02:00
Hadi 985dd82c6f Update
Former-commit-id: 6a017c8e70
2024-06-08 02:24:07 +02:00
Hadi b828545a42 Update
Former-commit-id: e33ab5a6e1
2024-06-08 02:22:10 +02:00
Hadi c1a311e021 Update
Former-commit-id: fbf3fe3255
2024-06-08 02:20:20 +02:00
Hadi 98fc1e131b Update
Former-commit-id: 41a6de85b1
2024-06-08 02:19:25 +02:00
Hadi f19b74c2e9 Update
Former-commit-id: 6561d23db6
2024-06-08 02:18:53 +02:00
Hadi 0aae361973 Update
Former-commit-id: 562dad765b
2024-06-08 02:17:50 +02:00
Hadi e925d6712c Update
Former-commit-id: 2656132158
2024-06-08 02:17:04 +02:00
Hadi 553455474b Update
Former-commit-id: 430d30e4ee
2024-06-08 02:05:37 +02:00
Hadi b53c5bb5b1 Update
Former-commit-id: 3a1896894f
2024-06-08 01:57:55 +02:00
Hadi f76419c158 Update
Former-commit-id: 88fb9d078b
2024-06-08 01:56:21 +02:00
Hadi fb44fb3fab Update
Former-commit-id: 1ccb720f3b
2024-06-08 00:36:44 +02:00
Hadi d19182608d Update
Former-commit-id: d2c8461193
2024-06-08 00:35:45 +02:00
Hadi ebbb2dd780 Update
Former-commit-id: 92b467525d
2024-06-08 00:01:20 +02:00
Hadi ce24afcea0 Update
Former-commit-id: 6c08c79a16
2024-06-07 23:54:10 +02:00
Hadi 4b1c84319b Update
Former-commit-id: e52f52f4da
2024-06-07 23:46:40 +02:00
Hadi 7d46fa680f Update
Former-commit-id: b855318c55
2024-06-07 23:35:59 +02:00
Hadi 73961f5caf Update
Former-commit-id: ca8abfde1c
2024-06-07 23:34:02 +02:00
Hadi 89c194d604 Update
Former-commit-id: 24de104139
2024-06-07 22:53:04 +02:00
Hadi fc50d282ca Update
Former-commit-id: 2c0246c84a
2024-06-07 22:43:37 +02:00
Hadi 101cbd0761 Update
Former-commit-id: 9177f93a96
2024-06-07 22:41:10 +02:00
Hadi 48f7c42a21 Update
Former-commit-id: 57867b1a22
2024-06-07 22:37:59 +02:00
Hadi a6d00d0823 Update
Former-commit-id: 7b9e579a4e
2024-06-07 22:34:48 +02:00
Hadi e02c11e258 Update
Former-commit-id: 65ec024028
2024-06-07 22:25:21 +02:00
Hadi 3554bf257e Update
Former-commit-id: 19af1ccdc2
2024-06-07 22:11:42 +02:00
Hadi ec0e54e4b2 Update
Former-commit-id: 7d80970e9d
2024-06-07 22:08:09 +02:00
Hadi 8d60d1d914 Update
Former-commit-id: 755a2e8f2b
2024-06-07 22:05:49 +02:00
Hadi 2555bc641b Update
Former-commit-id: 160d302a74
2024-06-07 21:49:44 +02:00
Hadi dfc48d1525 Add pub key
Former-commit-id: b674a8be1b
2024-06-07 21:46:15 +02:00
Hadi 80a61f86dc Fix
Former-commit-id: e2382abacc
2024-06-07 21:41:04 +02:00
Hadi 1cde20d8bc Add hardware config for server
Former-commit-id: bf7dd645ba
2024-06-07 21:38:39 +02:00
Hadi 378bdade49 Update
Former-commit-id: 7bb06e521f
2024-06-07 21:37:48 +02:00
Hadi b87610007a Add heaven (my server)
Former-commit-id: 17f93ea60b
2024-06-07 21:21:03 +02:00
Hadi c216a5e997 Update
Former-commit-id: d917ac9f6a
2024-06-07 10:55:45 +02:00
Hadi ccf0ee95c6 Update
Former-commit-id: 98556f202e
2024-06-03 20:18:30 +02:00
Hadi 0a2644f5d4 Update
Former-commit-id: 0f98d762a2
2024-05-25 10:53:38 +02:00
Hadi 7f31c039e8 Update
Former-commit-id: c074db2779
2024-05-20 19:44:45 +02:00
Hadi cfbf65a7f5 Add hyprland cachix
Former-commit-id: 98186715b1
2024-05-17 14:52:18 +02:00
Hadi 1f67c4a752 Merge pull request #1 from anotherhadi/unstable
Update

Former-commit-id: 0087ca74be
2024-05-17 14:46:30 +02:00
Hadi b9dbcac931 Update
Former-commit-id: 5fe726fd20
2024-05-17 14:44:56 +02:00
Hadi 0b713dfa4e More variables
Former-commit-id: cc1efb2588
2024-05-17 10:28:02 +02:00
Hadi 140bd5c510 Update
Former-commit-id: 0b32914be2
2024-05-16 17:59:50 +02:00
Hadi ae68f811f2 Add nvim noice
Former-commit-id: bc9101e542
2024-05-11 00:37:16 +02:00
Hadi 1c25f3421d Add table of contents
Former-commit-id: 42876ccac3
2024-05-09 16:58:42 +02:00
Hadi 3f4477d938 Add compress/extract
Former-commit-id: 728797b8c5
2024-05-09 16:55:46 +02:00
Hadi 7d0afea3bf Update
Former-commit-id: dff9dcc8d5
2024-05-09 16:51:42 +02:00
Hadi 4eab3730be Update
Former-commit-id: 31913ccdcc
2024-05-09 16:50:46 +02:00
Hadi 07d95c5255 Add lazygit
Former-commit-id: 8400e5fd4d
2024-05-09 16:46:30 +02:00
Hadi ddb412cdea Add lazygit
Former-commit-id: 8d0216e1fc
2024-05-09 16:44:39 +02:00
Hadi 5c29aeffc5 Update
Former-commit-id: c4f8d05c0d
2024-05-09 16:33:24 +02:00
Hadi f9dfd7ae1a Update
Former-commit-id: 6d4bc5a9e8
2024-05-09 13:33:51 +02:00
Hadi 34a8b4ffed Add new theme
Former-commit-id: 6065afd390
2024-05-09 13:33:44 +02:00
Hadi 93480fdf86 Fix spacing
Former-commit-id: abfe7ca839
2024-05-09 13:33:18 +02:00
Hadi f5605570e0 Update
Former-commit-id: a26fbaa2c3
2024-05-09 10:54:19 +02:00
Hadi 9d9e3570df Rearrange folder struct
Former-commit-id: e58fda9896
2024-05-04 22:51:33 +02:00
Hadi 8be54bb19b Fix renamed
Former-commit-id: d026643105
2024-05-04 22:46:46 +02:00
Hadi b533415ab7 Delete /tmp dir on boot
Former-commit-id: 984a25c111
2024-05-04 22:45:51 +02:00
Hadi 3b2fd0b3f4 Update
Former-commit-id: 2c2b451d40
2024-05-04 22:36:06 +02:00
Hadi ef90d16de8 Waybar git to solve issue w/hyprland
Former-commit-id: 1af3617b32
2024-05-02 18:16:39 +02:00
Hadi 5222447894 Update
Former-commit-id: 6d1912703c
2024-05-02 15:46:16 +02:00
Hadi 8d9d8d4ca2 Update
Former-commit-id: 81ab14b256
2024-05-02 15:40:12 +02:00
Hadi f32ad388b2 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/572af610f6151fd41c212f897c71f7056e3fb518' (2024-04-23)
  → 'github:nixos/nixpkgs/58a1abdbae3217ca6b702f03d3b35125d88a2994' (2024-04-27)


Former-commit-id: 92ec6a5ea8
2024-05-02 12:44:43 +02:00
Hadi e1ff3e4624 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932' (2024-04-21)
  → 'github:nixos/nixpkgs/572af610f6151fd41c212f897c71f7056e3fb518' (2024-04-23)


Former-commit-id: 62029890cd
2024-04-25 22:44:44 +02:00
Hadi 1187753bb7 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/5c24cf2f0a12ad855f444c30b2421d044120c66f' (2024-04-19)
  → 'github:nixos/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932' (2024-04-21)


Former-commit-id: 6cec1f00f0
2024-04-22 17:39:48 +02:00
Hadi dde5b26215 Update
Former-commit-id: 7dd8af5bf8
2024-04-20 11:50:19 +02:00
Hadi 1db52368f7 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/66adc1e47f8784803f2deb6cacd5e07264ec2d5c' (2024-04-16)
  → 'github:nixos/nixpkgs/5c24cf2f0a12ad855f444c30b2421d044120c66f' (2024-04-19)


Former-commit-id: 86175a04e5
2024-04-20 11:31:07 +02:00
Hadi 9e9970f517 Fix typo
Former-commit-id: de607e2eea
2024-04-20 01:05:50 +02:00
Hadi 00df88dc0e Delete .sops.yaml
Former-commit-id: e8dd18e32c
2024-04-20 00:41:50 +02:00
Hadi de09bd0179 Fix
Former-commit-id: 3fe07d3ba5
2024-04-20 00:39:15 +02:00
Hadi 2180d78dfc Add github search engine
Former-commit-id: 52ccccc2d9
2024-04-20 00:23:32 +02:00
Hadi 1cb0490c03 Fix 2 file explorer
Former-commit-id: 805917511e
2024-04-20 00:19:15 +02:00
Hadi 424dd06e18 Fix
Former-commit-id: 950e1cfcf2
2024-04-20 00:16:05 +02:00
Hadi 17b23c8497 Fix
Former-commit-id: 637accfc1c
2024-04-20 00:02:59 +02:00
Hadi ba6bb433b6 Fix font
Former-commit-id: a37de9940f
2024-04-19 23:46:15 +02:00
Hadi c3120b819e flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/cfd6b5fc90b15709b780a5a1619695a88505a176' (2024-04-12)
  → 'github:nixos/nixpkgs/66adc1e47f8784803f2deb6cacd5e07264ec2d5c' (2024-04-16)


Former-commit-id: 14bca81e37
2024-04-19 23:35:51 +02:00
Hadi edcb1af2d9 Update
Former-commit-id: 767e9d182d
2024-04-14 21:59:30 +02:00
Hadi 0cc43ddbb5 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/4cba8b53da471aea2ab2b0c1f30a81e7c451f4b6' (2024-04-08)
  → 'github:nixos/nixpkgs/1042fd8b148a9105f3c0aca3a6177fd1d9360ba5' (2024-04-10)


Former-commit-id: 21ce99bfe8
2024-04-14 17:01:34 +02:00
Hadi 3f4096dfe5 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/ff0dbd94265ac470dda06a657d5fe49de93b4599' (2024-04-06)
  → 'github:nixos/nixpkgs/4cba8b53da471aea2ab2b0c1f30a81e7c451f4b6' (2024-04-08)


Former-commit-id: 3aeedf0ed7
2024-04-10 18:25:46 +02:00
Hadi 2b27db1bff flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/08b9151ed40350725eb40b1fe96b0b86304a654b' (2024-04-03)
  → 'github:nixos/nixpkgs/ff0dbd94265ac470dda06a657d5fe49de93b4599' (2024-04-06)


Former-commit-id: cd04bd89c0
2024-04-07 15:47:33 +02:00
Hadi f9aafdc772 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/d8fe5e6c92d0d190646fb9f1056741a229980089' (2024-03-29)
  → 'github:nixos/nixpkgs/08b9151ed40350725eb40b1fe96b0b86304a654b' (2024-04-03)


Former-commit-id: 331fc331df
2024-04-04 11:35:03 +02:00
Hadi 0568b5d256 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/20f77aa09916374aa3141cbc605c955626762c9a' (2024-03-21)
  → 'github:nixos/nixpkgs/d8fe5e6c92d0d190646fb9f1056741a229980089' (2024-03-29)


Former-commit-id: b9775975ea
2024-03-30 12:09:12 +01:00
Hadi 76ed5e3b0a flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/b06025f1533a1e07b6db3e75151caa155d1c7eb3' (2024-03-19)
  → 'github:nixos/nixpkgs/20f77aa09916374aa3141cbc605c955626762c9a' (2024-03-21)


Former-commit-id: 7a8ebb778a
2024-03-22 14:16:16 +01:00
Hadi 61a70a7c37 I hate wl clipboard
Former-commit-id: 24a8438694
2024-03-20 23:26:53 +01:00
Hadi cebb8d311d Woopsi
Former-commit-id: ce2e0c2fa8
2024-03-20 22:44:32 +01:00
Hadi 42d7bb5c6e Nerdfont icons finder, folder arch..
Former-commit-id: e97e2705b5
2024-03-20 22:38:49 +01:00
Hadi 0eb1751e41 Up
Former-commit-id: cb98842775
2024-03-20 21:47:50 +01:00
Hadi c995295397 Up
Former-commit-id: 95562dce0e
2024-03-20 20:04:09 +01:00
Hadi 448a482497 keybindings
Former-commit-id: bb47c6a943
2024-03-20 18:58:16 +01:00
Hadi 9bd0c2f190 Themes
Former-commit-id: 5ad31e7602
2024-03-20 18:31:59 +01:00
Hadi 283d757327 oops
Former-commit-id: 35de81a46d
2024-03-20 18:05:24 +01:00
Hadi 32c9cd7504 up
Former-commit-id: 0fee3682d0
2024-03-20 18:01:15 +01:00
Hadi fac419453e Fix powermenu management
Former-commit-id: aa25061ad7
2024-03-18 22:48:11 +01:00
Hadi b043028ec7 Fix neofetch on floating window
Former-commit-id: 69bd97e1bd
2024-03-18 22:40:15 +01:00
Hadi 900eb52b17 Fix windows name & padding
Former-commit-id: 1dd92201d0
2024-03-18 22:37:03 +01:00
Hadi 89d705f414 Up
Former-commit-id: ef3489075f
2024-03-18 22:26:32 +01:00
Hadi 34e5fbb417 License
Former-commit-id: 6a562ff64c
2024-03-17 17:35:11 +01:00
Hadi 0aa6df37cd Details README
Former-commit-id: 441b45846e
2024-03-17 17:17:03 +01:00
Hadi a185bd740d Up
Former-commit-id: 381b3228dc
2024-03-17 17:11:49 +01:00
Hadi bd81378c22 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/d691274a972b3165335d261cc4671335f5c67de9' (2024-03-14)
  → 'github:nixos/nixpkgs/c75037bbf9093a2acb617804ee46320d6d1fea5a' (2024-03-16)


Former-commit-id: bb869d6897
2024-03-17 16:47:28 +01:00
Hadi 96c6f25c3c Up
Former-commit-id: a230692b90
2024-03-17 01:14:16 +01:00
Hadi 61a67cd51d Up
Former-commit-id: f86a0271b6
2024-03-16 22:26:30 +01:00
Hadi fe6ef8762e flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/0ad13a6833440b8e238947e47bea7f11071dc2b2' (2024-03-12)
  → 'github:nixos/nixpkgs/d691274a972b3165335d261cc4671335f5c67de9' (2024-03-14)


Former-commit-id: 3f2ba75a5e
2024-03-16 18:26:14 +01:00
Hadi c6c053585c Secrets, scripts, clean..
Former-commit-id: 5e98256a82
2024-03-15 21:26:34 +01:00
Hadi f3dcd108db Up
Former-commit-id: 05fc3fbcd9
2024-03-14 18:42:15 +01:00
Hadi 8e8bb981e1 Up
Former-commit-id: 77eba6e2c2
2024-03-14 01:30:17 +01:00
Hadi 5000562333 Up
Former-commit-id: d5bd3270f7
2024-03-14 01:05:29 +01:00
Hadi e2aad1b524 Add caffeine
Former-commit-id: 13ae5ad530
2024-03-14 00:10:13 +01:00
Hadi bb383dcddb Up
Former-commit-id: 8bda501d16
2024-03-13 23:32:40 +01:00
Hadi d59434285a Up
Former-commit-id: 6ed623bd6f
2024-03-13 21:56:32 +01:00
Hadi e55f66e4fb Up
Former-commit-id: 3fe2c8913f
2024-03-13 21:38:55 +01:00
Hadi 7c3ff59a0f Add wallpapers
Former-commit-id: a1f05792e4
2024-03-13 19:58:46 +01:00
510 changed files with 4988 additions and 56354 deletions
+110
View File
@@ -0,0 +1,110 @@
<div align="center">
<img src="https://raw.githubusercontent.com/anotherhadi/nixy/main/.github/assets/logo.png" width="120px" />
</div>
<br>
# Nixy
<br>
<div align="center">
<a href="https://github.com/anotherhadi/nixy/stargazers">
<img src="https://img.shields.io/github/stars/anotherhadi/nixy?color={primarycolor}&labelColor={backgroundcolor}&style=for-the-badge&logo=starship&logoColor={primarycolor}">
</a>
<a href="https://github.com/anotherhadi/nixy/">
<img src="https://img.shields.io/github/repo-size/anotherhadi/nixy?color={primarycolor}&labelColor={backgroundcolor}&style=for-the-badge&logo=github&logoColor={primarycolor}">
</a>
<a href="https://nixos.org">
<img src="https://img.shields.io/badge/NixOS-unstable-blue.svg?style=for-the-badge&labelColor={backgroundcolor}&logo=NixOS&logoColor={primarycolor}&color={primarycolor}">
</a>
<a href="https://github.com/anotherhadi/nixy/blob/main/LICENSE">
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&colorA={backgroundcolor}&colorB={primarycolor}&logo=unlicense&logoColor={primarycolor}"/>
</a>
</div>
<br>
**Nixy** is a **Hyprland** NixOS configuration with **home-manager**, **secrets**, and **custom theming** all in one place.
It's a simple way to manage your system configuration and dotfiles.
I'm Hadi, a french developer, student in infosec, enthusiastic about nix, golang & blockchains.
This is my own, **keyboard-centric**, and **minimalistic** NixOS configuration.
I enable vim-like keybindings everywhere I can, and I use a lot of custom scripts to make my life easier.
**Nixy key points:**
- Hypr-ecosystem first (hyprland, hyprlock, hyprpanel, hypridle, ...)
- Stylix/base16 themes
- Vim-like keybindings everywhere (hyprland, qutebrowser, nvim, ...)
## Table of Content
{md_table_of_content}
## Gallery
![Nixy helper, peaclock](.github/assets/nixy/1.png)
![Qutebrowser, pipes, shell](.github/assets/nixy/2.png)
![nvim, lazygit](.github/assets/nixy/3.png)
![spotify, cava](.github/assets/nixy/4.png)
## Architecture
### 🏠 home
Those are the dotfiles and configuration files for user-level configuration
**Subfolders:**
- `programs` is a collection of apps configured with home-manager
- `scripts` is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
- `system` is some "desktop environment" configuration
### 🐧 nixos
Those are the system-level configurations. (audio, bluetooth, gpu, bootloader, ...)
### 🎨 themes
Those are the themes used in the system configuration. The `stylix` folder contains the [stylix](https://github.com/danth/stylix) defined themes, the `var` folder contains the variables not handled by stylix.
See avaiable themes in [THEMES.md](docs/THEMES.md)
### 💻 hosts
Those are the host-specific configurations.
Each host contains a `configuration.nix` for system-level configuration, a `home.nix` for user-level configuration, and a `variables.nix` for config wide variables.
## Installation
1. Clone the repo
```sh
git clone https://github.com/anotherhadi/nixy ~/.config/nixos
```
2. Copy the `hosts/laptop` folder, rename it to your system name, and change the variables inside the `variables.nix` file
3. Add your `hardware-configuration.nix` to your new host's folder
4. Add your 'nixosConfigurations' inside `flake.nix`
> [!Important]
> I added few `# CHANGEME` comments in the files to help you find what to change. Be sure to check them up.
> You can use `rg "CHANGEME"` to find them all with ripgrep.
> [!TIP]
> When you add new files, don't forget to run `git add .` to add them to the git repository
5. Build the system
```sh
sudo nixos-rebuild switch --flake ~/.config/nixos#yourhostname
```
## Documentation
- [THEMES](docs/THEMES.md): How themes work and how to create your own
- [SCRIPTS](docs/SCRIPTS.md): Scripts that are available
- [KEYBINDINGS-HYPRLAND](docs/KEYBINDINGS-HYPRLAND.md): Keybindings available in Hyprland
- [WALLPAPERS](https://github.com/anotherhadi/nixy-wallpapers): A collection of wallpapers for Nixy.
- [TODO](docs/TODO.md): What's next (feel free to contribute)
- [CONTRIBUTING](docs/CONTRIBUTING.md): How to contribute
- [LICENSE](LICENSE): MIT License
Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

+20
View File
@@ -0,0 +1,20 @@
#!/usr/bin/env bash
# Create the README.md file from the .github/assets/README_template.md file
[[ -d "./docs" ]] || (echo "Folder ./docs not found" && exit 1)
README_FILE="./README.md"
table_of_content=$(markdown-table-of-contents --start-by 2 ./.github/assets/README_template.md) # https://github.com/anotherhadi/markdown-table-of-contents
readme_content=$(cat "./.github/assets/README_template.md")
# Replace variables
readme_content=${readme_content//\{primarycolor\}/A594FD}
readme_content=${readme_content//\{backgroundcolor\}/0b0b0b}
readme_content=${readme_content//\{md_table_of_content\}/$table_of_content}
echo "[//]: # (This file is autogenerated)" >"$README_FILE"
echo "$readme_content" >>"$README_FILE"
sed 's/\r//' "$README_FILE" >"/tmp/readme.md"
mv "/tmp/readme.md" "$README_FILE"
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
[[ -d "./docs" ]] || (echo "Folder ./docs not found" && exit 1)
DOCS_FILE="./docs/SCRIPTS.md"
SCRIPTS_FOLDER="./home/scripts"
# search for every directory in the scripts folder:
# The docs for each scripts are in the beginning of the file prefixed by "#-" or "# -" for the title
# Inside the folders, the scripts are stored in default.nix files
echo "[//]: # (This file is autogenerated)" >"$DOCS_FILE"
echo "# Scripts" >>"$DOCS_FILE"
echo "" >>"$DOCS_FILE"
echo "Scripts are located in the 'home/scripts' folder. Home-manager add those in the user's path." >>"$DOCS_FILE"
echo "" >>"$DOCS_FILE"
for folder in "$SCRIPTS_FOLDER"/*; do
script="$folder/default.nix"
[[ -f "$script" ]] || continue
content=$(cat "$script")
content=$(echo "$content" | grep -E "^#-|^# -" | sed 's/^#- //;s/^# - //;s/#-//')
echo "$content" >>"$DOCS_FILE"
echo "" >>"$DOCS_FILE"
done
@@ -4,7 +4,7 @@
[[ -d "./docs" ]] || (echo "Folder ./docs not found" && exit 1)
KEYBINDINGS_FILE="./docs/KEYBINDINGS.md"
KEYBINDINGS_FILE="./docs/KEYBINDINGS-HYPRLAND.md"
function getList() {
content=$1
@@ -17,9 +17,9 @@ function getList() {
echo "$list"
}
[[ -f "./home/system/hyprland/default.nix" ]] || (echo "File ./home/system/hyprland/default.nix not found" && exit 1)
[[ -f "./home/system/hyprland/bindings.nix" ]] || (echo "File ./home/system/hyprland/bindings.nix not found" && exit 1)
config=$(cat "./home/system/hyprland/default.nix")
config=$(cat "./home/system/hyprland/bindings.nix")
# Bind
bind=$(getList "$config" "bind")
@@ -33,29 +33,28 @@ bindle=$(getList "$config" "bindle")
# Join the lists:
keybindings=$(echo -e "$bind\n$bindm\n$bindl\n$bindle" | grep '"')
echo "# Keybindings" >"$KEYBINDINGS_FILE"
echo "[//]: # (This file is autogenerated)" >"$KEYBINDINGS_FILE"
echo "# Keybindings for Hyprland" >>"$KEYBINDINGS_FILE"
echo "" >>"$KEYBINDINGS_FILE"
echo "The list of the keybindings working on Hyprland:" >>"$KEYBINDINGS_FILE"
echo "> [!NOTE]" >>"$KEYBINDINGS_FILE"
echo "> SUPER is the windows key by default" >>"$KEYBINDINGS_FILE"
echo "" >>"$KEYBINDINGS_FILE"
echo "| Description | Keybinding |" >>"$KEYBINDINGS_FILE"
echo "| -- | -- |" >>"$KEYBINDINGS_FILE"
echo "| Switch Workspace | SUPER + {Number} |" >>"$KEYBINDINGS_FILE"
echo "| Move app to Workspace | SHIFT + SUPER + {Number} |" >>"$KEYBINDINGS_FILE"
echo "$keybindings" | while read line; do
echo "$keybindings" | while read -r line; do
comment=$(echo "$line" | cut -d\# -f2)
line=$(echo "$line" | cut -d\# -f1)
line=${line:1:${#line}-3}
mod=$(echo "$line" | cut -d, -f1)
key=$(echo "$line" | cut -d, -f2)
dispatcher=$(echo "$line" | cut -d, -f3)
params=$(echo "$line" | cut -d, -f4)
# dispatcher=$(echo "$line" | cut -d, -f3)
# params=$(echo "$line" | cut -d, -f4)
[[ $mod == '$mod' ]] && mod="SUPER + "
[[ $mod == '$shiftMod' ]] && mod="SHIFT + SUPER + "
echo "| $comment | $mod$key |" >>"$KEYBINDINGS_FILE"
echo "| ${comment:1} | $mod$key |" >>"$KEYBINDINGS_FILE"
done
pandoc -t commonmark_x "$KEYBINDINGS_FILE" -o "/tmp/keybindings.md"
mv "/tmp/keybindings.md" "$KEYBINDINGS_FILE"
@@ -0,0 +1,24 @@
on:
push:
paths:
- 'home/system/hyprland/bindings.nix'
permissions:
contents: write
jobs:
update-readme:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./
steps:
- name: Check out the repository to the runner
uses: actions/checkout@v4
- name: Run a script
run: |
chmod +x ./.github/scripts/keybindings_to_markdown.sh
./.github/scripts/keybindings_to_markdown.sh
git config user.name github-actions
git config user.email github-actions@github.com
git add .
git commit -m "Update KEYBINDINGS-HYPRLAND.md (auto)"
git push
+31
View File
@@ -0,0 +1,31 @@
on:
push:
paths:
- '.github/assets/README_template.md'
permissions:
contents: write
jobs:
update-readme:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./
steps:
- name: Check out the repository to the runner
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '^1.23'
- name: Install required dependencies
run: |
go install github.com/anotherhadi/markdown-table-of-contents@latest
- name: Run a script
run: |
chmod +x ./.github/scripts/create_readme.sh
./.github/scripts/create_readme.sh
git config user.name github-actions
git config user.email github-actions@github.com
git add .
git commit -m "Update README.md (auto)"
git push
+24
View File
@@ -0,0 +1,24 @@
on:
push:
paths:
- 'home/scripts/**'
permissions:
contents: write
jobs:
update-readme:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./
steps:
- name: Check out the repository to the runner
uses: actions/checkout@v4
- name: Run a script
run: |
chmod +x ./.github/scripts/create_scripts_docs.sh
./.github/scripts/create_scripts_docs.sh
git config user.name github-actions
git config user.email github-actions@github.com
git add .
git commit -m "Update SCRIPTS.md (auto)"
git push
+1
View File
@@ -1 +1,2 @@
todolist.md
.sops.yaml
-11
View File
@@ -1,11 +0,0 @@
keys:
- &primary age12yvtj49pfh3fqzqflscm0ek4yzrjhr6cqhn7x89gdxnlykq0xudq5c7334
creation_rules:
- path_regex: hosts/laptop/secrets/laptop.yaml$
key_groups:
- age:
- *primary
- path_regex: hosts/server/secrets/server.yaml$
key_groups:
- age:
- *primary
+70 -43
View File
@@ -1,11 +1,6 @@
[//]: # (Title: Nixy)
[//]: # (Description: Nixy is a Hyprland NixOS configuration with home-manager, secrets and custom theming all in one place. It's a simple way to manage your system configuration and dotfiles.)
[//]: # (Author: Hadi)
[//]: # (Date: 08/19/24)
[//]: # (Version: v2.1.0)
[//]: # (This file is autogenerated)
<div align="center">
<img src="https://raw.githubusercontent.com/anotherhadi/nixy/main/docs/src/logo.png" width="100px" />
<img src="https://raw.githubusercontent.com/anotherhadi/nixy/main/.github/assets/logo.png" width="120px" />
</div>
<br>
@@ -14,20 +9,17 @@
<br>
<div align="center">
<a href="https://github.com/anotherhadi/nixy">
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=Version&message=v2.1.0&colorA=181825&colorB=89b4fa&logo=githubactions&logoColor=89b4fa"/>
</a>
<a href="https://github.com/anotherhadi/nixy/stargazers">
<img src="https://img.shields.io/github/stars/anotherhadi/nixy?color=89b4fa&labelColor=181825&style=for-the-badge&logo=starship&logoColor=89b4fa">
<img src="https://img.shields.io/github/stars/anotherhadi/nixy?color=A594FD&labelColor=0b0b0b&style=for-the-badge&logo=starship&logoColor=A594FD">
</a>
<a href="https://github.com/anotherhadi/nixy/">
<img src="https://img.shields.io/github/repo-size/anotherhadi/nixy?color=89b4fa&labelColor=181825&style=for-the-badge&logo=github&logoColor=89b4fa">
<img src="https://img.shields.io/github/repo-size/anotherhadi/nixy?color=A594FD&labelColor=0b0b0b&style=for-the-badge&logo=github&logoColor=A594FD">
</a>
<a href="https://nixos.org">
<img src="https://img.shields.io/badge/NixOS-unstable-blue.svg?style=for-the-badge&labelColor=181825&logo=NixOS&logoColor=89b4fa&color=89b4fa">
<img src="https://img.shields.io/badge/NixOS-unstable-blue.svg?style=for-the-badge&labelColor=0b0b0b&logo=NixOS&logoColor=A594FD&color=A594FD">
</a>
<a href="https://github.com/anotherhadi/nixy/blob/main/LICENSE">
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&colorA=181825&colorB=89b4fa&logo=unlicense&logoColor=89b4fa"/>
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&colorA=0b0b0b&colorB=A594FD&logo=unlicense&logoColor=A594FD"/>
</a>
</div>
<br>
@@ -35,58 +27,93 @@
**Nixy** is a **Hyprland** NixOS configuration with **home-manager**, **secrets**, and **custom theming** all in one place.
It's a simple way to manage your system configuration and dotfiles.
I'm Hadi, a french developer, student in infosec, enthusiastic about nix, golang & blockchains.
This is my own, **keyboard-centric**, and **minimalistic** NixOS configuration.
I enable vim-like keybindings everywhere I can, and I use a lot of custom scripts to make my life easier.
**Nixy key points:**
- Hypr-ecosystem first (hyprland, hyprlock, hyprpanel, hypridle, ...)
- Stylix/base16 themes
- Vim-like keybindings everywhere (hyprland, qutebrowser, nvim, ...)
## Table of Content
- [Table of Content](#table-of-content)
- [Gallery](#gallery)
- [Architecture](#architecture)
- [Installation](#installation)
- [Documentation](#documentation)
- [Table of Content](#table-of-content)
- [Gallery](#gallery)
- [Architecture](#architecture)
- [🏠 home](#-home)
- [🐧 nixos](#-nixos)
- [🎨 themes](#-themes)
- [💻 hosts](#-hosts)
- [Installation](#installation)
- [Documentation](#documentation)
## Gallery
![catppuccin1](docs/src/catppuccin/1.png)
![catppuccin2](docs/src/catppuccin/2.png)
![catppuccin3](docs/src/catppuccin/3.png)
![Nixy helper, peaclock](.github/assets/nixy/1.png)
![Qutebrowser, pipes, shell](.github/assets/nixy/2.png)
![nvim, lazygit](.github/assets/nixy/3.png)
![spotify, cava](.github/assets/nixy/4.png)
## Architecture
- 🏠 `home` are the dotfiles and configuration files for the users
- 'programs' is a collection of apps configured with home-manager
- 'scripts' is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
- 'system' is some "desktop environment" configuration
- 'wallpapers' are... wallpapers
- 💻 `hosts` are the system configuration files
- 'laptop' is my configuration for my laptop with Nvidia that you can copy
- 'server' is for my homeserver (w/nextcloud, nginx, vaultwarden, ... look `hosts/server`)
- 'themes' contains all the *themes* available *(see [THEMES.md](docs/THEMES.md))*
- 'modules' are some nix modules that you can import (Nvidia, prime, fonts, ...)
### 🏠 home
Those are the dotfiles and configuration files for user-level configuration
**Subfolders:**
- `programs` is a collection of apps configured with home-manager
- `scripts` is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
- `system` is some "desktop environment" configuration
### 🐧 nixos
Those are the system-level configurations. (audio, bluetooth, gpu, bootloader, ...)
### 🎨 themes
Those are the themes used in the system configuration. The `stylix` folder contains the [stylix](https://github.com/danth/stylix) defined themes, the `var` folder contains the variables not handled by stylix.
See avaiable themes in [THEMES.md](docs/THEMES.md)
### 💻 hosts
Those are the host-specific configurations.
Each host contains a `configuration.nix` for system-level configuration, a `home.nix` for user-level configuration, and a `variables.nix` for config wide variables.
## Installation
1. Clone the repo
```sh
git clone https://github.com/anotherhadi/nixy ~/.config/nixos
```
- Copy the `hosts/laptop` folder, rename it to your system name, and change the variables inside the `variables.nix` file
- Add your `hardware-configuration.nix` to your new host's folder
- Add your 'nixosConfigurations' inside `flake.nix` (You can edit your hostname one and change the lines containing '# CHANGEME')
2. Copy the `hosts/laptop` folder, rename it to your system name, and change the variables inside the `variables.nix` file
3. Add your `hardware-configuration.nix` to your new host's folder
4. Add your 'nixosConfigurations' inside `flake.nix`
> [!NOTE]
> [!Important]
> I added few `# CHANGEME` comments in the files to help you find what to change. Be sure to check them up.
> You can use `rg "CHANGEME"` to find them all with ripgrep.
> [!TIP]
> When you add new files, don't forget to run `git add .` to add them to the git repository
5. Build the system
```sh
sudo nixos-rebuild switch --flake ~/.config/nixos#yourhostname
```
## Documentation
- [THEMES.md](docs/THEMES.md): How themes work and how to create your own
- [APPS.md](docs/APPS.md): Which apps are installed
- [SCRIPTS.md](docs/SCRIPTS.md): Scripts that are available
- [KEYBINDINGS.md](docs/KEYBINDINGS.md): Keybindings available in Hyprland
- [WALLPAPERS.md](docs/WALLPAPERS.md): Preview of every wallpapers available
- [THEMES](docs/THEMES.md): How themes work and how to create your own
- [SCRIPTS](docs/SCRIPTS.md): Scripts that are available
- [KEYBINDINGS-HYPRLAND](docs/KEYBINDINGS-HYPRLAND.md): Keybindings available in Hyprland
- [WALLPAPERS](https://github.com/anotherhadi/nixy-wallpapers): A collection of wallpapers for Nixy.
- [TODO.md](docs/TODO.md): What's next (feel free to contribute)
- [CONTRIBUTING.md](docs/CONTRIBUTING.md): How to contribute
- [TODO](docs/TODO.md): What's next (feel free to contribute)
- [CONTRIBUTING](docs/CONTRIBUTING.md): How to contribute
- [LICENSE](LICENSE): MIT License
-56
View File
@@ -1,56 +0,0 @@
# Apps and services
*non-exhaustive lists*
## Laptop
The laptop configuration is used by an Omen 16 laptop w/ nvidia and an amd gpu running NixOS.
The configurations files can be found in the `hosts/laptop` directory.
| Category | Name |
| --------------------------------------- | -------------- |
| WM | Hyprland |
| | hyprlock |
| | hyprpaper |
| | hypridle |
| | hyprcursor |
| | wlogout |
| Bar | waybar |
| Terminal | kitty |
| Shell | zsh |
| | tmux |
| | starship |
| | bat |
| | eza |
| | zoxide |
| | fzf |
| Editor | neovim(nixvim) |
| File manager | lf |
| | thunar |
| Browser | qutebrowser |
| Music | spicetify |
| Notifications | dunst |
| Launcher | wofi |
| DM | tuigreet |
| Secrets | sops-nix |
| Misc | lazygit |
| | neofetch |
| | cava |
| See [hosts/laptop](../hosts/laptop/)... | |
## Server
The server configuration is used by a home server running NixOS.
The configurations files can be found in the `hosts/server` directory.
I mainly use it for self-hosting websites and services such as Nextcloud, Vaultwarden, ...
I exposed some services to the internet using a reverse proxy (Nginx) and cloudflare-dyndns, others are accessed through a tailscale network
### Apps
- Nextcloud
- Vaultwarden
- Adguard Home
- Uptime Kuma
- "Jackflix"
- Jellyfin, Transmission, *arr
- See [hosts/server](../hosts/server/)...
-3
View File
@@ -9,9 +9,6 @@ The process is straight-forward.
- Write your changes (new theme, bug fixes, task in to-do, ...).
- Create a Pull Request against the main branch of Nixy.
> [!TIP]
> When wallpapers are added, run `./docs/scripts/compress_png.sh` and `./docs/scripts/create_preview_wallpapers.sh`
> [!TIP]
> To update the README, change the `./docs/src/README_template.md` and run `./docs/scripts/create_readme.sh`
+52
View File
@@ -0,0 +1,52 @@
[//]: # (This file is autogenerated)
# Keybindings for Hyprland
> [!NOTE]
> SUPER is the windows key by default
| Description | Keybinding |
| -- | -- |
| Switch Workspace | SUPER + {Number} |
| Move app to Workspace | SHIFT + SUPER + {Number} |
| Kitty | SUPER + RETURN |
| Thunar | SUPER + E |
| Qutebrowser | SUPER + B |
| Bitwarden | SUPER + K |
| Lock | SUPER + L |
| Powermenu | SUPER + X |
| Launcher | SUPER + SPACE |
| Quickmenu | SUPER + C |
| Toggle HyprFocus | SHIFT + SUPER + SPACE |
| "$mod,TAB, overview:toggle" | |
| Close window | SUPER + Q |
| Toggle Floating | SUPER + T |
| Toggle Fullscreen | SUPER + F |
| Move focus left | SUPER + left |
| Move focus Right | SUPER + right |
| Move focus Up | SUPER + up |
| Move focus Down | SUPER + down |
| Focus previous monitor | SHIFT + SUPER + up |
| Focus next monitor | SHIFT + SUPER + down |
| Add to master | SHIFT + SUPER + left |
| Remove from master | SHIFT + SUPER + right |
| Screenshot region | SUPER + PRINT |
| Screenshot monitor | PRINT |
| Screenshot window | SHIFT + SUPER + PRINT |
| Screenshot region then edit | ALTPRINT |
| Toggle hyprpanel | SHIFT + SUPER + T |
| Search on internet with wofi | SHIFT + SUPER + S |
| Clipboard picker with wofi | SHIFT + SUPER + C |
| Emoji picker with wofi | SHIFT + SUPER + E |
| Toggle night shift | SUPER + F2 |
| Toggle night shift | SUPER + F3 |
| Move Window (mouse) | SUPER + mouse:272 |
| Resize Window (mouse) | SUPER + R |
| Toggle Mute | XF86AudioMute |
| Play/Pause Song | XF86AudioPlay |
| Next Song | XF86AudioNext |
| Previous Song | XF86AudioPrev |
| Lock when closing Lid | switch:Lid Switch |
| Sound Up | XF86AudioRaiseVolume |
| Sound Down | XF86AudioLowerVolume |
| Brightness Up | XF86MonBrightnessUp |
| Brightness Down | XF86MonBrightnessDown |
-38
View File
@@ -1,38 +0,0 @@
# Keybindings
The list of the keybindings working on Hyprland:
| Description | Keybinding |
|-----------------------------|--------------------------|
| Switch Workspace | SUPER + {Number} |
| Move app to Workspace | SHIFT + SUPER + {Number} |
| Kitty | SUPER + RETURN |
| Thunar | SUPER + E |
| Qutebrowser | SUPER + B |
| Bitwarden | SUPER + K |
| Peaclock | SUPER + C |
| Lock | SUPER + L |
| Powermenu | SUPER + X |
| Launcher | SUPER + SPACE |
| Close window | SUPER + Q |
| Toggle Floating | SUPER + T |
| Toggle Fullscreen | SUPER + F |
| Move focus left | SUPER + left |
| Move focus Right | SUPER + right |
| Move focus Up | SUPER + up |
| Move focus Down | SUPER + down |
| Screenshot window | SUPER + PRINT |
| Screenshot monitor | PRINT |
| Screenshot region | SHIFT + SUPER + PRINT |
| Screenshot region then edit | ALT PRINT |
| Turn off night shift | SUPER + F2 |
| Turn on night shift | SUPER + F3 |
| Choose sound output | SUPER + F5 |
| Move Window (mouse) | SUPER + mouse:272 |
| Resize Window (mouse) | SUPER + R |
| Toggle Mute | XF86AudioMute |
| Lock when closing Lid | switch:Lid Switch |
| Sound Up | XF86AudioRaiseVolume |
| Sound Down | XF86AudioLowerVolume |
| Brightness Up | XF86MonBrightnessUp |
| Brightness Down | XF86MonBrightnessDown |
+98 -59
View File
@@ -1,59 +1,98 @@
# Scripts
Scripts are located in the `home/scripts` folder. Home-manager add those in the path.
## Nix/NixOs shortcuts
> [!TIP]
> The `hostname` variable in `hosts/yourhost/variables.nix` should be also the name of the `nixosConfiguration` in `flake.nix` file.
- `nixy` # UI
- `nixy rebuild`
- `nixy update`
- `nixy upgrade`
- `nixy gc` # garbage collection
- `nixy cb` # clean boot menu
## Brightness control
- `brightness-up`
- `brightness-down`
- `brightness-change <up/down> <increment>`
## Sound control
- `sound-up`
- `sound-down`
- `sound-toggle`
- `sound-output`
- `sound-change [up/down/mute] <increment>`
## Caffeine
Caffeine is a simple script that toggles hypridle (disable suspend & screenlock).
- `caffeine` # Toggle caffeine
- `caffeine-status` # Return active/inactive
## Night-Shift
Blue light filter, using wlsunset
- `night-shift` # Toggle night shift
- `night-shift-status` # Return active/inactive
- `night-shift-on`
- `night-shift-off`
## Nerdfont FZF
Nerdfont fzf is a quick way to search for nerdfont icons locally.
It will copy the selected icon to the clipboard.
- `nerdfont-fzf`
## Compress/Extract
Some shortcuts to compress and extract files.
- `compress` ...
- `extract` ...
[//]: # (This file is autogenerated)
# Scripts
Scripts are located in the 'home/scripts' folder. Home-manager add those in the user's path.
## Brightness
This module provides a set of scripts to control the brightness of the screen.
- `brightness-up` increases the brightness by 5%.
- `brightness-down` decreases the brightness by 5%.
- `brightness-set [value]` sets the brightness to the given value.
- `brightness-change [up|down] [value]` increases or decreases the brightness by the given value.
## Caffeine
Caffeine is a simple script that toggles hypridle (disable suspend & screenlock).
- `caffeine-status` - Check if hypridle is running. (0/1)
- `caffeine-status-icon` - Check if hypridle is running. (icon)
- `caffeine` - Toggle hypridle.
## Hyprfocus
A simple script to toggle focus on few windows in Hyprland.
(disable gaps, border, shadow, opacity, etc.)
- `hyprfocus-on` - Enable hyprfocus.
- `hyprfocus-off` - Disable hyprfocus.
- `hyprfocus-toggle` - Toggle hyprfocus.
## Hyprpanel
Quick scripts to toggle, reload, hide & show hyprpanel.
- `hyprpanel-toggle` - Toggle hyprpanel (hide/show).
- `hyprpanel-show` - Show hyprpanel.
- `hyprpanel-hide` - Hide hyprpanel.
- `hyprpanel-reload` - Reload hyprpanel.
## Nerdfont FZF
This module provides a script to search for Nerd Fonts icons using fzf.
- `nerdfont-fzf` - Search for Nerd Fonts icons using fzf.
## Night-Shift
Night-Shift is a feature that reduces the amount of blue light emitted by your screen, which can help reduce eye strain and improve sleep quality. This module provides a set of scripts to control Night-Shift on your system.
It use hyprsunset to control the screen temperature.
- `night-shift-on` activates Night-Shift.
- `night-shift-off` deactivates Night-Shift.
- `night-shift` toggles Night-Shift.
- `night-shift-status` checks if Night-Shift is active. (0/1)
- `night-shift-status-icon` checks if Night-Shift is active. (icon)
## Nixy
Nixy is a simple script that I use to manage my NixOS system. It's a simple script that provides a menu to rebuild, upgrade, update, collect garbage, clean boot menu, etc.
- `nixy` - UI wizard to manage the system.
- `nixy rebuild` - Rebuild the system.
- `nixy ...` - ... see the script for more commands.
## OpenVPN
OpenVPN allows you to connect/disconnect quickly to a openVPN server
- `openvpn-up` turn on the vpn
- `openvpn-down` turn down the vpn
- `openvpn-toggle` toggle the vpn
## Screenshot
This module provides a script to take screenshots using `grimblast` and `swappy`.
- `screenshot [region|window|monitor] [swappy]` - Take a screenshot of the region, window, or monitor. Optionally, use `swappy` to copy the screenshot to the clipboard.
## Sound
This module provides a set of scripts to control the volume of the default audio sink using `wpctl`.
- `sound-up` increases the volume by 5%.
- `sound-down` decreases the volume by 5%.
- `sound-set [value]` sets the volume to the given value.
- `sound-toggle` toggles the mute state of the default audio sink.
## System
Usefull quick scripts
- `menu` - Open wofi with drun mode. (wofi)
- `powermenu` - Open power dropdown menu. (wofi)
- `lock` - Lock the screen. (hyprlock)
+7 -18
View File
@@ -1,7 +1,7 @@
# Themes
Themes are defined in `hosts/themes`. Those themes define the colors, fonts, icons, etc, used by Hyprland and the apps/programs installed.
You can change the selected theme by changing the import statement of your host's variables.nix file.
Themes are defined in `themes`. Those themes define the colors, fonts, icons, etc, used by Hyprland and the apps/programs installed.
You can change the selected theme by changing the import statement of your host's configuration.nix file.
> [!TIP]
> To apply the theme to DuckDuckGo, follow the instructions in `$HOME/.duckduckgo-colorscheme.js`
@@ -9,24 +9,13 @@ You can change the selected theme by changing the import statement of your host'
## Create your theme
Create a copy of one of the existing themes and change the variables.
Wallpapers are loaded from the `home/wallpapers` folder.
Wallpapers are loaded from the [nixy-wallpapers](https://github.com/anotherhadi/nixy-wallpapers) repo.
## Gallery
### Nixy
![nixy1](src/nixy/1.png)
![nixy2](src/nixy/2.png)
![nixy3](src/nixy/3.png)
### Catppuccin
![catppuccin1](src/catppuccin/1.png)
![catppuccin2](src/catppuccin/2.png)
![catppuccin3](src/catppuccin/3.png)
### Windows
![windows1](src/windows/1.png)
![windows2](src/windows/2.png)
![windows3](src/windows/3.png)
![nixy1](../.github/assets/nixy/1.png)
![nixy2](../.github/assets/nixy/2.png)
![nixy3](../.github/assets/nixy/3.png)
![nixy4](../.github/assets/nixy/4.png)
+6 -30
View File
@@ -2,33 +2,9 @@
feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md))
- [ ] Nixy
- [ ] Themes
- [ ] Qutebrowser
- [ ] !!! Bitwarden integration (I need this.)
- [ ] Hyprland
- [ ] Implement Hyprcursor
echo "Compresing png files..."
- [ ] wofi: popin
- [ ] wlogout: fade in
- [ ] Fix screenshots (screenshot region's border shows up in the screenshot, hyprshot jq error?)
- [ ] Hyprlock themes
- [ ] Hypridle fix: suspend not working?
- [ ] Nixvim
- [ ] Keymaps:
- Trouble
- Tagbar (actually not working)
- [ ] Disable background color for headlines.nvim for titles
## Server
- [ ] Server configuration is actually broken, need to update with the new modules
- [ ] Jackflix V2
- Backup Radarr, Prowlarr, Sonarr config
- Take a look into buildarr
- [ ] Bitcoin-git: to test
- [ ] Ntfy auth file
- [ ] Secrets mode 0444: not secure
- [ ] ${config.users.users.${user}.home} instead of "/home/${username}"
- [ ] Hyprpanel screenshot
- [ ] PIA Vpn (issue in progress)
- [ ] Webcord (system24 theme? Tui)
- [ ] check gvolpe/nix-config
- [ ] <https://github.com/isabelroses/dotfiles/blob/main/home/comfy/system/xdg.nix>
-39
View File
@@ -1,39 +0,0 @@
# Wallpapers
Wallpapers can be found in the `/home/wallpapers` folder.
| Name | Preview |
|---------------------|----------------------------------------------------------------|
| astronaut.png | ![astronaut.png](../home/wallpapers/astronaut.png) |
| aurore.png | ![aurore.png](../home/wallpapers/aurore.png) |
| barcode.png | ![barcode.png](../home/wallpapers/barcode.png) |
| cat-leaves.png | ![cat-leaves.png](../home/wallpapers/cat-leaves.png) |
| city.png | ![city.png](../home/wallpapers/city.png) |
| cloud.png | ![cloud.png](../home/wallpapers/cloud.png) |
| clouds2.png | ![clouds2.png](../home/wallpapers/clouds2.png) |
| clouds.png | ![clouds.png](../home/wallpapers/clouds.png) |
| coffee.png | ![coffee.png](../home/wallpapers/coffee.png) |
| dark_cloud.png | ![dark_cloud.png](../home/wallpapers/dark_cloud.png) |
| dark.png | ![dark.png](../home/wallpapers/dark.png) |
| fuji-dark.png | ![fuji-dark.png](../home/wallpapers/fuji-dark.png) |
| fuji-light.png | ![fuji-light.png](../home/wallpapers/fuji-light.png) |
| galaxy.png | ![galaxy.png](../home/wallpapers/galaxy.png) |
| house-cloud.png | ![house-cloud.png](../home/wallpapers/house-cloud.png) |
| key.png | ![key.png](../home/wallpapers/key.png) |
| lavender-cat.png | ![lavender-cat.png](../home/wallpapers/lavender-cat.png) |
| lofi-computer.png | ![lofi-computer.png](../home/wallpapers/lofi-computer.png) |
| lofi-urban.png | ![lofi-urban.png](../home/wallpapers/lofi-urban.png) |
| magma.png | ![magma.png](../home/wallpapers/magma.png) |
| mountains-black.png | ![mountains-black.png](../home/wallpapers/mountains-black.png) |
| mountains.png | ![mountains.png](../home/wallpapers/mountains.png) |
| nix.png | ![nix.png](../home/wallpapers/nix.png) |
| problems.png | ![problems.png](../home/wallpapers/problems.png) |
| sea2.png | ![sea2.png](../home/wallpapers/sea2.png) |
| sea.png | ![sea.png](../home/wallpapers/sea.png) |
| space2.png | ![space2.png](../home/wallpapers/space2.png) |
| space.png | ![space.png](../home/wallpapers/space.png) |
| street.png | ![street.png](../home/wallpapers/street.png) |
| sun.png | ![sun.png](../home/wallpapers/sun.png) |
| tokyo.png | ![tokyo.png](../home/wallpapers/tokyo.png) |
| train.png | ![train.png](../home/wallpapers/train.png) |
| windows.png | ![windows.png](../home/wallpapers/windows.png) |
-20
View File
@@ -1,20 +0,0 @@
#!/usr/bin/env bash
# Compress png files in ./docs/src and ./home/wallpapers
[[ -d "./docs" ]] || (echo "Folder ./docs not found" && exit 1)
# Main images
for file in ./docs/src/*.png; do
optipng "$file"
done
# Theme's images
for file in ./docs/src/*/*.png; do
optipng "$file"
done
# Wallpapers
for file in ./home/wallpapers/*.png; do
optipng "$file"
done
-24
View File
@@ -1,24 +0,0 @@
#!/usr/bin/env bash
[[ -d "./docs" ]] || (echo "Folder ./docs not found" && exit 1)
# Create WALLPAPERS.md to preview wallpapers in ./home/wallpapers
WALLPAPERS_FOLDER="./home/wallpapers"
WALLPAPERS_MD="./docs/WALLPAPERS.md"
[[ -d "$WALLPAPERS_FOLDER" ]] || (echo "Wallpapers folder not found" && exit 1)
echo "# Wallpapers" >"$WALLPAPERS_MD"
echo "" >>"$WALLPAPERS_MD"
echo "Wallpapers can be found in the \`/home/wallpapers\` folder." >>"$WALLPAPERS_MD"
echo "" >>"$WALLPAPERS_MD"
echo "| Name | Preview |" >>"$WALLPAPERS_MD"
echo "| -- | -- |" >>"$WALLPAPERS_MD"
for file in "$WALLPAPERS_FOLDER"/*.png; do
filename=$(basename "$file")
echo "| $filename | ![$filename](../home/wallpapers/$filename) |" >>"$WALLPAPERS_MD"
done
pandoc -t commonmark_x "$WALLPAPERS_MD" -o "/tmp/wallpapers.md"
mv "/tmp/wallpapers.md" "$WALLPAPERS_MD"
-27
View File
@@ -1,27 +0,0 @@
#!/usr/bin/env bash
# Create the README.md file from the docs/src/README_template.md file
[[ -d "./docs" ]] || (echo "Folder ./docs not found" && exit 1)
README_FILE="./README.md"
header=$(cat "./docs/src/header.md")
table_of_content=$(md-table-of-contents ./docs/src/README_template.md) # https://github.com/anotherhadi/md-table-of-contents
version=$(git describe --tags --abbrev=0)
readme_content=$(cat "./docs/src/README_template.md")
description=$(curl -s https://api.github.com/repos/anotherhadi/nixy | jq .description)
description="${description%\"}"
description="${description#\"}"
header=${header//\{date\}/$(date '+%D')}
header=${header//\{primarycolor\}/89b4fa}
header=${header//\{backgroundcolor\}/181825}
header=${header//\{version\}/$version}
header=${header//\{description\}/$description}
readme_content=${readme_content//\{md_table_of_content\}/$table_of_content}
echo "$header" >"$README_FILE"
echo "$readme_content" >>"$README_FILE"
sed 's/\r//' "$README_FILE" >"/tmp/readme.md"
mv "/tmp/readme.md" "$README_FILE"
-26
View File
@@ -1,26 +0,0 @@
#!/usr/bin/env bash
[[ -d "./docs" ]] || (echo "Folder ./docs not found" && exit 1)
TAG=$(git describe --tags --abbrev=0)
echo "Current tag: $TAG"
read -rp "Enter the new tag name: " NEW_TAG
read -rp "Do you want to compress the png files? [y/N]: " COMPRESS_PNG
if [[ "$COMPRESS_PNG" == "y" || "$COMPRESS_PNG" == "Y" ]]; then
echo "Compresing png files..."
bash ./docs/scripts/compress_png.sh
fi
echo "Creating wallpapers preview..."
bash ./docs/scripts/create_preview_wallpapers.sh
echo "Creating README.md..."
bash ./docs/scripts/create_readme.sh
echo "Creating keybindings.md..."
bash ./docs/scripts/keybindings_to_markdown.sh
git add .
git commit -m "Release $NEW_TAG"
git tag -a "$NEW_TAG" -m "Release $NEW_TAG"
git push origin "$NEW_TAG"
-42
View File
@@ -1,42 +0,0 @@
#!/usr/bin/env bash
[ "$1" = "" ] && echo "Usage: $0 <theme_name>" && exit 1
theme_name=$1
# Switch to workspace 1
sleep 2
# Step 1
kitty --class peaclock peaclock &
sleep 1
menu &
sleep 1
hyprshot -m "output" -m "active" -o "$HOME/.config/nixos/docs/src/$theme_name" -f "1.png" -d
sleep 2
pkill peaclock
menu
sleep 2
# Step 2
kitty cmatrix &
sleep 1
kitty &
sleep 1
qutebrowser &
sleep 3
hyprshot -m "output" -m "active" -o "$HOME/.config/nixos/docs/src/$theme_name" -f "2.png" -d
sleep 2
pkill cmatrix
pkill --newest qutebrowser ""
pkill --newest kitty
sleep 2
# Step 3
kitty cava &
sleep 1
spotify &
sleep 10
brightness-down
sleep 1
hyprshot -m "output" -m "active" -o "$HOME/.config/nixos/docs/src/$theme_name" -f "3.png" -d
sleep 2
-55
View File
@@ -1,55 +0,0 @@
**Nixy** is a **Hyprland** NixOS configuration with **home-manager**, **secrets**, and **custom theming** all in one place.
It's a simple way to manage your system configuration and dotfiles.
## Table of Content
{md_table_of_content}
## Gallery
![catppuccin1](docs/src/catppuccin/1.png)
![catppuccin2](docs/src/catppuccin/2.png)
![catppuccin3](docs/src/catppuccin/3.png)
## Architecture
- 🏠 `home` are the dotfiles and configuration files for the users
- 'programs' is a collection of apps configured with home-manager
- 'scripts' is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
- 'system' is some "desktop environment" configuration
- 'wallpapers' are... wallpapers
- 💻 `hosts` are the system configuration files
- 'laptop' is my configuration for my laptop with Nvidia that you can copy
- 'server' is for my homeserver (w/nextcloud, nginx, vaultwarden, ... look `hosts/server`)
- 'themes' contains all the *themes* available *(see [THEMES.md](docs/THEMES.md))*
- 'modules' are some nix modules that you can import (Nvidia, prime, fonts, ...)
## Installation
```sh
git clone https://github.com/anotherhadi/nixy ~/.config/nixos
```
- Copy the `hosts/laptop` folder, rename it to your system name, and change the variables inside the `variables.nix` file
- Add your `hardware-configuration.nix` to your new host's folder
- Add your 'nixosConfigurations' inside `flake.nix` (You can edit your hostname one and change the lines containing '# CHANGEME')
> [!NOTE]
> When you add new files, don't forget to run `git add .` to add them to the git repository
```sh
sudo nixos-rebuild switch --flake ~/.config/nixos#yourhostname
```
## Documentation
- [THEMES.md](docs/THEMES.md): How themes work and how to create your own
- [APPS.md](docs/APPS.md): Which apps are installed
- [SCRIPTS.md](docs/SCRIPTS.md): Scripts that are available
- [KEYBINDINGS.md](docs/KEYBINDINGS.md): Keybindings available in Hyprland
- [WALLPAPERS.md](docs/WALLPAPERS.md): Preview of every wallpapers available
- [TODO.md](docs/TODO.md): What's next (feel free to contribute)
- [CONTRIBUTING.md](docs/CONTRIBUTING.md): How to contribute
- [LICENSE](LICENSE): MIT License
Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 617 KiB

-33
View File
@@ -1,33 +0,0 @@
[//]: # (Title: Nixy)
[//]: # (Description: {description})
[//]: # (Author: Hadi)
[//]: # (Date: {date})
[//]: # (Version: {version})
<div align="center">
<img src="https://raw.githubusercontent.com/anotherhadi/nixy/main/docs/src/logo.png" width="100px" />
</div>
<br>
# Nixy
<br>
<div align="center">
<a href="https://github.com/anotherhadi/nixy">
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=Version&message={version}&colorA={backgroundcolor}&colorB={primarycolor}&logo=githubactions&logoColor={primarycolor}"/>
</a>
<a href="https://github.com/anotherhadi/nixy/stargazers">
<img src="https://img.shields.io/github/stars/anotherhadi/nixy?color={primarycolor}&labelColor={backgroundcolor}&style=for-the-badge&logo=starship&logoColor={primarycolor}">
</a>
<a href="https://github.com/anotherhadi/nixy/">
<img src="https://img.shields.io/github/repo-size/anotherhadi/nixy?color={primarycolor}&labelColor={backgroundcolor}&style=for-the-badge&logo=github&logoColor={primarycolor}">
</a>
<a href="https://nixos.org">
<img src="https://img.shields.io/badge/NixOS-unstable-blue.svg?style=for-the-badge&labelColor={backgroundcolor}&logo=NixOS&logoColor={primarycolor}&color={primarycolor}">
</a>
<a href="https://github.com/anotherhadi/nixy/blob/main/LICENSE">
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&colorA={backgroundcolor}&colorB={primarycolor}&logo=unlicense&logoColor={primarycolor}"/>
</a>
</div>
<br>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

-1
View File
@@ -1 +0,0 @@
8c00e379ddd7f89e4bbf9f381a5721d980c8026f
Binary file not shown.

Before

Width:  |  Height:  |  Size: 566 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 811 KiB

-1
View File
@@ -1 +0,0 @@
62b52ad02a886c19a8cfe1ea17e8aaad50f23632
Binary file not shown.

Before

Width:  |  Height:  |  Size: 411 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 990 KiB

Generated
+1360 -118
View File
File diff suppressed because it is too large Load Diff
+24 -31
View File
@@ -7,6 +7,7 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
@@ -15,7 +16,6 @@
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
apple-fonts.url = "github:Lyndeno/apple-fonts.nix";
spicetify-nix = {
url = "github:Gerg-L/spicetify-nix";
inputs.nixpkgs.follows = "nixpkgs";
@@ -24,41 +24,34 @@
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprspace = { url = "github:KZDKM/Hyprspace"; };
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
hyprpolkitagent.url = "github:hyprwm/hyprpolkitagent";
hyprpanel.url = "github:Jas-SinghFSU/HyprPanel";
stylix.url = "github:danth/stylix";
apple-fonts.url = "github:Lyndeno/apple-fonts.nix";
nur.url = "github:nix-community/NUR";
zen-browser.url =
"git+https://git.sr.ht/~canasta/zen-browser-flake/"; # updated flake
};
outputs = inputs@{ nixpkgs, ... }: {
nixosConfigurations = {
nixy = nixpkgs.lib.nixosSystem { # CHANGEME
system = "x86_64-linux";
modules = [
{ _module.args = { inherit inputs; }; }
inputs.nixos-hardware.nixosModules.omen-16-n0280nd # CHANGEME
inputs.home-manager.nixosModules.home-manager
./hosts/laptop/configuration.nix # CHANGEME
];
};
jack = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
inputs.sops-nix.nixosModules.sops
./hosts/server/configuration.nix
inputs.home-manager.nixosModules.home-manager
{
nixpkgs.overlays = [ inputs.nurpkgs.overlay ];
_module.args = { inherit inputs; };
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users."hadi" = import ./hosts/server/home.nix;
extraSpecialArgs = { inherit inputs; };
};
}
];
};
nixy = # CHANGEME: This should match the 'hostname' in your variables.nix file
nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
{
nixpkgs.overlays =
[ inputs.hyprpanel.overlay inputs.nur.overlays.default ];
_module.args = { inherit inputs; };
}
inputs.nixos-hardware.nixosModules.omen-16-n0005ne # CHANGEME: check https://github.com/NixOS/nixos-hardware
inputs.home-manager.nixosModules.home-manager
inputs.stylix.nixosModules.stylix
./hosts/laptop/configuration.nix # CHANGEME: change the path to match your host folder
];
};
};
};
-9
View File
@@ -1,9 +0,0 @@
{
programs.btop = {
enable = true;
settings = {
color_theme = "Default";
theme_background = false;
};
};
}
-13
View File
@@ -1,13 +0,0 @@
{ config, ... }: {
programs.cava = {
enable = true;
settings = {
general.framerate = 60;
smoothing.noise_reduction = 88;
color = {
background = "'#${config.var.theme.colors.bg}'";
foreground = "'#${config.var.theme.colors.accent}'";
};
};
};
}
@@ -0,0 +1,44 @@
# A duckduckgo colorscheme generated for the Stylix theme used.
{ config, ... }:
let
accent = config.lib.stylix.colors.base0D;
background = config.lib.stylix.colors.base00;
foreground = config.lib.stylix.colors.base05;
background-alt = config.lib.stylix.colors.base01;
foreground-alt = config.lib.stylix.colors.base06;
in {
home.file.".duckduckgo-colorscheme.js".text =
# js
''
// Go to DuckDuckGo settings page, open the console, paste the code and hit enter.
// based on https://ddg.codingcodax.dev/
// Cookies string for your theme
const cookie = '7=${background}; j=${background}; 9=${foreground}; aa=${foreground-alt}; 8=${foreground}; x=${accent}; 21=${background-alt};';
// Converts cookie string into formatted JSON
const cookieToJSON = (cookieRaw) => {
const cookieJson = {};
const items = cookieRaw.split(/[ ,]+/);
items.forEach((item) => {
const parts = item.split('=');
cookieJson[parts[0]] = parts[1];
});
return cookieJson;
};
// Iterates over JSON, and adds to browser cookie store
const setCookies = (cookieJson) => {
Object.keys(cookieJson).forEach((key) => {
document.cookie = `''${key}=''${cookieJson [ key ]}`;
});
};
// Call set cookies, passing in formated cookie data
setCookies(cookieToJSON(cookie));
// All done, reload page for changes to take effect :)
location.reload();
'';
}
+1 -4
View File
@@ -1,4 +1,4 @@
{ pkgs, config, ... }: {
{ pkgs, ... }: {
home.packages = with pkgs; [ neofetch ];
xdg.configFile."neofetch/ascii.txt".text = ''
@@ -109,9 +109,6 @@
song_format="%artist% - %album% - %title%"
song_shorthand="off"
mpc_args=()
colors=(${toString config.var.theme.colors.accentNumber} 1 ${
toString config.var.theme.colors.accentNumber
} ${toString config.var.theme.colors.accentNumber} 7)
bold="on"
underline_enabled="on"
underline_char="-"
+4 -4
View File
@@ -1,4 +1,4 @@
{ pkgs, config, ... }:
{ pkgs, ... }:
let
nerdfetch = pkgs.writeShellScriptBin "nerdfetch" ''
ostype="$(uname)"
@@ -345,9 +345,9 @@ let
## USER VARIABLES -- YOU CAN CHANGE THESE
lc="$reset$bold''$${config.var.theme.colors.accentName}" # labels
nc="$reset$bold''$${config.var.theme.colors.accentName}" # labels
hn="$reset$bold''$${config.var.theme.colors.accentName}" # labels
lc="$reset$bold$magenta" # labels
nc="$reset$bold$magenta" # labels
hn="$reset$bold$magenta" # labels
ic="$reset$white" # info
c0="$reset$grey" # first color
c1="$reset$white" # second color
+8 -3
View File
@@ -1,8 +1,12 @@
{ config, ... }: {
{ config, ... }:
let
username = config.var.git.username;
email = config.var.git.email;
in {
programs.git = {
enable = true;
userName = config.var.git.username;
userEmail = config.var.git.email;
userName = username;
userEmail = email;
ignores = [
".cache/"
".DS_Store"
@@ -18,6 +22,7 @@
extraConfig = {
init.defaultBranch = "main";
push.autoSetupRemote = true;
color.ui = "1";
};
aliases = {
essa = "push --force";
+12 -32
View File
@@ -1,6 +1,15 @@
{ config, pkgs, ... }: {
{
programs.kitty = {
enable = true;
keybindings = {
# Reset existing mappings
"ctrl+alt+tab" = "next_tab";
"ctrl+alt+shift+tab" = "previous_tab";
# Send Ctrl Tab and Ctrl + Shift + Tab for Tmux navigation
"ctrl+tab" = "send_text all \\x1b[27;5;9~";
"ctrl+shift+tab" = "send_text all \\x1b[27;6;9~";
"alt+tab" = "send_text all \\x1b[27;3;9~";
};
settings = {
scrollback_lines = 10000;
initial_window_width = 1200;
@@ -10,39 +19,10 @@
confirm_os_window_close = "0";
remember_window_size = "no";
disable_ligatures = "never";
shell = "${pkgs.tmux}/bin/tmux";
url_style = "curly";
cursor_shape = "Underline";
cursor_underline_thickness = config.var.theme.border-size;
window_padding_width = config.var.theme.gaps-in;
# Font
font_family = config.var.theme.font-mono;
font_size = config.var.theme.font-size;
# Colors
background = "#" + config.var.theme.colors.bg;
url_color = "#" + config.var.theme.colors.accent;
color0 = "#" + config.var.theme.colors.c0;
color8 = "#" + config.var.theme.colors.c8;
color1 = "#" + config.var.theme.colors.c1;
color9 = "#" + config.var.theme.colors.c9;
color2 = "#" + config.var.theme.colors.c2;
color10 = "#" + config.var.theme.colors.c10;
color3 = "#" + config.var.theme.colors.c3;
color11 = "#" + config.var.theme.colors.c11;
color4 = "#" + config.var.theme.colors.c4;
color12 = "#" + config.var.theme.colors.c12;
color5 = "#" + config.var.theme.colors.c5;
color13 = "#" + config.var.theme.colors.c13;
color6 = "#" + config.var.theme.colors.c6;
color14 = "#" + config.var.theme.colors.c14;
color7 = "#" + config.var.theme.colors.c7;
color15 = "#" + config.var.theme.colors.c15;
cursor = "#" + config.var.theme.colors.fg;
cursor_text_color = "#" + config.var.theme.colors.bg;
selection_foreground = "#" + config.var.theme.colors.accentFg;
selection_background = "#" + config.var.theme.colors.accent;
cursor_underline_thickness = 3;
window_padding_width = 10;
};
};
}
+22
View File
@@ -0,0 +1,22 @@
{ config, lib, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
muted = "#${config.lib.stylix.colors.base03}";
in {
programs.lazygit = {
enable = true;
settings = lib.mkForce {
gui = {
theme = {
activeBorderColor = [ accent "bold" ];
inactiveBorderColor = [ muted ];
};
showListFooter = false;
showRandomTip = false;
showCommandLog = false;
showBottomLine = false;
nerdFontsVersion = "3";
};
};
};
}
-174
View File
@@ -1,174 +0,0 @@
# vim:ft=dircolors
# (This is not a dircolors file but it helps to highlight colors and comments)
# default values from dircolors
# (entries with a leading # are not implemented in lf)
# #no 00 # NORMAL
# fi 00 # FILE
# #rs 0 # RESET
# di 01;34 # DIR
# ln 01;36 # LINK
# #mh 00 # MULTIHARDLINK
# pi 40;33 # FIFO
# so 01;35 # SOCK
# #do 01;35 # DOOR
# bd 40;33;01 # BLK
# cd 40;33;01 # CHR
# or 40;31;01 # ORPHAN
# #mi 00 # MISSING
# su 37;41 # SETUID
# sg 30;43 # SETGID
# #ca 30;41 # CAPABILITY
# tw 30;42 # STICKY_OTHER_WRITABLE
# ow 34;42 # OTHER_WRITABLE
# st 37;44 # STICKY
# ex 01;32 # EXEC
# default values from lf (with matching order)
# ln 01;36 # LINK
# or 31;01 # ORPHAN
# tw 01;34 # STICKY_OTHER_WRITABLE
# ow 01;34 # OTHER_WRITABLE
# st 01;34 # STICKY
# di 01;34 # DIR
# pi 33 # FIFO
# so 01;35 # SOCK
# bd 33;01 # BLK
# cd 33;01 # CHR
# su 01;32 # SETUID
# sg 01;32 # SETGID
# ex 01;32 # EXEC
# fi 00 # FILE
# file types (with matching order)
ln 01;36 # LINK
or 31;01 # ORPHAN
tw 34 # STICKY_OTHER_WRITABLE
ow 34 # OTHER_WRITABLE
st 01;34 # STICKY
di 01;34 # DIR
pi 33 # FIFO
so 01;35 # SOCK
bd 33;01 # BLK
cd 33;01 # CHR
su 01;32 # SETUID
sg 01;32 # SETGID
ex 01;32 # EXEC
fi 00 # FILE
# archives or compressed (dircolors defaults)
*.tar 01;31
*.tgz 01;31
*.arc 01;31
*.arj 01;31
*.taz 01;31
*.lha 01;31
*.lz4 01;31
*.lzh 01;31
*.lzma 01;31
*.tlz 01;31
*.txz 01;31
*.tzo 01;31
*.t7z 01;31
*.zip 01;31
*.z 01;31
*.dz 01;31
*.gz 01;31
*.lrz 01;31
*.lz 01;31
*.lzo 01;31
*.xz 01;31
*.zst 01;31
*.tzst 01;31
*.bz2 01;31
*.bz 01;31
*.tbz 01;31
*.tbz2 01;31
*.tz 01;31
*.deb 01;31
*.rpm 01;31
*.jar 01;31
*.war 01;31
*.ear 01;31
*.sar 01;31
*.rar 01;31
*.alz 01;31
*.ace 01;31
*.zoo 01;31
*.cpio 01;31
*.7z 01;31
*.rz 01;31
*.cab 01;31
*.wim 01;31
*.swm 01;31
*.dwm 01;31
*.esd 01;31
# image formats (dircolors defaults)
*.jpg 01;35
*.jpeg 01;35
*.mjpg 01;35
*.mjpeg 01;35
*.gif 01;35
*.bmp 01;35
*.pbm 01;35
*.pgm 01;35
*.ppm 01;35
*.tga 01;35
*.xbm 01;35
*.xpm 01;35
*.tif 01;35
*.tiff 01;35
*.png 01;35
*.svg 01;35
*.svgz 01;35
*.mng 01;35
*.pcx 01;35
*.mov 01;35
*.mpg 01;35
*.mpeg 01;35
*.m2v 01;35
*.mkv 01;35
*.webm 01;35
*.ogm 01;35
*.mp4 01;35
*.m4v 01;35
*.mp4v 01;35
*.vob 01;35
*.qt 01;35
*.nuv 01;35
*.wmv 01;35
*.asf 01;35
*.rm 01;35
*.rmvb 01;35
*.flc 01;35
*.avi 01;35
*.fli 01;35
*.flv 01;35
*.gl 01;35
*.dl 01;35
*.xcf 01;35
*.xwd 01;35
*.yuv 01;35
*.cgm 01;35
*.emf 01;35
*.ogv 01;35
*.ogx 01;35
# audio formats (dircolors defaults)
*.aac 00;36
*.au 00;36
*.flac 00;36
*.m4a 00;36
*.mid 00;36
*.midi 00;36
*.mka 00;36
*.mp3 00;36
*.mpc 00;36
*.ogg 00;36
*.ra 00;36
*.wav 00;36
*.oga 00;36
*.opus 00;36
*.spx 00;36
*.xspf 00;36
-361
View File
@@ -1,361 +0,0 @@
# vim:ft=conf
# These examples require Nerd Fonts or a compatible font to be used.
# See https://www.nerdfonts.com for more information.
# default values from lf (with matching order)
# ln l # LINK
# or l # ORPHAN
# tw t # STICKY_OTHER_WRITABLE
# ow d # OTHER_WRITABLE
# st t # STICKY
# di d # DIR
# pi p # FIFO
# so s # SOCK
# bd b # BLK
# cd c # CHR
# su u # SETUID
# sg g # SETGID
# ex x # EXEC
# fi - # FILE
# file types (with matching order)
ln  # LINK
or  # ORPHAN
tw t # STICKY_OTHER_WRITABLE
ow  # OTHER_WRITABLE
st t # STICKY
di  # DIR
pi p # FIFO
so s # SOCK
bd b # BLK
cd c # CHR
su u # SETUID
sg g # SETGID
ex  # EXEC
fi  # FILE
# file extensions (vim-devicons)
*.styl 
*.sass 
*.scss 
*.htm 
*.html 
*.slim 
*.haml 
*.ejs 
*.css 
*.less 
*.md 
*.mdx 
*.markdown 
*.rmd 
*.json 
*.webmanifest 
*.js 
*.mjs 
*.jsx 
*.rb 
*.gemspec 
*.rake 
*.php 
*.py 
*.pyc 
*.pyo 
*.pyd 
*.coffee 
*.mustache 
*.hbs 
*.conf 
*.ini 
*.yml 
*.yaml 
*.toml 
*.bat 
*.mk 
*.jpg 
*.jpeg 
*.bmp 
*.png 
*.webp 
*.gif 
*.ico 
*.twig 
*.cpp 
*.c++ 
*.cxx 
*.cc 
*.cp 
*.c 
*.cs 󰌛
*.h 
*.hh 
*.hpp 
*.hxx 
*.hs 
*.lhs 
*.nix 
*.lua 
*.java 
*.sh 
*.fish 
*.bash 
*.zsh 
*.ksh 
*.csh 
*.awk 
*.ps1 
*.ml λ
*.mli λ
*.diff 
*.db 
*.sql 
*.dump 
*.clj 
*.cljc 
*.cljs 
*.edn 
*.scala 
*.go 
*.dart 
*.xul 
*.sln 
*.suo 
*.pl 
*.pm 
*.t 
*.rss 
'*.f#' 
*.fsscript 
*.fsx 
*.fs 
*.fsi 
*.rs 
*.rlib 
*.d 
*.erl 
*.hrl 
*.ex 
*.exs 
*.eex 
*.leex 
*.heex 
*.vim 
*.ai 
*.psd 
*.psb 
*.ts 
*.tsx 
*.jl 
*.pp 
*.vue 
*.elm 
*.swift 
*.xcplayground 
*.tex 󰙩
*.r 󰟔
*.rproj 󰗆
*.sol 󰡪
*.pem 
# file names (vim-devicons) (case-insensitive not supported in lf)
*gruntfile.coffee 
*gruntfile.js 
*gruntfile.ls 
*gulpfile.coffee 
*gulpfile.js 
*gulpfile.ls 
*mix.lock 
*dropbox 
*.ds_store 
*.gitconfig 
*.gitignore 
*.gitattributes 
*.gitlab-ci.yml 
*.bashrc 
*.zshrc 
*.zshenv 
*.zprofile 
*.vimrc 
*.gvimrc 
*_vimrc 
*_gvimrc 
*.bashprofile 
*favicon.ico 
*license 
*node_modules 
*react.jsx 
*procfile 
*dockerfile 
*docker-compose.yml 
*docker-compose.yaml 
*compose.yml 
*compose.yaml 
*rakefile 
*config.ru 
*gemfile 
*makefile 
*cmakelists.txt 
*robots.txt 󰚩
# file names (case-sensitive adaptations)
*Gruntfile.coffee 
*Gruntfile.js 
*Gruntfile.ls 
*Gulpfile.coffee 
*Gulpfile.js 
*Gulpfile.ls 
*Dropbox 
*.DS_Store 
*LICENSE 
*React.jsx 
*Procfile 
*Dockerfile 
*Docker-compose.yml 
*Docker-compose.yaml 
*Rakefile 
*Gemfile 
*Makefile 
*CMakeLists.txt 
# file patterns (vim-devicons) (patterns not supported in lf)
# .*jquery.*\.js$ 
# .*angular.*\.js$ 
# .*backbone.*\.js$ 
# .*require.*\.js$ 
# .*materialize.*\.js$ 
# .*materialize.*\.css$ 
# .*mootools.*\.js$ 
# .*vimrc.* 
# Vagrantfile$ 
# file patterns (file name adaptations)
*jquery.min.js 
*angular.min.js 
*backbone.min.js 
*require.min.js 
*materialize.min.js 
*materialize.min.css 
*mootools.min.js 
*vimrc 
Vagrantfile 
# archives or compressed (extensions from dircolors defaults)
*.tar 
*.tgz 
*.arc 
*.arj 
*.taz 
*.lha 
*.lz4 
*.lzh 
*.lzma 
*.tlz 
*.txz 
*.tzo 
*.t7z 
*.zip 
*.z 
*.dz 
*.gz 
*.lrz 
*.lz 
*.lzo 
*.xz 
*.zst 
*.tzst 
*.bz2 
*.bz 
*.tbz 
*.tbz2 
*.tz 
*.deb 
*.rpm 
*.jar 
*.war 
*.ear 
*.sar 
*.rar 
*.alz 
*.ace 
*.zoo 
*.cpio 
*.7z 
*.rz 
*.cab 
*.wim 
*.swm 
*.dwm 
*.esd 
# image formats (extensions from dircolors defaults)
*.jpg 
*.jpeg 
*.mjpg 
*.mjpeg 
*.gif 
*.bmp 
*.pbm 
*.pgm 
*.ppm 
*.tga 
*.xbm 
*.xpm 
*.tif 
*.tiff 
*.png 
*.svg 
*.svgz 
*.mng 
*.pcx 
*.mov 
*.mpg 
*.mpeg 
*.m2v 
*.mkv 
*.webm 
*.ogm 
*.mp4 
*.m4v 
*.mp4v 
*.vob 
*.qt 
*.nuv 
*.wmv 
*.asf 
*.rm 
*.rmvb 
*.flc 
*.avi 
*.fli 
*.flv 
*.gl 
*.dl 
*.xcf 
*.xwd 
*.yuv 
*.cgm 
*.emf 
*.ogv 
*.ogx 
# audio formats (extensions from dircolors defaults)
*.aac 
*.au 
*.flac 
*.m4a 
*.mid 
*.midi 
*.mka 
*.mp3 
*.mpc 
*.ogg 
*.ra 
*.wav 
*.oga 
*.opus 
*.spx 
*.xspf 
# other formats
*.pdf 
-80
View File
@@ -1,80 +0,0 @@
{ pkgs, ... }: {
home.packages = with pkgs; [ pistol ];
programs.lf = {
enable = true;
commands = {
dragon-out = ''%${pkgs.xdragon}/bin/xdragon -a -x "$fx"'';
editor-open = "$$EDITOR $f";
mkdir = ''
''${{
printf "Directory Name: "
read DIR
mkdir $DIR
}}
'';
};
keybindings = {
d = "delete";
x = "cut";
"<enter>" = "open";
"<c-g>" = "quit";
"<esc>" = "quit";
"H" = "set hidden!";
"\\\"" = "";
o = "";
c = "mkdir";
"." = "set hidden!";
"`" = "mark-load";
"\\'" = "mark-load";
"g~" = "cd";
do = "dragon-out";
gh = "cd";
"g/" = "/";
ee = "editor-open";
V = ''$''${pkgs.bat}/bin/bat --paging=always "$f"'';
};
settings = {
ratios = [ 1 1 2 ];
preview = true;
hidden = true;
drawbox = true;
icons = true;
ignorecase = true;
incsearch = true;
};
previewer.source = "${pkgs.pistol}/bin/pistol";
extraConfig = let
previewer = pkgs.writeShellScriptBin "pv.sh" ''
file=$1
w=$2
h=$3
x=$4
y=$5
if [[ "$( ${pkgs.file}/bin/file -Lb --mime-type "$file")" =~ ^image ]]; then
${pkgs.kitty}/bin/kitty +kitten icat --silent --stdin no --transfer-mode file --place "''${w}x''${h}@''${x}x''${y}" "$file" < /dev/null > /dev/tty
exit 1
fi
${pkgs.pistol}/bin/pistol "$file"
'';
cleaner = pkgs.writeShellScriptBin "clean.sh" ''
${pkgs.kitty}/bin/kitty +kitten icat --clear --stdin no --silent --transfer-mode file < /dev/null > /dev/tty
'';
in ''
set cleaner ${cleaner}/bin/clean.sh
set previewer ${previewer}/bin/pv.sh
'';
};
xdg.configFile."lf" = {
recursive = true;
source = ./config;
};
}
+6 -5
View File
@@ -1,6 +1,7 @@
# Nextcloud is a suite of client-server software for creating file hosting services and using them. It is functionally similar to Dropbox, although Nextcloud is free and open-source, allowing anyone to install and operate it on a private server. In contrast to proprietary services, Nextcloud can be hosted on a private server, without additional cost.
{
services.nextcloud-client = {
enable = true;
startInBackground = true;
};
}
services.nextcloud-client = {
enable = true;
startInBackground = true;
};
}
+187
View File
@@ -0,0 +1,187 @@
{
programs.nixvim = {
autoGroups = {
auto_quit.clear = true;
autoview.clear = true;
bufferline.clear = true;
checktime.clear = true;
create_dir.clear = true;
editorconfig_filetype.clear = true;
file_user_events.clear = true;
highlighturl.clear = true;
highlightyank.clear = true;
large_buf_settings.clear = true;
q_close_windows.clear = true;
terminal_settings.clear = true;
unlist_quickfix.clear = true;
};
autoCmd = [
# auto_quit
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L18-L46
{
desc =
"Quit neovim if more than one window is open and only sidebar windows are list";
event = "BufEnter";
group = "auto_quit";
callback.__raw = ''
function()
local wins = vim.api.nvim_tabpage_list_wins(0)
-- Both neo-tree and aerial will auto-quit if there is only a single window left
if #wins <= 1 then return end
local sidebar_fts = { aerial = true, ["neo-tree"] = true }
for _, winid in ipairs(wins) do
if vim.api.nvim_win_is_valid(winid) then
local bufnr = vim.api.nvim_win_get_buf(winid)
local filetype = vim.bo[bufnr].filetype
-- If any visible windows are not sidebars, early return
if not sidebar_fts[filetype] then
return
-- If the visible window is a sidebar
else
-- only count filetypes once, so remove a found sidebar from the detection
sidebar_fts[filetype] = nil
end
end
end
if #vim.api.nvim_list_tabpages() > 1 then
vim.cmd.tabclose()
else
vim.cmd.qall()
end
end
'';
}
# autoview
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L49-L70
{
desc = "Save view with mkview for real files";
event = [ "BufWinLeave" "BufWritePost" "WinLeave" ];
group = "autoview";
callback.__raw = ''
function(event)
if vim.b[event.buf].view_activated then vim.cmd.mkview { mods = { emsg_silent = true } } end
end
'';
}
{
desc =
"Try to load file view if available and enable view saving for real files";
event = "BufWinEnter";
group = "autoview";
callback.__raw = ''
function(event)
if not vim.b[event.buf].view_activated then
local filetype = vim.bo[event.buf].filetype
local buftype = vim.bo[event.buf].buftype
local ignore_filetypes = { "gitcommit", "gitrebase", "svg", "hgcommit" }
if buftype == "" and filetype and filetype ~= "" and not vim.tbl_contains(ignore_filetypes, filetype) then
vim.b[event.buf].view_activated = true
vim.cmd.loadview { mods = { emsg_silent = true } }
end
end
end
'';
}
# checktime
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L118-L122
{
desc = "Check if buffers changed on editor focus";
event = [ "FocusGained" "TermClose" "TermLeave" ];
group = "checktime";
command = "checktime";
}
# editorconfig_filetype
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L135-L144
{
desc =
"Configure editorconfig after filetype detection to override `ftplugin`s";
event = "FileType";
group = "editorconfig_filetype";
callback.__raw = ''
function(args)
if vim.F.if_nil(vim.b.editorconfig, vim.g.editorconfig, true) then
local editorconfig_avail, editorconfig = pcall(require, "editorconfig")
if editorconfig_avail then editorconfig.config(args.buf) end
end
end
'';
}
# highlightyank
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L206-L211
{
desc = "Highlight yanked text";
event = "TextYankPost";
group = "highlightyank";
pattern = "*";
callback.__raw = ''
function()
vim.highlight.on_yank()
end
'';
}
# q_close_windows
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L242-L255
{
desc = "Make q close help, man, quickfix, dap floats";
event = "BufWinEnter";
group = "q_close_windows";
callback.__raw = ''
function(event)
if vim.tbl_contains({ "help", "nofile", "quickfix" }, vim.bo[event.buf].buftype) then
vim.keymap.set("n", "q", "<Cmd>close<CR>", {
desc = "Close window",
buffer = event.buf,
silent = true,
nowait = true,
})
end
end
'';
}
# terminal_settings
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L258-L266
{
desc = "Disable line number/fold column/sign column for terminals";
event = "TermOpen";
group = "terminal_settings";
callback.__raw = ''
function()
vim.opt_local.number = false
vim.opt_local.relativenumber = false
vim.opt_local.foldcolumn = "0"
vim.opt_local.signcolumn = "no"
end
'';
}
# unlist_quickfix
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astrocore_autocmds.lua#L270-L275
{
desc = "Unlist quickfix buffers";
event = "FileType";
group = "unlist_quickfix";
pattern = "qf";
callback.__raw = ''
function()
vim.opt_local.buflisted = false
end
'';
}
];
};
}
-12
View File
@@ -1,12 +0,0 @@
{
programs.nixvim = {
enable = true;
colorschemes.catppuccin = {
enable = true;
settings = {
transparent_background = true;
flavour = "mocha";
};
};
};
}
+9 -5
View File
@@ -1,17 +1,21 @@
# Nixvim is a NixOS module that installs and configures Neovim
{ inputs, ... }: {
imports = [
inputs.nixvim.homeManagerModules.nixvim
./plugins/cmp.nix
./plugins/dashboard.nix
./plugins/lsp.nix
./plugins/markdown.nix
./plugins/tree.nix
./plugins/telescope.nix
./plugins/cmp.nix
./plugins/ui.nix
./plugins/lualine.nix
./plugins/utils.nix
./plugins/zen-mode.nix
./plugins/dashboard.nix
./plugins/markdown.nix
./options.nix
./colorscheme.nix
./keymaps.nix
./autocmds.nix
];
programs.nixvim.enable = true;
}
+308 -22
View File
@@ -1,24 +1,310 @@
{
programs.nixvim.keymaps = [
{
key = "<leader>fm";
action = "<cmd>lua vim.lsp.buf.format()<cr>";
options.desc = "LSP Format";
}
{
key = "<leader>w";
action = "<cmd>set wrap!<cr>";
options.desc = "Toggle word wrapping";
}
{
key = "<leader>W";
action = "<cmd>set linebreak!<cr>";
options.desc = "Toggle linebreak";
}
{
key = "<leader>z";
action = "<cmd>ZenMode<cr>";
options.desc = "ZenMode";
}
];
programs.nixvim = {
plugins.which-key = {
enable = true;
settings = {
delay = 600;
icons = {
breadcrumb = "»";
group = "+";
separator = ""; # ➜
mappings = false;
};
spec = [
# General Mappings
{
__unkeyed-1 = "<leader>c";
mode = [ "n" "v" ];
group = "+code";
}
{
__unkeyed-1 = "<leader>d";
mode = [ "n" "v" ];
group = "+debug";
}
{
__unkeyed-1 = "<leader>s";
mode = "n";
group = "+search";
}
{
__unkeyed-1 = "<leader>m";
mode = "n";
group = "+markdown";
}
{
__unkeyed-1 = "<leader>t";
mode = "n";
group = "+trouble";
}
{
__unkeyed-1 = "<leader>u";
mode = "n";
group = "+ui";
}
{
__unkeyed-1 = "<leader>w";
mode = "n";
group = "+windows";
}
{
__unkeyed-1 = "<leader>h";
mode = "n";
group = "+harpoon";
}
];
win = {
border = "rounded";
wo.winblend = 0;
};
};
};
keymaps = [
# General Mappings
{
key = "<leader>e";
action = "<cmd>Oil --float<cr>";
options.desc = "Oil";
}
{
key = "-";
action = "<cmd>Oil<cr>";
options.desc = "Oil";
}
{
key = "<leader>E";
action = "<cmd>Neotree toggle<cr>";
options.desc = "Neotree";
}
{
key = "s";
action = "<cmd>lua require('flash').jump()<cr>";
options.desc = "Flash";
}
{
key = "K";
action = "<cmd>lua vim.lsp.buf.hover()<cr>";
options.desc = "LSP Hover";
}
{
key = "<C-h>";
action = "<cmd>TmuxNavigateLeft<cr>";
}
{
key = "<C-j>";
action = "<cmd>TmuxNavigateDown<cr>";
}
{
key = "<C-k>";
action = "<cmd>TmuxNavigateUp<cr>";
}
{
key = "<C-l>";
action = "<cmd>TmuxNavigateRight<cr>";
}
# UI
{
key = "<leader>uz";
action = "<cmd>ZenMode<cr>";
options.desc = "Toggle ZenMode";
}
{
key = "<leader>uw";
action = "<cmd>set wrap!<cr>";
options.desc = "Toggle word wrapping";
}
{
key = "<leader>ul";
action = "<cmd>set linebreak!<cr>";
options.desc = "Toggle linebreak";
}
{
key = "<leader>us";
action = "<cmd>set spell!<cr>";
options.desc = "Toggle spellcheck";
}
{
key = "<leader>uc";
action = "<cmd>set cursorline!<cr>";
options.desc = "Toggle cursorline";
}
{
key = "<leader>un";
action = "<cmd>set number!<cr>";
options.desc = "Toggle line numbers";
}
{
key = "<leader>ur";
action = "<cmd>set relativenumber!<cr>";
options.desc = "Toggle relative line numbers";
}
{
key = "<leader>ut";
action = "<cmd>set showtabline=2<cr>";
options.desc = "Show tabline";
}
{
key = "<leader>uT";
action = "<cmd>set showtabline=0<cr>";
options.desc = "Hide tabline";
}
# Search
{
key = "<leader> ";
action = "<cmd>lua require('telescope.builtin').find_files()<cr>";
options.desc = "Telescope";
}
{
key = "<leader>sg";
action = "<cmd>lua require('telescope.builtin').live_grep()<cr>";
options.desc = "Livegrep";
}
{
key = "<leader>sf";
action = "<cmd>lua require('telescope.builtin').find_files()<cr>";
options.desc = "Find Files";
}
{
key = "<leader>sb";
action = "<cmd>lua require('telescope.builtin').buffers()<cr>";
options.desc = "Buffers";
}
{
key = "<leader>sh";
action = "<cmd>lua require('telescope.builtin').help_tags()<cr>";
options.desc = "Help Tags";
}
{
key = "<leader>sc";
action = "<cmd>lua require('telescope.builtin').commands()<cr>";
options.desc = "Commands";
}
{
key = "<leader>sm";
action = "<cmd>lua require('telescope.builtin').marks()<cr>";
options.desc = "Marks";
}
{
key = "<leader>so";
action = "<cmd>lua require('telescope.builtin').oldfiles()<cr>";
options.desc = "Oldfiles";
}
{
key = "<leader>ss";
action = "<cmd>lua require('telescope.builtin').spell_suggest()<cr>";
options.desc = "Spell Suggest";
}
{
key = "<leader>sr";
action = "<cmd>:noh<return><esc>";
options.desc = "Reset search";
}
{
key = "<leader>st";
action = "<cmd>TodoTelescope<cr>";
options.desc = "Todos";
}
# Trouble
{
key = "<leader>tx";
action = "<cmd>Trouble diagnostics toggle<cr>";
options.desc = "Diagnostics (Trouble)";
}
{
key = "<leader>tX";
action = "<cmd>Trouble diagnostics toggle filter.buf=0<cr>";
options.desc = "Buffer Diagnostics (Trouble)";
}
{
key = "<leader>ts";
action = "<cmd>Trouble symbols toggle focus=false<cr>";
options.desc = "Symbols (Trouble)";
}
{
key = "<leader>tl";
action = "<cmd>Trouble lsp toggle focus=false win.position=right<cr>";
options.desc = "LSP Definitions / references / ... (Trouble)";
}
{
key = "<leader>tL";
action = "<cmd>Trouble loclist toggle<cr>";
options.desc = "Location List (Trouble)";
}
{
key = "<leader>tQ";
action = "<cmd>Trouble qflist toggle<cr>";
options.desc = "Quickfix List (Trouble)";
}
# Windows
{
key = "<leader>ws";
action = "<cmd>split<cr>";
options.desc = "Split";
}
{
key = "<leader>wv";
action = "<cmd>vsplit<cr>";
options.desc = "VSplit";
}
{
key = "<leader>wd";
action = "<cmd>close<cr>";
options.desc = "Close";
}
# Code
{
key = "<leader>cd";
action = "<cmd>lua vim.lsp.buf.definition()<cr>";
options.desc = "LSP Definition";
}
{
key = "<leader>cr";
action = "<cmd>lua vim.lsp.buf.references()<cr>";
options.desc = "LSP References";
}
{
key = "<leader>ct";
action = "<cmd>lua vim.lsp.buf.type_definition()<cr>";
options.desc = "LSP Type Definition";
}
{
key = "<leader>ca";
action = "<cmd>lua vim.lsp.buf.code_action()<cr>";
options.desc = "LSP Code Action";
}
{
key = "<leader>cf";
action = "<cmd>lua vim.lsp.buf.formatting()<cr>";
options.desc = "LSP Formatting";
}
{
key = "<leader>cn";
action = "<cmd>lua vim.lsp.diagnostic.goto_next()<cr>";
options.desc = "LSP Next Diagnostic";
}
{
key = "<leader>cp";
action = "<cmd>lua vim.lsp.diagnostic.goto_prev()<cr>";
options.desc = "LSP Previous Diagnostic";
}
{
key = "<leader>cu";
action = "<cmd>lua require('dapui').toggle()<CR>";
options.desc = "Toggle Dapui";
}
{
key = "<leader>cb";
action = "<cmd>lua require('dap').toggle_breakpoint()<CR>";
options.desc = "Toggle breakpoint";
}
];
};
}
+141 -27
View File
@@ -1,37 +1,151 @@
{
programs.nixvim = {
globals.mapleader = " ";
opts = {
autoindent = true;
programs.nixvim.globals.mapleader = " ";
programs.nixvim.opts = {
updatetime = 50; # Faster completion
smartindent = true;
number = true;
relativenumber = true;
incsearch = true;
hlsearch = true;
wildmode = "list:longest";
scrolloff = 8;
autoindent = true;
clipboard = "unnamed,unnamedplus";
swapfile = false;
conceallevel = 3;
clipboard = "unnamed,unnamedplus";
expandtab = true;
tabstop = 2;
softtabstop = 2;
shiftwidth = 2;
smartindent = true;
breakindent = true;
# Don't stop backspace at insert
backspace.__raw = ''
vim.list_extend(vim.opt.backspace:get(), { "nostop" })
'';
ignorecase = true;
incsearch = true;
hlsearch = true;
smartcase = true;
wildmode = "list:longest";
completeopt = [ "menuone" "noselect" ];
signcolumn = "yes";
cursorline = false;
scrolloff = 8;
mouse = "a";
# Keep visual indentation on wrapped lines
breakindent = true;
wrap = false;
# Hide command line unless needed
cmdheight = 0;
swapfile = false;
undofile = true;
conceallevel = 3;
# Insert mode completion options
completeopt = [ "menu" "menuone" "noselect" ];
# Raise a dialog asking if you wish to save the current file(s)
confirm = true;
# Copy previous indentation on autoindenting
copyindent = true;
# Highlight current line
cursorline = true;
# Enable linematch diff algorithm
diffopt.__raw = ''
vim.list_extend(vim.opt.diffopt:get(), { "algorithm:histogram", "linematch:60" })
'';
# Expand <Tab> to spaces
expandtab = true;
# Disable `~` on nonexistent lines
fillchars = { eob = " "; };
# Enable fold with all code unfolded
foldcolumn = "1";
foldenable = true;
foldlevel = 99;
foldlevelstart = 99;
# Ignore case in search patterns
ignorecase = true;
# Show substitution preview in split window
inccommand = "split";
# Infer casing on word completion
infercase = true;
# Global statusline
laststatus = 3;
# Wrap lines at 'breakat'
linebreak = true;
# Enable mouse support
mouse = "a";
# Show line numbers
number = true;
# Preserve indentation as much as possible
preserveindent = true;
# Height of the popup menu
pumheight = 10;
# Display line numbers relative to current line
relativenumber = true;
# Minimal number of lines to keep around the cursor
# This has the effect to move the view along with current line
#scrolloff = 999;
# Number of spaces to use for indentation
shiftwidth = 2;
# Disable search count wrap and startup messages
shortmess.__raw = ''
vim.tbl_deep_extend("force", vim.opt.shortmess:get(), { s = true, I = true })
'';
# Disable showing modes in command line
showmode = false;
# Always show tabline
showtabline = 2;
# Show signs column
signcolumn = "yes";
# Override ignorecase if search pattern contains uppercase characters
smartcase = true;
# Number of spaces input on <Tab>
softtabstop = 2;
# Open horizontal split below (:split)
splitbelow = true;
# Open vertical split to the right (:vsplit)
splitright = true;
# Number of spaces to represent a <Tab>
tabstop = 2;
# Enables 24-bit RGB color
termguicolors = true;
# Shorter timeout duration
timeoutlen = 500;
# Set window title to the filename
title = true;
# Save undo history to undo file (in $XDG_STATE_HOME/nvim/undo)
undofile = true;
viewoptions.__raw = ''
vim.tbl_filter(function(val) return val ~= "curdir" end, vim.opt.viewoptions:get())
'';
# Enable virtual edit in visual block mode
# This has the effect of selecting empty cells beyond lines boundaries
virtualedit = "block";
# Disable line wrapping
wrap = false;
# Disable making a backup before overwriting a file
writebackup = false;
};
};
}
+6 -3
View File
@@ -15,8 +15,12 @@
sources = [
{ name = "nvim_lsp"; }
{ name = "luasnip"; }
{ name = "buffer"; }
{
name = "buffer";
option.get_bufnrs.__raw = "vim.api.nvim_list_bufs";
}
{ name = "nvim_lua"; }
{ name = "mkdnflow"; }
{ name = "path"; }
];
@@ -80,7 +84,7 @@
completion = {
winhighlight =
"FloatBorder:CmpBorder,Normal:CmpPmenu,Search:PmenuSel";
scrollbar = true;
scrollbar = false;
sidePadding = 0;
border = [ "" "" "" "" "" "" "" "" ];
};
@@ -108,6 +112,5 @@
};
};
};
};
}
+12 -7
View File
@@ -1,9 +1,15 @@
{ config, ... }: {
{ config, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
muted = "#${config.lib.stylix.colors.base03}";
foreground = "#${config.lib.stylix.colors.base05}";
configDir = config.var.configDirectory;
in {
programs.nixvim.highlight = {
AlphaHeaderColor.fg = "#${config.var.theme.colors.accent}";
AlphaTextColor.fg = "#${config.var.theme.colors.fg}";
AlphaShortcutColor.fg = "#${config.var.theme.colors.fgalt}";
AlphaHeaderColor.fg = accent;
AlphaTextColor.fg = foreground;
AlphaShortcutColor.fg = muted;
};
programs.nixvim.plugins.alpha = {
@@ -70,8 +76,7 @@
{
type = "button";
val = " NixOs Config";
on_press.__raw =
"function() vim.cmd[[Neotree ${config.var.configDirectory}]] end";
on_press.__raw = "function() vim.cmd[[Neotree ${configDir}]] end";
opts = {
shortcut = "nc";
position = "center";
@@ -86,7 +91,7 @@
type = "button";
val = " Keybindings";
on_press.__raw =
"function() vim.cmd[[e ${config.var.configDirectory}/docs/KEYBINDINGS.md]] end";
"function() vim.cmd[[e ${configDir}/docs/KEYBINDINGS.md]] end";
opts = {
shortcut = "nc";
position = "center";
+12 -8
View File
@@ -7,18 +7,20 @@
bashls.enable = true;
clangd.enable = true;
gopls.enable = true;
nixd.enable = true;
eslint.enable = true;
ts_ls.enable = true;
nixd = {
enable = true;
extraOptions = {
expr = "import <nixpkgs> {}";
# fix- encoding: https://github.com/nix-community/nixvim/issues/2390
offset_encoding = "utf-8";
};
};
tailwindcss.enable = true;
html.enable = true;
svelte.enable = true;
marksman.enable = true;
ltex = {
enable = false;
settings = {
enabled = false;
language = "en";
};
};
};
keymaps.lspBuf = {
"gd" = "definition";
@@ -43,6 +45,8 @@
tidy.enable = true;
shellharden.enable = true;
shfmt.enable = true;
golines.enable = true;
gofumpt.enable = true;
};
};
};
+30
View File
@@ -0,0 +1,30 @@
{
programs.nixvim.plugins.lualine = {
enable = true;
settings = {
options.disabled_filetypes.statusline =
[ "dashboard" "alpha" "neo-tree" ];
alwaysDivideMiddle = true;
globalstatus = true;
ignoreFocus = [ "neo-tree" ];
extensions = [ "fzf" ];
componentSeparators = {
left = "|";
right = "|";
};
sectionSeparators = {
left = ""; # 
right = ""; # 
};
sections = {
lualine_a = [ "mode" ];
lualine_b = [ "branch" "diff" "diagnostics" ];
lualine_c = [ "filename" ];
lualine_x = [ "filetype" ];
lualine_y = [ "progress" ];
lualine_z = [ ''" " .. os.date("%R")'' ];
};
};
};
}
+231 -121
View File
@@ -1,131 +1,241 @@
{
programs.nixvim.plugins = {
mkdnflow = {
enable = true;
mappings = {
{ config, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
muted = "#${config.lib.stylix.colors.base03}";
in {
programs.nixvim = {
# Markdown settings
extraFiles."after/ftplugin/markdown.lua".text = ''
vim.bo.tabstop = 2
vim.bo.shiftwidth = 2
vim.bo.expandtab = true
'';
# Main
MkdnEnter = {
key = "<CR>";
modes = [ "n" "v" "i" ];
};
# Highlight colors
highlight = {
Headline1 = {
bg = "#4B4266";
fg = accent;
};
Headline2 = {
bg = "#3B575E";
fg = "#9FFEFE";
};
Headline3 = {
bg = "#3B5742";
fg = "#9FFE9F";
};
Headline4 = {
bg = "#574842";
fg = "#FECB9F";
};
# Links
MkdnCreateLink = false;
MkdnCreateLinkFromClipboard = {
key = "<leader>lc";
modes = [ "n" "v" ];
};
MkdnDestroyLink = {
key = "<leader>dl";
modes = "n";
};
MkdnFollowLink = false;
MkdnNextLink = {
key = "<Tab>";
modes = "n";
};
MkdnYankAnchorLink = {
key = "ya";
modes = "n";
};
MkdnYankFileAnchorLink = {
key = "yfa";
modes = "n";
};
MkdnPrevLink = {
key = "<S-Tab>";
modes = "n";
};
RenderMarkdownTodo.fg = "#f78c6c";
RenderMarkdownWarning.fg = "#ff5370";
RenderMarkdownDone.fg = muted;
};
MkdnDecreaseHeading = {
key = "-";
modes = "n";
# Plugins
plugins = {
# Paste images from clipboard
clipboard-image = {
enable = true;
settings = { default.img_dir = [ "%:p:h" "img" ]; };
};
# Zen mode
zen-mode = {
enable = true;
settings = {
on_close = ''
function()
end
'';
on_open = ''
function()
end
'';
plugins = {
gitsigns = { enabled = false; };
options = {
enabled = true;
ruler = false;
showcmd = false;
laststatus = "0";
kitty = {
enabled = true;
font = "+4";
};
};
};
window = {
backdrop = 0.95;
height = 1;
options = {
signcolumn = "no";
number = false;
relativenumber = false;
};
width = 0.8;
};
};
MkdnExtendList = false;
MkdnFoldSection = {
key = "<leader>ff";
modes = "n";
};
# Display images in markdown
image = {
enable = true;
integrations.markdown = {
clearInInsertMode = true;
onlyRenderImageAtCursor = true;
};
MkdnUnfoldSection = {
key = "<leader>fu";
modes = "n";
};
# This one takes care of the markdown titles
headlines = {
enable = true;
settings = {
markdown = {
headline_highlights =
[ "Headline1" "Headline2" "Headline3" "Headline4" ];
};
};
MkdnGoBack = {
key = "<BS>";
modes = "n";
};
# MkdnFlow is a plugin that helps you navigate markdown files
mkdnflow = {
enable = true;
modules = { conceal = false; };
toDo.symbols = [ " " "-" "x" "!" "/" ];
mappings = {
MkdnCreateLink = false;
MkdnCreateLinkFromClipboard = {
key = "<leader>ml";
modes = [ "n" "v" ];
};
MkdnDecreaseHeading = {
key = "<leader>m-";
modes = "n";
};
MkdnDestroyLink = false;
MkdnEnter = {
key = "<CR>";
modes = [ "v" ];
};
MkdnExtendList = false;
MkdnFoldSection = {
key = "<leader>mf";
modes = "n";
};
MkdnUnfoldSection = {
key = "<leader>mF";
modes = "n";
};
MkdnFollowLink = {
key = "gd";
modes = "n";
};
MkdnGoBack = false;
MkdnGoForward = false;
MkdnIncreaseHeading = {
key = "<leader>m+";
modes = "n";
};
MkdnMoveSource = false;
MkdnNewListItem = false;
MkdnNewListItemAboveInsert = {
key = "O";
modes = "n";
};
MkdnNewListItemBelowInsert = {
key = "o";
modes = "n";
};
MkdnNextHeading = {
key = "<leader>m#";
modes = "n";
};
MkdnNextLink = false;
MkdnPrevLink = false;
MkdnPrevHeading = {
key = "<leader>m*";
modes = "n";
};
MkdnSTab = false;
MkdnTab = false;
MkdnTableNewColAfter = {
key = "<leader>mc";
modes = "n";
};
MkdnTableNewColBefore = {
key = "<leader>mC";
modes = "n";
};
MkdnTableNewRowAbove = {
key = "<leader>mR";
modes = "n";
};
MkdnTableNewRowBelow = {
key = "<leader>mr";
modes = "n";
};
MkdnTableNextCell = {
key = "<S-Tab>";
modes = "n";
};
MkdnTableNextRow = false;
MkdnTablePrevCell = {
key = "<S-Tab>";
modes = "n";
};
MkdnTablePrevRow = false;
MkdnToggleToDo = {
key = "<C-Space>";
modes = [ "n" "v" ];
};
MkdnUpdateNumbering = {
key = "<leader>mn";
modes = "n";
};
MkdnYankAnchorLink = {
key = "ya";
modes = "n";
};
MkdnYankFileAnchorLink = {
key = "yfa";
modes = "n";
};
};
MkdnGoForward = {
key = "<Del>";
modes = "n";
};
MkdnIncreaseHeading = {
key = "+";
modes = "n";
};
MkdnMoveSource = {
key = "<F2>";
modes = "n";
};
MkdnNewListItem = false;
MkdnNewListItemAboveInsert = {
key = "O";
modes = "n";
};
MkdnNewListItemBelowInsert = {
key = "o";
modes = "n";
};
MkdnNextHeading = {
key = "]]";
modes = "n";
};
MkdnPrevHeading = {
key = "[[";
modes = "n";
};
MkdnSTab = false;
MkdnTab = false;
MkdnTableFormat = {
key = "<leader>ft";
modes = "n";
};
MkdnTableNewColAfter = {
key = "<leader>ic";
modes = "n";
};
MkdnTableNewColBefore = {
key = "<leader>iC";
modes = "n";
};
MkdnTableNewRowAbove = {
key = "<leader>iR";
modes = "n";
};
MkdnTableNewRowBelow = {
key = "<leader>ir";
modes = "n";
};
MkdnTableNextCell = {
key = "<S-Tab>";
modes = "i";
};
MkdnTableNextRow = false;
MkdnTablePrevCell = {
key = "<M-Tab>";
modes = "i";
};
MkdnTablePrevRow = {
key = "<M-CR>";
modes = "i";
};
MkdnToggleToDo = {
key = "<C-Space>";
modes = [ "n" "v" ];
};
MkdnUpdateNumbering = {
key = "<leader>nn";
modes = "n";
};
# Render UI elements
render-markdown = {
enable = true;
settings = {
heading = { enabled = false; };
checkbox = {
unchecked = { highlight = "RenderMarkdownTodo"; };
checked = { highlight = "RenderMarkdownDone"; };
custom = {
pending = {
raw = "[-]";
rendered = " ";
highlight = "RenderMarkdownTodo";
};
important = {
raw = "[!]";
rendered = "󰰱 ";
highlight = "RenderMarkdownWarning";
};
cancel = {
raw = "[/]";
rendered = "󱋬 ";
highlight = "RenderMarkdownWarning";
};
};
};
};
};
};
+31
View File
@@ -0,0 +1,31 @@
{ config, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
background = "#${config.lib.stylix.colors.base00}";
background-alt = "#${config.lib.stylix.colors.base01}";
in {
programs.nixvim = {
highlight = {
TelescopePromptPrefix.fg = accent;
TelescopeSelectionCaret = {
fg = accent;
bg = background-alt;
};
TelescopeSelection.bg = background-alt;
TelescopePromptTitle = {
bg = background;
fg = accent;
};
TelescopePromptNormal.bg = background;
TelescopePromptBorder = {
bg = background;
fg = accent;
};
};
plugins.telescope = {
enable = true;
extensions.fzf-native = { enable = true; };
settings.defaults = { selection_caret = " "; };
};
};
}
+5 -17
View File
@@ -7,6 +7,11 @@
settings = {
default_file_explorer = false;
skip_confirm_for_simple_edits = true;
view_options.is_hidden_file = ''
function(name, bufnr)
return vim.startswith(name, ".") or name == "img"
end
'';
win_options = {
concealcursor = "ncv";
conceallevel = 3;
@@ -40,22 +45,5 @@
};
};
};
keymaps = [
{
key = "-";
action = "<cmd>Oil<cr>";
options.desc = "Oil";
}
{
key = "<leader>e";
action = "<cmd>Oil --float<cr>";
options.desc = "Oil";
}
{
key = "<leader>E";
action = "<cmd>Neotree toggle<cr>";
options.desc = "Neotree";
}
];
};
}
+9 -26
View File
@@ -1,31 +1,14 @@
{ pkgs, ... }: {
home.packages = with pkgs; [ ctags ];
programs.nixvim = {
plugins = {
lualine.enable = true;
noice.enable = true;
gitsigns = {
enable = true;
settings.current_line_blame = false;
};
bufferline.enable = true;
trouble.enable = true;
which-key.enable = true;
headlines = {
enable = true;
settings = {
markdown = {
codeblock_highlight = false;
};
};
};
nvim-colorizer.enable = true;
# tagbar.enable = true;
programs.nixvim.plugins = {
web-devicons.enable = true;
noice.enable = true;
gitsigns = {
enable = true;
settings.current_line_blame = false;
};
keymaps = [{
key = "<leader>t";
action = "<cmd>TroubleToggle<cr>";
options.desc = "Trouble";
}];
trouble.enable = true;
bufferline.enable = true;
};
}
+4 -30
View File
@@ -1,51 +1,25 @@
{ config, ... }: {
programs.nixvim = {
highlightOverride = {
FloatBorder.fg = "#${config.var.theme.colors.accent}";
FloatBorder.fg = "#${config.lib.stylix.colors.base0D}";
};
nixpkgs.config = { allowUnfree = true; };
plugins = {
copilot-vim.enable = true;
flash.enable = true;
# image.enable = true;
tmux-navigator.enable = true;
comment.enable = true;
nvim-autopairs.enable = true;
friendly-snippets.enable = true;
telescope = {
enable = true;
keymaps = {
"<leader>fg" = "live_grep";
"<leader> " = "find_files";
};
extensions.fzf-native = { enable = true; };
};
todo-comments.enable = true;
treesitter = {
enable = true;
nixGrammars = true;
settings = {
ensure_installed = "all";
indent.enable = true;
highlight.enable = true;
};
};
treesitter-context.enable = true;
};
keymaps = [
{
key = "<C-h>";
action = "<cmd>TmuxNavigateLeft<cr>";
}
{
key = "<C-j>";
action = "<cmd>TmuxNavigateDown<cr>";
}
{
key = "<C-k>";
action = "<cmd>TmuxNavigateUp<cr>";
}
{
key = "<C-l>";
action = "<cmd>TmuxNavigateRight<cr>";
}
];
};
}
-31
View File
@@ -1,31 +0,0 @@
{
programs.nixvim.plugins.zen-mode = {
enable = true;
settings = {
on_open = ''
function()
require("gitsigns.actions").toggle_current_line_blame()
vim.opt.relativenumber = false
vim.opt.signcolumn = "no"
vim.opt.wrap = true
vim.opt.linebreak = true
end
'';
plugins = {
gitsigns = { enabled = true; };
options = {
enabled = true;
ruler = false;
showcmd = false;
};
tmux = { enabled = true; };
};
window = {
backdrop = 0.95;
height = 1;
options = { signcolumn = "no"; };
width = 0.9;
};
};
};
}
+13 -98
View File
@@ -1,5 +1,12 @@
# Qutebrowser is a keyboard-focused browser with a minimal GUI.
# My homepage is generated using https://github.com/anotherhadi/homepage
{ pkgs, config, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
background = "#${config.lib.stylix.colors.base00}";
foreground = "#${config.lib.stylix.colors.base05}";
muted = "#${config.lib.stylix.colors.base03}";
settings = ''
{
"config": {
@@ -7,10 +14,10 @@ let
"openLinksInNewTab": false,
"locale": "fr-FR",
"colors": {
"primary": "#${config.var.theme.colors.accent}",
"background": "#${config.var.theme.colors.bg}",
"foreground": "#${config.var.theme.colors.fg}",
"muted": "#${config.var.theme.colors.c8}"
"primary": "${accent}",
"background": "${background}",
"foreground": "${foreground}",
"muted": "#${muted}"
},
"folders": [
{
@@ -73,10 +80,7 @@ let
in {
imports = [
./duckduckgo-colorscheme.nix
# ./userscripts.nix
];
imports = [ ./duckduckgo-colorscheme.nix ];
programs.qutebrowser = {
enable = true;
@@ -120,98 +124,12 @@ in {
};
colors = {
tabs = {
odd.bg = "#${config.var.theme.colors.bg}";
odd.fg = "#${config.var.theme.colors.fg}";
even.bg = "#${config.var.theme.colors.bg}";
even.fg = "#${config.var.theme.colors.fg}";
selected = {
odd = {
bg = "#${config.var.theme.colors.accent}";
fg = "#${config.var.theme.colors.accentFg}";
};
even = {
bg = "#${config.var.theme.colors.accent}";
fg = "#${config.var.theme.colors.accentFg}";
};
};
indicator = {
error = "#${config.var.theme.colors.c1}";
start = "#${config.var.theme.colors.bgalt}";
stop = "#${config.var.theme.colors.bgalt}";
};
};
hints = {
bg = "#${config.var.theme.colors.bgalt}";
fg = "#${config.var.theme.colors.fgalt}";
match.fg = "#${config.var.theme.colors.bg}";
};
completion = {
category = {
bg = "#${config.var.theme.colors.bg}";
fg = "#${config.var.theme.colors.fg}";
border = {
top = "#${config.var.theme.colors.bg}";
bottom = "#${config.var.theme.colors.bg}";
};
};
odd.bg = "#${config.var.theme.colors.bg}";
even.bg = "#${config.var.theme.colors.bg}";
fg = [ "#FFFFFF" "#FFFFFF" "#FFFFFF" ];
match.fg = "#${config.var.theme.colors.accent}";
item.selected = {
bg = "#${config.var.theme.colors.accent}";
border.top = "#${config.var.theme.colors.accent}";
border.bottom = "#${config.var.theme.colors.accent}";
fg = "#${config.var.theme.colors.accentFg}";
match.fg = "#${config.var.theme.colors.accentFg}";
};
};
statusbar = {
normal.bg = "#${config.var.theme.colors.bg}";
normal.fg = "#${config.var.theme.colors.fg}";
private.bg = "#${config.var.theme.colors.bg}";
private.fg = "#${config.var.theme.colors.fg}";
insert.bg = "#${config.var.theme.colors.accent}";
insert.fg = "#${config.var.theme.colors.accentFg}";
command = {
bg = "#${config.var.theme.colors.bgalt}";
fg = "#${config.var.theme.colors.fgalt}";
private.bg = "#${config.var.theme.colors.bgalt}";
private.fg = "#${config.var.theme.colors.fgalt}";
};
};
messages = {
info = {
bg = "#${config.var.theme.colors.bgalt}";
fg = "#${config.var.theme.colors.fgalt}";
border = "#${config.var.theme.colors.bgalt}";
};
error = {
bg = "#${config.var.theme.colors.c1}";
fg = "#${config.var.theme.colors.fgalt}";
border = "#${config.var.theme.colors.c1}";
};
};
#webpage.darkmode.enabled = true; # Enable dark mode for all websites (Weird on images)
webpage.preferred_color_scheme =
"dark"; # Enable dark mode for websites that support it
};
statusbar.show = "in-mode";
fonts = { default_family = "${config.var.theme.font}"; };
completion = {
height = "30%";
open_categories = [ "history" ];
@@ -238,10 +156,7 @@ in {
remove_finished = 0;
};
hints = {
border = "none";
radius = 1;
};
hints = { radius = 1; };
scrolling = {
bar = "never";
@@ -1,36 +1,44 @@
{ config, ... }: {
home.file.".duckduckgo-colorscheme.js".text = ''
// Go to DuckDuckGo settings page, open the console, paste the code and hit enter.
// based on https://ddg.codingcodax.dev/
// Cookies string for your theme
const cookie = '7=${config.var.theme.colors.bg}; j=${config.var.theme.colors.bg}; 9=${config.var.theme.colors.fg}; aa=${config.var.theme.colors.fgalt}; 8=${config.var.theme.colors.c7}; x=${config.var.theme.colors.accent}; 21=${config.var.theme.colors.bgalt};';
# A duckduckgo colorscheme generated for the Stylix theme used.
{ config, ... }:
let
accent = config.lib.stylix.colors.base0D;
background = config.lib.stylix.colors.base00;
foreground = config.lib.stylix.colors.base05;
background-alt = config.lib.stylix.colors.base01;
foreground-alt = config.lib.stylix.colors.base06;
in {
home.file.".duckduckgo-colorscheme.js".text =
# js
''
// Go to DuckDuckGo settings page, open the console, paste the code and hit enter.
// based on https://ddg.codingcodax.dev/
// Cookies string for your theme
const cookie = '7=${background}; j=${background}; 9=${foreground}; aa=${foreground-alt}; 8=${foreground}; x=${accent}; 21=${background-alt};';
// Converts cookie string into formatted JSON
const cookieToJSON = (cookieRaw) => {
const cookieJson = {};
const items = cookieRaw.split(/[ ,]+/);
// Converts cookie string into formatted JSON
const cookieToJSON = (cookieRaw) => {
const cookieJson = {};
const items = cookieRaw.split(/[ ,]+/);
items.forEach((item) => {
const parts = item.split('=');
cookieJson[parts[0]] = parts[1];
});
items.forEach((item) => {
const parts = item.split('=');
cookieJson[parts[0]] = parts[1];
});
return cookieJson;
};
return cookieJson;
};
// Iterates over JSON, and adds to browser cookie store
const setCookies = (cookieJson) => {
Object.keys(cookieJson).forEach((key) => {
document.cookie = `''${key}=''${cookieJson [ key ]}`;
});
};
// Iterates over JSON, and adds to browser cookie store
const setCookies = (cookieJson) => {
Object.keys(cookieJson).forEach((key) => {
document.cookie = `''${key}=''${cookieJson [ key ]}`;
});
};
alert('The Nixy theme will be applied.');
// Call set cookies, passing in formated cookie data
setCookies(cookieToJSON(cookie));
// Call set cookies, passing in formated cookie data
setCookies(cookieToJSON(cookie));
// All done, reload page for changes to take effect :)
location.reload();
'';
// All done, reload page for changes to take effect :)
location.reload();
'';
}
-14
View File
@@ -1,14 +0,0 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
keyutils
python3
python311Packages.pyperclip
python312Packages.tldextract
];
xdg.configFile."qutebrowser/userscripts/bitwarden" = {
source = ./userscripts/qute-bitwarden.py;
executable = true;
};
}
@@ -1,291 +0,0 @@
#!/usr/bin/env python3
# SPDX-FileCopyrightText: Chris Braun (cryzed) <cryzed@googlemail.com>
#
# SPDX-License-Identifier: GPL-3.0-or-later
"""
Insert login information using Bitwarden CLI and a dmenu-compatible application
(e.g. dmenu, rofi -dmenu, ...).
"""
USAGE = """The domain of the site has to be in the name of the Bitwarden entry, for example: "github.com/cryzed" or
"websites/github.com". The login information is inserted by emulating key events using qutebrowser's fake-key command in this manner:
[USERNAME]<Tab>[PASSWORD], which is compatible with almost all login forms.
If enabled, with the `--totp` flag, it will also move the TOTP code to the
clipboard, much like the Firefox add-on.
You must log into Bitwarden CLI using `bw login` prior to use of this script.
The session key will be stored using keyctl for the number of seconds passed to
the --auto-lock option.
To use in qutebrowser, run: `spawn --userscript qute-bitwarden`
"""
EPILOG = """Dependencies: tldextract (Python 3 module), pyperclip (optional
Python module, used for TOTP codes), Bitwarden CLI (1.7.4 is known to work
but older versions may well also work)
WARNING: The login details are viewable as plaintext in qutebrowser's debug log
(qute://log) and might be shared if you decide to submit a crash report!"""
import argparse
import enum
import functools
import os
import shlex
import subprocess
import sys
import json
import tldextract
argument_parser = argparse.ArgumentParser(
description=__doc__,
usage=USAGE,
epilog=EPILOG,
)
argument_parser.add_argument('url', nargs='?', default=os.getenv('QUTE_URL'))
argument_parser.add_argument('--dmenu-invocation', '-d', default='wofi --dmenu -i',
help='Invocation used to execute a dmenu-provider')
argument_parser.add_argument('--password-prompt-invocation', '-p', default='rofi -dmenu -p "Master Password" -password -lines 0',
help='Invocation used to prompt the user for their Bitwarden password')
argument_parser.add_argument('--no-insert-mode', '-n', dest='insert_mode', action='store_false',
help="Don't automatically enter insert mode")
argument_parser.add_argument('--totp', '-t', action='store_true',
help="Copy TOTP key to clipboard")
argument_parser.add_argument('--io-encoding', '-i', default='UTF-8',
help='Encoding used to communicate with subprocesses')
argument_parser.add_argument('--merge-candidates', '-m', action='store_true',
help='Merge pass candidates for fully-qualified and registered domain name')
argument_parser.add_argument('--auto-lock', type=int, default=900,
help='Automatically lock the vault after this many seconds')
group = argument_parser.add_mutually_exclusive_group()
group.add_argument('--username-only', '-e',
action='store_true', help='Only insert username')
group.add_argument('--password-only', '-w',
action='store_true', help='Only insert password')
group.add_argument('--totp-only', '-T',
action='store_true', help='Only insert totp code')
stderr = functools.partial(print, file=sys.stderr)
class ExitCodes(enum.IntEnum):
SUCCESS = 0
FAILURE = 1
# 1 is automatically used if Python throws an exception
NO_PASS_CANDIDATES = 2
COULD_NOT_MATCH_USERNAME = 3
COULD_NOT_MATCH_PASSWORD = 4
def qute_command(command):
with open(os.environ['QUTE_FIFO'], 'w') as fifo:
fifo.write(command + '\n')
fifo.flush()
def ask_password(password_prompt_invocation):
process = subprocess.run(
shlex.split(password_prompt_invocation),
text=True,
stdout=subprocess.PIPE,
)
if process.returncode > 0:
raise Exception('Could not unlock vault')
master_pass = process.stdout.strip()
return subprocess.check_output(
['bw', 'unlock', '--raw', master_pass],
text=True,
).strip()
def get_session_key(auto_lock, password_prompt_invocation):
if auto_lock == 0:
subprocess.call(['keyctl', 'purge', 'user', 'bw_session'])
return ask_password(password_prompt_invocation)
else:
process = subprocess.run(
['keyctl', 'request', 'user', 'bw_session'],
text=True,
stdout=subprocess.PIPE,
)
key_id = process.stdout.strip()
if process.returncode > 0:
session = ask_password(password_prompt_invocation)
if not session:
raise Exception('Could not unlock vault')
key_id = subprocess.check_output(
['keyctl', 'add', 'user', 'bw_session', session, '@u'],
text=True,
).strip()
if auto_lock > 0:
subprocess.call(['keyctl', 'timeout', str(key_id), str(auto_lock)])
return subprocess.check_output(
['keyctl', 'pipe', str(key_id)],
text=True,
).strip()
def pass_(domain, encoding, auto_lock, password_prompt_invocation):
session_key = get_session_key(auto_lock, password_prompt_invocation)
process = subprocess.run(
['bw', 'list', 'items', '--session', session_key, '--url', domain],
capture_output=True,
)
err = process.stderr.decode(encoding).strip()
if err:
msg = 'Bitwarden CLI returned for {:s} - {:s}'.format(domain, err)
stderr(msg)
if process.returncode:
return '[]'
out = process.stdout.decode(encoding).strip()
return out
def get_totp_code(selection_id, domain_name, encoding, auto_lock, password_prompt_invocation):
session_key = get_session_key(auto_lock, password_prompt_invocation)
process = subprocess.run(
['bw', 'get', 'totp', '--session', session_key, selection_id],
capture_output=True,
)
err = process.stderr.decode(encoding).strip()
if err:
# domain_name instead of selection_id to make it more user-friendly
msg = 'Bitwarden CLI returned for {:s} - {:s}'.format(domain_name, err)
stderr(msg)
if process.returncode:
return '[]'
out = process.stdout.decode(encoding).strip()
return out
def dmenu(items, invocation, encoding):
command = shlex.split(invocation)
process = subprocess.run(command, input='\n'.join(
items).encode(encoding), stdout=subprocess.PIPE)
return process.stdout.decode(encoding).strip()
def fake_key_raw(text):
for character in text:
# Escape all characters by default, space requires special handling
sequence = '" "' if character == ' ' else r'\{}'.format(character)
qute_command('fake-key {}'.format(sequence))
def main(arguments):
if not arguments.url:
argument_parser.print_help()
return ExitCodes.FAILURE
extract_result = tldextract.extract(arguments.url)
# Try to find candidates using targets in the following order: fully-qualified domain name (includes subdomains),
# the registered domain name and finally: the IPv4 address if that's what
# the URL represents
candidates = []
for target in filter(None, [
extract_result.fqdn,
extract_result.registered_domain,
extract_result.subdomain + '.' + extract_result.domain,
extract_result.domain,
extract_result.ipv4]):
target_candidates = json.loads(
pass_(
target,
arguments.io_encoding,
arguments.auto_lock,
arguments.password_prompt_invocation,
)
)
if not target_candidates:
continue
candidates = candidates + target_candidates
if not arguments.merge_candidates:
break
else:
if not candidates:
stderr('No pass candidates for URL {!r} found!'.format(
arguments.url))
return ExitCodes.NO_PASS_CANDIDATES
if len(candidates) == 1:
selection = candidates.pop()
else:
choices = ['{:s} | {:s}'.format(c['name'], c['login']['username']) for c in candidates]
choice = dmenu(choices, arguments.dmenu_invocation, arguments.io_encoding)
choice_tokens = choice.split('|')
choice_name = choice_tokens[0].strip()
choice_username = choice_tokens[1].strip()
selection = next((c for (i, c) in enumerate(candidates)
if c['name'] == choice_name
and c['login']['username'] == choice_username),
None)
# Nothing was selected, simply return
if not selection:
return ExitCodes.SUCCESS
username = selection['login']['username']
password = selection['login']['password']
totp = selection['login']['totp']
if arguments.username_only:
fake_key_raw(username)
elif arguments.password_only:
fake_key_raw(password)
elif arguments.totp_only:
# No point in moving it to the clipboard in this case
fake_key_raw(
get_totp_code(
selection['id'],
selection['name'],
arguments.io_encoding,
arguments.auto_lock,
arguments.password_prompt_invocation,
)
)
else:
# Enter username and password using fake-key and <Tab> (which seems to work almost universally), then switch
# back into insert-mode, so the form can be directly submitted by
# hitting enter afterwards
fake_key_raw(username)
qute_command('fake-key <Tab>')
fake_key_raw(password)
if arguments.insert_mode:
qute_command('mode-enter insert')
# If it finds a TOTP code, it copies it to the clipboard,
# which is the same behavior as the Firefox add-on.
if not arguments.totp_only and totp and arguments.totp:
# The import is done here, to make pyperclip an optional dependency
import pyperclip
pyperclip.copy(
get_totp_code(
selection['id'],
selection['name'],
arguments.io_encoding,
arguments.auto_lock,
arguments.password_prompt_invocation,
)
)
return ExitCodes.SUCCESS
if __name__ == '__main__':
arguments = argument_parser.parse_args()
sys.exit(main(arguments))
+2 -9
View File
@@ -1,11 +1,4 @@
{
imports = [
./fzf.nix
./zsh.nix
./starship.nix
./zoxide.nix
./tmux.nix
./lazygit.nix
./eza.nix
];
imports =
[ ./fzf.nix ./zsh.nix ./starship.nix ./zoxide.nix ./tmux.nix ./eza.nix ];
}
+2 -1
View File
@@ -1,7 +1,8 @@
# Eza is a ls replacement
{
programs.eza = {
enable = true;
icons = true;
icons = "auto";
extraOptions = [
"--group-directories-first"
+12 -6
View File
@@ -1,14 +1,20 @@
{ config, ... }: {
# Fzf is a general-purpose command-line fuzzy finder.
{ config, lib, ... }:
let
accent = "#" + config.lib.stylix.colors.base0D;
foreground = "#" + config.lib.stylix.colors.base05;
muted = "#" + config.lib.stylix.colors.base03;
in {
programs.fzf = {
enable = true;
enableZshIntegration = true;
colors = {
"fg+" = config.var.theme.colors.accentName;
colors = lib.mkForce {
"fg+" = accent;
"bg+" = "-1";
"fg" = "white";
"fg" = foreground;
"bg" = "-1";
"prompt" = "grey";
"pointer" = config.var.theme.colors.accentName;
"prompt" = muted;
"pointer" = accent;
};
defaultOptions = [
"--margin=1"
-13
View File
@@ -1,13 +0,0 @@
{ config, ... }: {
programs.lazygit = {
enable = true;
settings = {
gui.theme = {
ligthTheme = false;
activeBorderColor = [ "${config.var.theme.colors.accentName}" "bold" ];
inactiveBorderColor = [ "black" ];
selectedLineBgColor = [ "default" ];
};
};
};
}
+12 -6
View File
@@ -1,4 +1,9 @@
{ config, lib, ... }: {
# starship is a minimal, fast, and extremely customizable prompt for any shell!
{ config, lib, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
background-alt = "#${config.lib.stylix.colors.base01}";
in {
programs.starship = {
enable = true;
settings = {
@@ -10,22 +15,23 @@
"$git_status"
"$character"
];
directory = { style = "#${config.var.theme.colors.accent}"; };
directory = { style = accent; };
character = {
success_symbol = "[](#${config.var.theme.colors.accent})";
success_symbol = "[](${accent})";
error_symbol = "[](red)";
vimcmd_symbol = "[](cyan)";
};
git_branch = {
format = "[$branch]($style)";
style = "bright-black";
symbol = "[](${background-alt}) ";
style = "fg:${accent} bg:${background-alt}";
format = "on [$symbol$branch]($style)[](${background-alt}) ";
};
git_status = {
format =
"[[(*$conflicted$untracked$modified$staged$renamed$deleted)](218) ($ahead_behind$stashed)]($style)";
"[[(*$conflicted$untracked$modified$staged$renamed$deleted)](218)($ahead_behind$stashed)]($style)";
style = "cyan";
conflicted = "";
renamed = "";
+37 -27
View File
@@ -1,4 +1,30 @@
{ pkgs, ... }: {
# Tmux is a terminal multiplexer that allows you to run multiple terminal sessions in a single window.
{ pkgs, ... }:
let
Config = pkgs.writeShellScriptBin "Config" ''
SESSION="Nixy Config"
tmux has-session -t "$SESSION" 2>/dev/null
if [ $? == 0 ]; then
tmux attach -t "$SESSION"
exit 0
fi
tmux new-session -d -s "$SESSION"
tmux send-keys -t "$SESSION" "sleep 0.2 && clear && cd ~/.config/nixos/ && vim" C-m
tmux new-window -t "$SESSION" -n "nixy"
tmux send-keys -t "$SESSION":1 "sleep 0.2 && clear && cd ~/.config/nixos/ && nixy loop" C-m
tmux new-window -t "$SESSION" -n "lazygit"
tmux send-keys -t "$SESSION":2 "sleep 0.2 && clear && cd ~/.config/nixos/ && lazygit" C-m
tmux select-window -t "$SESSION":0
tmux select-pane -t 0
tmux attach -t "$SESSION"
'';
in {
programs.tmux = {
enable = true;
mouse = true;
@@ -12,37 +38,21 @@
bind-key j select-pane -D
bind-key k select-pane -U
bind-key l select-pane -R
set -gq allow-passthrough on
bind-key x kill-pane # skip "kill-pane 1? (y/n)" prompt
bind-key -n C-Tab next-window
bind-key -n C-S-Tab previous-window
bind-key -n M-Tab new-window
'';
plugins = with pkgs; [
tmuxPlugins.vim-tmux-navigator
{
plugin = tmuxPlugins.catppuccin;
extraConfig = ''
set-option -g status-position top
set -g @catppuccin_window_left_separator ""
set -g @catppuccin_window_right_separator " "
set -g @catppuccin_window_middle_separator " "
set -g @catppuccin_window_number_position "right"
set -g @catppuccin_window_default_fill "number"
set -g @catppuccin_window_default_text "#W"
set -g @catppuccin_window_current_fill "number"
set -g @catppuccin_window_current_text "#W"
set -g @catppuccin_status_modules_right ""
set -g @catppuccin_status_left_separator " "
set -g @catppuccin_status_right_separator ""
set -g @catppuccin_status_fill "icon"
set -g @catppuccin_status_connect_separator "no"
set -g @catppuccin_directory_text "#{pane_current_path}"
set -g @catppuccin_status_background "default"
set-option -g default-terminal "screen-256color"
'';
}
# tmuxPlugins.resurrect
tmuxPlugins.sensible
tmuxPlugins.tokyo-night-tmux
];
};
home.packages = [ Config ];
}
+3 -2
View File
@@ -1,6 +1,7 @@
# Zoxide is a cd replacement
{
programs.zoxide = {
enable= true;
enableZshIntegration = true;
enable = true;
enableZshIntegration = true;
};
}
+44 -12
View File
@@ -1,6 +1,9 @@
{ pkgs, lib, config, ... }: {
# My shell configuration
{ pkgs, lib, config, ... }:
let fetch = config.var.theme.fetch; # neofetch, nerdfetch, pfetch
in {
home.packages = with pkgs; [ bat ripgrep tldr ];
home.packages = with pkgs; [ bat ripgrep tldr sesh ];
home.sessionPath = [ "$HOME/go/bin" ];
@@ -13,20 +16,31 @@
initExtraFirst = ''
bindkey -e
${if config.var.theme.fetch == "neofetch" then
${if fetch == "neofetch" then
pkgs.neofetch + "/bin/neofetch"
else if config.var.theme.fetch == "nerdfetch" then
else if fetch == "nerdfetch" then
"nerdfetch"
else if config.var.theme.fetch == "pfetch" then
else if fetch == "pfetch" then
"echo; ${pkgs.pfetch}/bin/pfetch"
else
""}
function sesh-sessions() {
session=$(sesh list -t -c | fzf --height 70% --reverse)
[[ -z "$session" ]] && return
sesh connect $session
}
zle -N sesh-sessions
bindkey -M emacs '\es' sesh-sessions
bindkey -M vicmd '\es' sesh-sessions
bindkey -M viins '\es' sesh-sessions
'';
history = {
ignoreDups = true;
save = 1000000;
size = 1000000;
save = 10000;
size = 10000;
};
profileExtra = lib.optionalString (config.home.sessionPath != [ ]) ''
@@ -35,6 +49,18 @@
}"
'';
#NOTE- for btop to show gpu usage
#may want to check the driver version with:
#nix path-info -r /run/current-system | grep nvidia-x11
#and
#nix search nixpkgs nvidia_x11
sessionVariables = {
LD_LIBRARY_PATH = lib.concatStringsSep ":" [
"${pkgs.linuxPackages_latest.nvidia_x11_beta}/lib" # change the package name according to nix search result
"$LD_LIBRARY_PATH"
];
};
shellAliases = {
vim = "nvim";
vi = "nvim";
@@ -47,19 +73,20 @@
ls = "eza --icons=always --no-quotes";
tree = "eza --icons=always --tree --no-quotes";
sl = "ls";
open = "${pkgs.xdg_utils}/bin/xdg-open";
open = "${pkgs.xdg-utils}/bin/xdg-open";
icat = "${pkgs.kitty}/bin/kitty +kitten icat";
ssh = "kitty +kitten ssh";
wireguard-import = "nmcli connection import type wireguard file";
neorg =
"cd ~/nextcloud/neorg && vim -c ':ZenMode' -c ':Telescope find_files' index.norg";
notes =
"cd ~/nextcloud/Notes && vim -c ':ZenMode' -c ':Telescope find_files' index.md";
"nvim ~/nextcloud/notes/index.md --cmd 'cd ~/nextcloud/notes' -c ':Telescope find_files'";
note = "notes";
# git
g = "lazygit";
ga = "git add";
gc = "git commit";
gcm = "git commit -m";
gcu = "git add . && git commit -m 'Update'";
gp = "git push";
gpl = "git pull";
@@ -68,6 +95,11 @@
gco = "git checkout";
gcb = "git checkout -b";
gbr = "git branch";
grs = "git reset HEAD~1";
grh = "git reset --hard HEAD~1";
gaa = "git add .";
gcm = "git commit -m";
};
};
}
+12 -20
View File
@@ -1,31 +1,23 @@
# Spicetify is a spotify client customizer
{ pkgs, config, lib, inputs, ... }:
let spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
let
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
accent = "${config.lib.stylix.colors.base0D}";
in {
imports = [ inputs.spicetify-nix.homeManagerModules.default ];
nixpkgs.config.allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [ "spotify" ];
stylix.targets.spicetify.enable = false;
programs.spicetify = {
enable = true;
theme = spicePkgs.themes.text;
theme = lib.mkForce spicePkgs.themes.text;
colorScheme = "custom";
customColorScheme = {
text = "${config.var.theme.colors.fg}";
subtext = "${config.var.theme.colors.fgalt}";
sidebar-text = "${config.var.theme.colors.fgalt}";
main = "${config.var.theme.colors.bg}";
sidebar = "${config.var.theme.colors.bg}";
background = "${config.var.theme.colors.bg}";
player = "${config.var.theme.colors.bg}";
card = "${config.var.theme.colors.bg}";
shadow = "000000";
selected-row = "${config.var.theme.colors.bgalt}";
button = "${config.var.theme.colors.accent}";
button-active = "${config.var.theme.colors.accent}";
button-disabled = "${config.var.theme.colors.bgalt}";
tab-active = "${config.var.theme.colors.accent}";
misc = "${config.var.theme.colors.fgalt}";
button = accent;
button-active = accent;
tab-active = accent;
};
enabledExtensions = with spicePkgs.extensions; [
+47
View File
@@ -0,0 +1,47 @@
# Thunar is a file explorer
{ pkgs, ... }: {
# ctrl + m to toggle the menubar
home.packages = with pkgs.xfce; [
thunar
xfconf
tumbler
thunar-archive-plugin
thunar-volman
];
home.file.".config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml".text = ''
<?xml version="1.0" encoding="UTF-8"?>
<channel name="thunar" version="1.0">
<property name="last-view" type="string" value="ThunarIconView"/>
<property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_100_PERCENT"/>
<property name="last-window-maximized" type="bool" value="true"/>
<property name="last-separator-position" type="int" value="170"/>
<property name="last-statusbar-visible" type="bool" value="false"/>
<property name="last-menubar-visible" type="bool" value="false"/>
<property name="misc-single-click" type="bool" value="false"/>
<property name="shortcuts-icon-emblems" type="bool" value="true"/>
<property name="tree-icon-emblems" type="bool" value="true"/>
<property name="misc-file-size-binary" type="bool" value="true"/>
<property name="misc-thumbnail-draw-frames" type="bool" value="false"/>
<property name="misc-text-beside-icons" type="bool" value="true"/>
<property name="misc-change-window-icon" type="bool" value="true"/>
<property name="hidden-bookmarks" type="array">
<value type="string" value="computer:///"/>
<value type="string" value="recent:///"/>
<value type="string" value="file:///"/>
<value type="string" value="network:///"/>
</property>
<property name="hidden-devices" type="array">
<value type="string" value="52FEA905FEA8E309"/>
</property>
<property name="last-toolbar-item-order" type="string" value="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17"/>
<property name="last-toolbar-visible-buttons" type="string" value="0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0"/>
<property name="last-location-bar" type="string" value="ThunarLocationButtons"/>
<property name="last-show-hidden" type="bool" value="false"/>
<property name="last-details-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_38_PERCENT"/>
<property name="last-details-view-column-widths" type="string" value="50,50,127,50,50,50,50,50,751,50,50,75,50,145"/>
<property name="last-toolbar-items" type="string" value="menu:1,back:1,forward:0,open-parent:0,open-home:0,undo:0,redo:0,zoom-in:0,zoom-out:0,zoom-reset:0,view-as-icons:0,view-as-detailed-list:0,view-as-compact-list:0,toggle-split-view:0,location-bar:1,reload:0,search:1,uca-action-1710183590071525-1:0,new-tab:0,new-window:0,view-switcher:0"/>
</channel>
'';
}
-39
View File
@@ -1,39 +0,0 @@
{
programs.yazi = {
enable = true;
enableZshIntegration = true;
settings = {
log = { enabled = false; };
manager = {
show_hidden = false;
sort_by = "modified";
sort_dir_first = true;
sort_reverse = true;
};
};
theme = {
filetype = {
rules = [
{
fg = "#7AD9E5";
mime = "image/*";
}
{
fg = "#F3D398";
mime = "video/*";
}
{
fg = "#F3D398";
mime = "audio/*";
}
{
fg = "#CD9EFC";
mime = "application/x-bzip";
}
];
};
};
};
}
+86
View File
@@ -0,0 +1,86 @@
{ pkgs, config, inputs, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
background = "#${config.lib.stylix.colors.base00}";
foreground = "#${config.lib.stylix.colors.base05}";
muted = "#${config.lib.stylix.colors.base03}";
settings = ''
{
"config": {
"title" : "Welcome Home",
"openLinksInNewTab": false,
"locale": "fr-FR",
"colors": {
"primary": "${accent}",
"background": "${background}",
"foreground": "${foreground}",
"muted": "#${muted}"
},
"folders": [
{
"name": "Bookmarks",
"links": [
{"title": "MyNixOs", "url": "https://mynixos.com", "icon": "󱄅"},
{"title": "Github", "url": "https://github.com", "icon": ""},
{"title": "Proton", "url": "https://mail.proton.me/u/0/inbox", "icon": ""},
{"title": "Cloudflare One", "url": "https://one.dash.cloudflare.com/", "icon": ""},
{"title": "Chat GPT", "url": "https://chat.openai.com/", "icon": "󰭹"},
{"title": "Nixvim", "url": "https://nix-community.github.io/nixvim/", "icon": ""},
{"title": "Hyprland Wiki", "url": "https://wiki.hyprland.org/", "icon": "󰖬"},
{"title": "Youtube", "url": "https://youtube.com", "icon": "󰗃"},
{"title": "Figma", "url": "https://figma.com", "icon": ""},
{"title": "Server", "url": "https://home.anotherhadi.com", "icon": ""}
]
},
{
"name": "Work",
"links": [
{"title": "Outlook", "url": "https://outlook.office.com/mail/", "icon": "󰴢"},
{"title": "Office", "url": "https://www.office.com/?auth=2", "icon": "󰏆"},
{"title": "Teams", "url": "https://teams.microsoft.com/_", "icon": "󰊻"}
]
}
]
}
}
'';
homepage = pkgs.buildNpmPackage {
pname = "homepage";
version = "0.0.0";
src = pkgs.fetchFromGitHub {
owner = "anotherhadi";
repo = "homepage";
rev = "b77d35ed3596eb451bd2ec78063d7cc6e73c773d";
hash = "sha256-j/40922kfAh6zqJ4IRYpr66YXNNYsxuXwZ0aiJFJea0=";
};
# npmDepsHash = lib.fakeHash;
npmDepsHash = "sha256-bG+CHTq2Rst3JMxsjAC81KhK+G7WwsTVD1eyP87g0z4=";
buildPhase = ''
npm install
cp ${
pkgs.writeText "src/routes/config.json" settings
} src/routes/config.json
npm run build
mkdir $out
mv build $out
'';
meta = {
description = "homepage";
homepage = "https://github.com/anotherhadi/homepage";
};
};
in {
home.file.".config/homepage" = {
source = "${homepage}/build";
recursive = true;
};
home.packages = with pkgs;
[ inputs.zen-browser.packages."${system}".default ];
}
-36
View File
@@ -1,36 +0,0 @@
{ pkgs, ... }:
let
battery-watch = pkgs.writeShellScriptBin "battery-watch" ''
while true;do
battery-plugged &
battery-level &
sleep 60
done
'';
battery-plugged = pkgs.writeShellScriptBin "battery-plugged" ''
BATTERY_STATUS=$(cat /sys/class/power_supply/BAT*/status | head -n1)
OLD_BATTERY_STATUS=$(cat /tmp/old_battery_status 2>/dev/null || echo "Unknown")
if [[ $BATTERY_STATUS != $OLD_BATTERY_STATUS && $OLD_BATTERY_STATUS != "Unknown" ]]; then
if [[ $BATTERY_STATUS == "Discharging" ]]; then
notif "battery" "󰚦 Battery is unplugged"
else
notif "battery" "󰚥 Battery is plugged in"
fi
fi
echo $BATTERY_STATUS > /tmp/old_battery_status
'';
battery-level = pkgs.writeShellScriptBin "battery-level" ''
BATTERY_LEVEL=$(cat /sys/class/power_supply/BAT*/capacity | head -n1)
BATTERY_STATUS=$(cat /sys/class/power_supply/BAT*/status | head -n1)
if [[ $BATTERY_LEVEL -le 20 ]] && [[ $BATTERY_STATUS == "Discharging" ]]; then
notif "battery" "󰁻 Low battery" "Battery level is $BATTERY_LEVEL%"
elif [[ $BATTERY_LEVEL -le 10 ]] && [[ $BATTERY_STATUS == "Discharging" ]]; then
notif "battery" "󰁺 Very low battery" "Battery level is $BATTERY_LEVEL%"
# elif [[ $BATTERY_LEVEL -eq 100 ]] && [[ $BATTERY_STATUS -ne "Discharging" ]]; then
# notif "battery" "󰁹 Fully charged"
fi
'';
in { home.packages = [ battery-watch battery-plugged battery-level ]; }
+23 -10
View File
@@ -1,19 +1,24 @@
# - ## Brightness
#-
#- This module provides a set of scripts to control the brightness of the screen.
#-
#- - `brightness-up` increases the brightness by 5%.
#- - `brightness-down` decreases the brightness by 5%.
#- - `brightness-set [value]` sets the brightness to the given value.
#- - `brightness-change [up|down] [value]` increases or decreases the brightness by the given value.
{ pkgs, ... }:
let
increments = "5";
brightness-change = pkgs.writeShellScriptBin "brightness-change" ''
sleep 0.05
[[ $1 == "up" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ''${2-${increments}}%+
[[ $1 == "down" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ''${2-${increments}}%-
'';
[[ $1 == "up" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ${increments}%+
[[ $1 == "down" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ${increments}%-
brightness_level=$(${pkgs.brightnessctl}/bin/brightnessctl get)
message="󰃠 Brightness: $brightness_level%"
notif "brightness" "$message" "extraargs=-h int:value:$brightness_level"
brightness-set = pkgs.writeShellScriptBin "brightness-set" ''
${pkgs.brightnessctl}/bin/brightnessctl set ''${1-100}%
'';
brightness-up = pkgs.writeShellScriptBin "brightness-up" ''
@@ -24,4 +29,12 @@ let
brightness-change down ${increments}
'';
in { home.packages = [ brightness-change brightness-up brightness-down ]; }
in {
home.packages = [
pkgs.brightnessctl
brightness-change
brightness-up
brightness-down
brightness-set
];
}
+22 -18
View File
@@ -1,29 +1,33 @@
# - ## Caffeine
#-
#- Caffeine is a simple script that toggles hypridle (disable suspend & screenlock).
#-
#- - `caffeine-status` - Check if hypridle is running. (0/1)
#- - `caffeine-status-icon` - Check if hypridle is running. (icon)
#- - `caffeine` - Toggle hypridle.
{ pkgs, ... }:
let
caffeine-status = pkgs.writeShellScriptBin "caffeine-status" ''
[[ -f /tmp/caffeine ]] && echo "1" || echo "0"
'';
caffeine = pkgs.writeShellScriptBin "caffeine" ''
if [[ -f /tmp/caffeine ]]; then
rm /tmp/caffeine
${pkgs.hyprland}/bin/hyprctl dispatch exec ${pkgs.hypridle}/bin/hypridle
message="󰾪 Caffeine Deactivated"
else
touch /tmp/caffeine
pkill hypridle
message="󰅶 Caffeine Activated"
fi
notif "caffeine" "$message"
[[ $(pidof "hypridle") ]] && echo "0" || echo "1"
'';
caffeine-status-icon = pkgs.writeShellScriptBin "caffeine-status-icon" ''
status=$(caffeine-status)
if [[ $status == "1" ]]; then
echo "󰅶"
[[ $(pidof "hypridle") ]] && echo "󰾪" || echo "󰅶"
'';
caffeine = pkgs.writeShellScriptBin "caffeine" ''
if [[ $(pidof "hypridle") ]]; then
systemctl --user stop hypridle.service
title="󰅶 Caffeine Activated"
description="Caffeine is now active! Your screen will not turn off automatically."
else
echo "󰾪"
systemctl --user start hypridle.service
title="󰾪 Caffeine Deactivated"
description="Caffeine is now deactivated! Your screen will turn off automatically."
fi
notif "caffeine" "$title" "$description"
'';
in { home.packages = [ caffeine-status caffeine caffeine-status-icon ]; }
-22
View File
@@ -1,22 +0,0 @@
# From https://github.com/Frost-Phoenix/nixos-config
{ pkgs, ... }:
let
compress = pkgs.writeShellScriptBin "compress" ''
if (( $# == 1 )) then
# echo -ne "Archive name: "
# read name
# tar -cvzf "$name.tar.gz" $1
tar -cvzf "$1.tar.gz" $1
else
echo "Wrong number of arguments..."
fi
'';
extract = pkgs.writeShellScriptBin "extract" ''
for i in "$@" ; do
tar -xvzf $i
break
done
'';
in { home.packages = [ compress extract ]; }
+5 -5
View File
@@ -4,13 +4,13 @@
./sounds
./brightness
./caffeine
./hyprpanel
./hyprfocus
./night-shift
./screenshot
./startup
./nerdfont_fzf
./nerdfont-fzf
./notification
./battery
./compress
./misc
./system
./openvpn
];
}
+42
View File
@@ -0,0 +1,42 @@
# - ## Hyprfocus
#-
#- A simple script to toggle focus on few windows in Hyprland.
#- (disable gaps, border, shadow, opacity, etc.)
#-
#- - `hyprfocus-on` - Enable hyprfocus.
#- - `hyprfocus-off` - Disable hyprfocus.
#- - `hyprfocus-toggle` - Toggle hyprfocus.
{ pkgs, ... }:
let
hyprfocus-on = pkgs.writeShellScriptBin "hyprfocus-on"
# bash
''
hyprpanel-hide
hyprctl keyword "general:gaps_in" 0
hyprctl keyword "general:gaps_out" 0
hyprctl keyword "general:border_size" 1
hyprctl keyword "decoration:rounding" 0
hyprctl keyword "decoration:drop_shadow" false
hyprctl keyword "decoration:inactive_opacity" 0.98
hyprctl keyword "decoration:active_opacity" 1
echo "1" > /tmp/hyprfocus
'';
hyprfocus-off = pkgs.writeShellScriptBin "hyprfocus-off"
# bash
''
hyprctl reload
hyprpanel-show
rm /tmp/hyprfocus
'';
hyprfocus-toggle = pkgs.writeShellScriptBin "hyprfocus-toggle"
# bash
''
if [ -f /tmp/hyprfocus ]; then
hyprfocus-off
else
hyprfocus-on
fi
'';
in { home.packages = [ hyprfocus-on hyprfocus-off hyprfocus-toggle ]; }
+47
View File
@@ -0,0 +1,47 @@
# - ## Hyprpanel
#-
#- Quick scripts to toggle, reload, hide & show hyprpanel.
#-
#- - `hyprpanel-toggle` - Toggle hyprpanel (hide/show).
#- - `hyprpanel-show` - Show hyprpanel.
#- - `hyprpanel-hide` - Hide hyprpanel.
#- - `hyprpanel-reload` - Reload hyprpanel.
{ pkgs, ... }:
let
hyprpanel-toggle = pkgs.writeShellScriptBin "hyprpanel-toggle" ''
hyprpanel toggleWindow bar-0
hyprpanel toggleWindow bar-1
hyprpanel toggleWindow bar-2
hyprpanel toggleWindow bar-3
'';
hyprpanel-hide = pkgs.writeShellScriptBin "hyprpanel-hide" ''
status=$(hyprpanel isWindowVisible bar-0)
if [[ $status == "true" ]]; then
hyprpanel toggleWindow bar-0
fi
status=$(hyprpanel isWindowVisible bar-1)
if [[ $status == "true" ]]; then
hyprpanel toggleWindow bar-1
fi
'';
hyprpanel-show = pkgs.writeShellScriptBin "hyprpanel-show" ''
status=$(hyprpanel isWindowVisible bar-0)
if [[ $status == "false" ]]; then
hyprpanel toggleWindow bar-0
fi
status=$(hyprpanel isWindowVisible bar-1)
if [[ $status == "false" ]]; then
hyprpanel toggleWindow bar-1
fi
'';
hyprpanel-reload = pkgs.writeShellScriptBin "hyprpanel-reload" ''
[ $(pgrep "ags") ] && pkill ags
hyprctl dispatch exec hyprpanel
'';
in {
home.packages =
[ hyprpanel-toggle hyprpanel-reload hyprpanel-hide hyprpanel-show ];
}
-24
View File
@@ -1,24 +0,0 @@
{ pkgs, ... }:
let
menu = pkgs.writeShellScriptBin "menu" ''
if pgrep wofi; then
pkill wofi
else
wofi --show drun
fi
'';
powermenu = pkgs.writeShellScriptBin "powermenu" ''
if pgrep wlogout; then
pkill wlogout
else
${pkgs.wlogout}/bin/wlogout
fi
'';
lock = pkgs.writeShellScriptBin "lock" ''
${pkgs.hyprlock}/bin/hyprlock
'';
in { home.packages = [ menu powermenu lock ]; }
+29
View File
@@ -0,0 +1,29 @@
# - ## Nerdfont FZF
#-
#- This module provides a script to search for Nerd Fonts icons using fzf.
#-
#- - `nerdfont-fzf` - Search for Nerd Fonts icons using fzf.
{ pkgs, config, ... }:
let
nerdfont-fzf = pkgs.writeShellScriptBin "nerdfont-fzf" ''
icons=$(${pkgs.jq}/bin/jq -r 'to_entries[] | "\(.key):\(.value.char)"' "/home/${config.var.username}/.config/nerdfont_glyphnames.json" | awk -F: '{print "\033[95m "$2" \033[0m "$1}')
fzf_result=$(echo "$icons" | ${pkgs.fzf}/bin/fzf --ansi --border none | awk '{print $1}')
if [ -z "$fzf_result" ]; then
echo "No icon selected"
exit 1
fi
echo "Copied to clipboard: $fzf_result"
${pkgs.wl-clipboard}/bin/wl-copy "$fzf_result"
'';
in {
home.packages = [ nerdfont-fzf ];
xdg.configFile."nerdfont_glyphnames.json" = {
source = pkgs.fetchurl {
url =
"https://raw.githubusercontent.com/ryanoasis/nerd-fonts/384b1825ea0037b0314f7f9c660a80c1ecdb219a/glyphnames.json";
hash = "sha256-Ps0dyFcMs51RMTthBOVSOf/lafPV/53JxuNSKlmZ7cc=";
};
};
}
-34
View File
@@ -1,34 +0,0 @@
{ pkgs, config, ... }:
let
homedir = config.home.homeDirectory;
nerdfont-fzf = pkgs.writeShellScriptBin "nerdfont-fzf" ''
# Dependencies: jq, fzf, wl-copy, wget
icons=$(jq -r 'to_entries[] | "\(.key):\(.value.char)"' "${homedir}/.config/nerdfont_glyphnames.json" | awk -F: '{print "\033[95m "$2" \033[0m "$1}')
fzf_result=$(echo "$icons" | fzf --ansi --border none | awk '{print $1}')
if [ -z "$fzf_result" ]; then
echo "No icon selected"
exit 1
fi
echo "Copied to clipboard: $fzf_result"
echo "Paste it to close the window"
${pkgs.wl-clipboard}/bin/wl-copy -o "$fzf_result" # wait for paste before exiting.. not cool
'';
nerdfont-fzf-fetch = pkgs.writeShellScriptBin "nerdfont-fzf-fetch" ''
wget "https://raw.githubusercontent.com/ryanoasis/nerd-fonts/master/glyphnames.json" -O "glyphnames.json" || exit 1
jq 'del(.METADATA)' "glyphnames.json"
'';
nerdfont-popup = pkgs.writeShellScriptBin "nerdfont-popup" ''
${pkgs.kitty}/bin/kitty --class floating -o font_size=18 zsh -c nerdfont-fzf 2>/dev/null
'';
in {
home.packages = [ nerdfont-fzf nerdfont-fzf-fetch nerdfont-popup ];
xdg.configFile."nerdfont_glyphnames.json" = {
source = ./nerdfont_glyphnames.json;
};
}
File diff suppressed because it is too large Load Diff
+54 -31
View File
@@ -1,46 +1,69 @@
# - ## Night-Shift
#-
#- Night-Shift is a feature that reduces the amount of blue light emitted by your screen, which can help reduce eye strain and improve sleep quality. This module provides a set of scripts to control Night-Shift on your system.
#- It use hyprsunset to control the screen temperature.
#-
#- - `night-shift-on` activates Night-Shift.
#- - `night-shift-off` deactivates Night-Shift.
#- - `night-shift` toggles Night-Shift.
#- - `night-shift-status` checks if Night-Shift is active. (0/1)
#- - `night-shift-status-icon` checks if Night-Shift is active. (icon)
{ pkgs, ... }:
let
default = "4000";
value = "4500"; # Default value for night-shift temperature
night-shift-on = pkgs.writeShellScriptBin "night-shift-on" ''
${pkgs.hyprland}/bin/hyprctl dispatch exec "${pkgs.wlsunset}/bin/wlsunset -t ${default}"
message="󰖔 Night-Shift Activated"
notif "night-shift" "$message"
'';
night-shift-on = pkgs.writeShellScriptBin "night-shift-on"
# bash
''
${pkgs.hyprsunset}/bin/hyprsunset -t ${value} &
title="󰖔 Night-Shift Activated"
description="Night-Shift is now activated! Your screen will be warmer and easier on the eyes."
night-shift-off = pkgs.writeShellScriptBin "night-shift-off" ''
pkill wlsunset
message="󰖔 Night-Shift Deactivated"
notif "night-shift" "$message"
'';
notif "night-shift" "$title" "$description"
'';
night-shift = pkgs.writeShellScriptBin "night-shift" ''
if pgrep wlsunset; then
night-shift-off
else
night-shift-on
fi
'';
night-shift-off = pkgs.writeShellScriptBin "night-shift-off"
# bash
''
pkill hyprsunset
title="󰖕 Night-Shift Deactivated"
description="Night-Shift is now deactivated! Your screen will return to normal."
night-shift-status = pkgs.writeShellScriptBin "night-shift-status" ''
if [[ $(pgrep wlsunset) ]]; then
echo "1"
else
echo "0"
fi
'';
notif "night-shift" "$title" "$description"
'';
night-shift-status-icon =
pkgs.writeShellScriptBin "night-shift-status-icon" ''
if [[ $(pgrep wlsunset) ]]; then
echo "󰖔"
night-shift = pkgs.writeShellScriptBin "night-shift"
# bash
''
if pidof "hyprsunset"; then
night-shift-off
else
echo "󰖕"
night-shift-on
fi
'';
night-shift-status = pkgs.writeShellScriptBin "night-shift-status"
# bash
''
if pidof "hyprsunset"; then
echo "1"
else
echo "0"
fi
'';
night-shift-status-icon = pkgs.writeShellScriptBin "night-shift-status-icon"
# bash
''
if pidof "hyprsunset"; then
echo "󰖔"
else
echo "󰖕"
fi
'';
in {
home.packages = [
pkgs.hyprsunset
night-shift-on
night-shift-off
night-shift
+67 -46
View File
@@ -1,57 +1,78 @@
{ pkgs, config, ... }:
# - ## Nixy
#-
#- Nixy is a simple script that I use to manage my NixOS system. It's a simple script that provides a menu to rebuild, upgrade, update, collect garbage, clean boot menu, etc.
#-
#- - `nixy` - UI wizard to manage the system.
#- - `nixy rebuild` - Rebuild the system.
#- - `nixy ...` - ... see the script for more commands.
{ pkgs, config, inputs, ... }:
let
nixy = pkgs.writeShellScriptBin "nixy" ''
function exec() {
$@
}
configDirectory = config.var.configDirectory;
hostname = config.var.hostname;
function ui(){
DEFAULT_ICON="󰘳"
nixy = pkgs.writeShellScriptBin "nixy"
# bash
''
function exec() {
$@
}
# "icon;name;command"[]
apps=(
";Rebuild;nixy rebuild"
";Upgrade;nixy upgrade"
";Update;nixy update"
";Collect Garbage;nixy gc"
";Clean Boot Menu;nixy cb"
)
function ui(){
DEFAULT_ICON="󰘳"
# Apply default icons if empty:
for i in "''${!apps[@]}"; do
apps[i]=$(echo "''${apps[i]}" | sed 's/^;/'$DEFAULT_ICON';/')
done
# "icon;name;command"[]
apps=(
"󰑓;Rebuild;nixy rebuild"
"󰦗;Upgrade;nixy upgrade"
"󰚰;Update;nixy update"
";Collect Garbage;nixy gc"
"󰍜;Clean Boot Menu;nixy cb"
"󰌌;Hyprland Keybindings;nvim ${configDirectory}/docs/KEYBINDINGS-HYPRLAND.md"
"󰋩;Wallpapers;zen https://github.com/anotherhadi/nixy-wallpapers"
)
fzf_result=$(printf "%s\n" "''${apps[@]}" | awk -F ';' '{print $1" "$2}' | fzf)
[[ -z $fzf_result ]] && exit 0
fzf_result=''${fzf_result/ /;}
line=$(printf "%s\n" "''${apps[@]}" | grep "$fzf_result")
command=$(echo "$line" | sed 's/^[^;]*;//;s/^[^;]*;//')
# Apply default icons if empty:
for i in "''${!apps[@]}"; do
apps[i]=$(echo "''${apps[i]}" | sed 's/^;/'$DEFAULT_ICON';/')
done
exec "$command"
exit 0
}
fzf_result=$(printf "%s\n" "''${apps[@]}" | awk -F ';' '{print $1" "$2}' | fzf)
[[ -z $fzf_result ]] && exit 0
fzf_result=''${fzf_result/ /;}
line=$(printf "%s\n" "''${apps[@]}" | grep "$fzf_result")
command=$(echo "$line" | sed 's/^[^;]*;//;s/^[^;]*;//')
[[ $1 == "" ]] && ui
exec "$command"
exit 0
}
if [[ $1 == "rebuild" ]];then
sudo nixos-rebuild switch --flake ${config.var.configDirectory}#${config.var.hostname}
elif [[ $1 == "upgrade" ]];then
sudo nixos-rebuild switch --upgrade --flake ${config.var.configDirectory}#${config.var.hostname}
elif [[ $1 == "update" ]];then
cd ${config.var.configDirectory} && sudo nix flake update
elif [[ $1 == "gc" ]];then
cd ${config.var.configDirectory} && sudo nix-collect-garbage -d
elif [[ $1 == "cb" ]];then
sudo /run/current-system/bin/switch-to-configuration boot
elif [[ $1 == "remote" ]];then
cd ~/.config/nixos && git add . && git commit -m "update" && git push
ssh jack -S -C "cd /home/hadi/.config/nixos && git pull && sudo -S nixos-rebuild switch --flake ~/.config/nixos#jack"
else
echo "Unknown argument"
fi
'';
[[ $1 == "" ]] && ui
if [[ $1 == "rebuild" ]];then
sudo nixos-rebuild switch --flake ${configDirectory}#${hostname}
elif [[ $1 == "upgrade" ]];then
sudo nixos-rebuild switch --upgrade --flake '${configDirectory}#${hostname}'
elif [[ $1 == "update" ]];then
cd ${configDirectory} && nix flake update
elif [[ $1 == "gc" ]];then
cd ${configDirectory} && sudo nix-collect-garbage -d
elif [[ $1 == "cb" ]];then
sudo /run/current-system/bin/switch-to-configuration boot
elif [[ $1 == "remote" ]];then
cd ~/.config/nixos && git add . && git commit -m "update" && git push
ssh jack -S -C "cd /home/hadi/.config/nixos && git pull && sudo -S nixos-rebuild switch --flake ~/.config/nixos#jack"
elif [[ $1 == "loop" ]];then
while true; do
nixy
echo "Press enter to continue, e to exit"
read -n 1 REPLY
clear
[[ $REPLY == "e" ]] && exit 0
done
else
echo "Unknown argument"
fi
'';
in { home.packages = [ nixy ]; }
+20 -21
View File
@@ -1,27 +1,26 @@
{ pkgs, ... }:
let
notif = pkgs.writeShellScriptBin "notif" ''
# Shell script to send custom notifications
NOTIF_FOLDER="/tmp/notif"
sender_id=$1 # To overwrite existing notifications
message=$2
extraargs=""
description=""
if [[ $3 == "extraargs="* ]]; then
extraargs=$(echo "$3" | sed 's/extraargs=//g')
else
description="$3"
extraargs="$4"
fi
notif = pkgs.writeShellScriptBin "notif" # bash
''
# Shell script to send custom notifications
# Usage: notif "sender_id" "message" ["description"]
NOTIF_FOLDER="/tmp/notif"
sender_id=$1 # To overwrite existing notifications
title=$2
description=$3
[[ -d "$NOTIF_FOLDER" ]] || mkdir $NOTIF_FOLDER
[[ -f "$NOTIF_FOLDER/$sender_id" ]] || echo "0" > "$NOTIF_FOLDER/$sender_id"
[[ -d "$NOTIF_FOLDER" ]] || mkdir $NOTIF_FOLDER
[[ -f "$NOTIF_FOLDER/$sender_id" ]] || (echo "0" > "$NOTIF_FOLDER/$sender_id")
old_notification_id=$(cat "$NOTIF_FOLDER/$sender_id")
old_notification_id=$(cat "$NOTIF_FOLDER/$sender_id")
[[ -z "$old_notification_id" ]] && old_notification_id=0
${pkgs.libnotify}/bin/notify-send "$message" \
$extraargs \
--replace-id="$old_notification_id" --print-id > "$NOTIF_FOLDER/$sender_id"
'';
${pkgs.libnotify}/bin/notify-send \
--replace-id="$old_notification_id" --print-id \
--app-name="$sender_id" \
"$title" \
"$description" \
> "$NOTIF_FOLDER/$sender_id"
'';
in { home.packages = [ notif ]; }
in { home.packages = [ pkgs.libnotify notif ]; }
+37
View File
@@ -0,0 +1,37 @@
# - ## OpenVPN
#-
#- OpenVPN allows you to connect/disconnect quickly to a openVPN server
#-
#- - `openvpn-up` turn on the vpn
#- - `openvpn-down` turn down the vpn
#- - `openvpn-toggle` toggle the vpn
{ pkgs, ... }:
let
id = "home"; # ID of the connection
password-file = "/home/hadi/.config/vpn-password";
openvpn-up = pkgs.writeShellScriptBin "openvpn-up"
# bash
''
nmcli con up id ${id} passwd-file ${password-file}
notif "VPN" "VPN activated" "The OpenVPN connection to ${id} has been activated"
'';
openvpn-down = pkgs.writeShellScriptBin "openvpn-down"
# bash
''
nmcli con down id ${id}
notif "VPN" "VPN deactivated" "The OpenVPN connection to ${id} has been deactivated"
'';
openvpn-toggle = pkgs.writeShellScriptBin "openvpn-toggle"
# bash
''
if nmcli connection show --active | grep -q "${id}"; then
openvpn-down
else
openvpn-up
fi
'';
in { home.packages = [ openvpn-up openvpn-down openvpn-toggle ]; }
+15 -13
View File
@@ -1,32 +1,34 @@
# - ## Screenshot
#-
#- This module provides a script to take screenshots using `grimblast` and `swappy`.
#-
#- - `screenshot [region|window|monitor] [swappy]` - Take a screenshot of the region, window, or monitor. Optionally, use `swappy` to copy the screenshot to the clipboard.
{ pkgs, ... }:
let
screenshot = pkgs.writeShellScriptBin "screenshot" ''
if [[ $2 == "swappy" ]];then
folder="/tmp"
else
folder="$HOME/Pictures/screenshots"
folder="$HOME/Pictures"
fi
filename="$(date +%Y-%m-%d_%H:%M:%S).png"
mode="region" # Default to region
if [[ $1 == "window" ]];then
mode="window"
mode="active"
elif [[ $1 == "region" ]];then
mode="area"
elif [[ $1 == "monitor" ]];then
mode="output"
fi
${pkgs.hyprshot}/bin/hyprshot -m $mode -o $folder -f $filename -s || exit 1
${pkgs.grimblast}/bin/grimblast --notify --freeze copy $mode "$folder/$filename" || exit 1
if [[ $2 == "swappy" ]];then
${pkgs.swappy}/bin/swappy -f "$folder/$filename" -o "$HOME/Pictures/screenshots/$filename"
${pkgs.swappy}/bin/swappy -f "$folder/$filename" -o "$HOME/Pictures/$filename"
exit 0
fi
message=" Screenshot saved"
${pkgs.libnotify}/bin/notify-send "$message" \
--icon="$folder/$filename" \
--replace-id="$(cat "/tmp/nixy-notification" 2>/dev/null || echo 0)" --print-id > "/tmp/nixy-notification"
'';
in { home.packages = [ pkgs.hyprshot screenshot ]; }
in {
home.packages =
[ pkgs.hyprshot screenshot pkgs.slurp pkgs.grim pkgs.grimblast ];
}
+17 -65
View File
@@ -1,38 +1,31 @@
{ pkgs, config, ... }:
# - ## Sound
#-
#- This module provides a set of scripts to control the volume of the default audio sink using `wpctl`.
#-
#- - `sound-up` increases the volume by 5%.
#- - `sound-down` decreases the volume by 5%.
#- - `sound-set [value]` sets the volume to the given value.
#- - `sound-toggle` toggles the mute state of the default audio sink.
{ pkgs, ... }:
let
homedir = config.home.homeDirectory;
increments = "5";
sound-change = pkgs.writeShellScriptBin "sound-change" ''
sleep 0.05
[[ $1 == "mute" ]] && wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
[[ $1 == "up" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ "$2%+"
[[ $1 == "down" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ "$2%-"
sink_info=$(wpctl get-volume @DEFAULT_AUDIO_SINK@)
volume=$(echo "$(echo "$sink_info" | awk '{print $2}' | sed 's/%//')*100" | bc -l | xargs printf "%.0f")
muted=false
if [[ $sink_info == *"MUTED"* ]]; then
muted=true
fi
message=""
if [ $muted = true ]; then
message="󰖁 Muted"
else
message="󰕾 Volume: $volume%"
fi
notif "sound" "$message" "extraargs=-h int:value:$volume"
[[ $1 == "up" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ ''${2-${increments}}%+
[[ $1 == "down" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ ''${2-${increments}}%-
[[ $1 == "set" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ ''${2-100}%
'';
sound-up = pkgs.writeShellScriptBin "sound-up" ''
sound-change up ${increments}
'';
sound-set = pkgs.writeShellScriptBin "sound-set" ''
sound-change set ''${1-100}
'';
sound-down = pkgs.writeShellScriptBin "sound-down" ''
sound-change down ${increments}
'';
@@ -40,47 +33,6 @@ let
sound-toggle = pkgs.writeShellScriptBin "sound-toggle" ''
sound-change mute
'';
sound-output = pkgs.writeShellScriptBin "sound-output" ''
function parse_sinks(){
output=$(wpctl status)
sinks=($(echo "$output" | sed 's/ //' | awk '/Sinks:/ {flag=1; next} /^$/ {flag=0} flag' | sed 's/ /-/g'))
for sink in "''${sinks[@]}"; do
id=""
default=false
sink=$(echo "$sink" | sed 's/-/ /g')
sink_name=$(echo "$sink" | sed 's/\[vol:.*$//')
if [[ $sink_name == "*"* ]]; then
sink_name=$(echo "$sink_name" | sed 's/*//')
default=true
fi
id=$(echo "$sink_name" | cut -d'.' -f1)
sink_name=$(echo "$sink_name" | sed 's/^[ ]*//;s/[ ]*$//' )
sink_name=$(echo "$sink_name" | cut -d'.' -f2 )
if [[ $default == true ]];then
printf "*%s (%d)" "$sink_name" "$id"
else
printf " %s (%d)" "$sink_name" "$id"
fi
printf "\n"
done
}
choosed_sink=$(echo "$(parse_sinks)" | ${pkgs.fzf}/bin/fzf \
--border-label "Choose sound output" ) || exit 1
choosed_sink_id=$(echo "$choosed_sink" | sed 's/.*(\(.*\))/\1/')
wpctl set-default $choosed_sink_id
'';
in {
home.packages =
[ sound-output sound-change sound-up sound-down sound-toggle ];
home.packages = [ sound-change sound-up sound-down sound-toggle sound-set ];
}

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