Compare commits
490 Commits
60fe3769e8
..
v2.3.0
| Author | SHA1 | Date | |
|---|---|---|---|
| 5eb34e05ab | |||
| e94c09a5e2 | |||
| 0d00056d61 | |||
| 11909b2db3 | |||
| 50ad65ec50 | |||
| 128b9a79c3 | |||
| e17a7f6e5c | |||
| 60c6ba9bd1 | |||
| 4362d3ada7 | |||
| e73350a76b | |||
| 71b6f444c2 | |||
| 8cb73c1a34 | |||
| 70596d95fb | |||
| d937db8573 | |||
| 1c6a9f5caa | |||
| 3470c61c5e | |||
| 005aaef5e1 | |||
| 03490447cb | |||
| 280b114e66 | |||
| ed4eba3d14 | |||
| b70aa6661b | |||
| b0507d10ea | |||
| c94a3b85d8 | |||
| 04015018a4 | |||
| fe1f3fce14 | |||
| b1c379221e | |||
| 5812e60eb5 | |||
| e7f2c03502 | |||
| 9db064e331 | |||
| 7fce5419aa | |||
| 948542bbd8 | |||
| 4ab85f4f1c | |||
| 7d2e868a03 | |||
| 5f794cfabd | |||
| f5f37f420d | |||
| b6a0ac38de | |||
| 56d0aac939 | |||
| 9e6dbb465b | |||
| 4875fce088 | |||
| 6ff18b7d15 | |||
| a6526de2a4 | |||
| bf04dce6d5 | |||
| fdabd7edf9 | |||
| a13ea2b8da | |||
| 0473880942 | |||
| c2afa515ee | |||
| ecee3e4daa | |||
| 39c70d2152 | |||
| c6cc2b3e2b | |||
| 61eac2f021 | |||
| 55cfb67493 | |||
| 082fbb2130 | |||
| 207caa7ba5 | |||
| 9d03a16364 | |||
| 7832f5f750 | |||
| c9775af4ea | |||
| 146afb1de5 | |||
| e9e7d4f06f | |||
| 273fd77b86 | |||
| cf04176b10 | |||
| eb3083346f | |||
| 5078a34ee3 | |||
| b5f27c6ed6 | |||
| cb7c2f3c40 | |||
| 3e6f8b856d | |||
| 38b516453a | |||
| 2e9fd1710f | |||
| 4b8593b097 | |||
| fd5dfea2c4 | |||
| b623474fc0 | |||
| ffcd2c0c19 | |||
| aa1a9c25d7 | |||
| cd837e208e | |||
| eca9b216ba | |||
| f1bff29cd9 | |||
| e452d79f0c | |||
| 0fb184e8d3 | |||
| 5b337e5e94 | |||
| 498c03decc | |||
| 5f6fb011a2 | |||
| 46b913a7d3 | |||
| 0ecb821342 | |||
| f7d23ddee9 | |||
| fb63d4c0e9 | |||
| 9bddf6dab9 | |||
| 2f39827f03 | |||
| 41a6417a2d | |||
| 02331d9deb | |||
| 742aa325aa | |||
| 6d487ab9f0 | |||
| a0f7128a28 | |||
| fdd5d685d6 | |||
| 62213109f7 | |||
| 9c43c89a3f | |||
| 9c1fc992e2 | |||
| cc2b0989d3 | |||
| 3ee5f2097d | |||
| 5657e0b24c | |||
| b51725e7cd | |||
| 86f8c99554 | |||
| c256b870aa | |||
| 94103e9dfb | |||
| af6319c8ec | |||
| 6edda0e6e1 | |||
| 3ba7648eb0 | |||
| 484d82a788 | |||
| be0d934622 | |||
| abab0d1b96 | |||
| 9dd462b0b8 | |||
| 28404f07cd | |||
| eb0e205e99 | |||
| 0c856fe2d2 | |||
| 26452fbf23 | |||
| 6f2ad22139 | |||
| e79b8ac14c | |||
| 9826faa7d0 | |||
| 68e5393f5d | |||
| f3e7766229 | |||
| 76f7b763cf | |||
| 51191f82c7 | |||
| e86c831653 | |||
| 91f8e392ef | |||
| 7ce04c1ae9 | |||
| 1aff187d21 | |||
| 856c0c3212 | |||
| acfaa9d9e8 | |||
| 20307f9096 | |||
| ff1d70ba79 | |||
| 188e34a575 | |||
| 373c2d4546 | |||
| ae1335d4d2 | |||
| 70e9831d3a | |||
| 446e610c59 | |||
| 894e9872c3 | |||
| f00d34f38b | |||
| 93395308a0 | |||
| 3fcd3c316f | |||
| 07a2b77f84 | |||
| 1a28823b3b | |||
| 597afc0b39 | |||
| 540636df16 | |||
| 1c8b68182a | |||
| dee40034cd | |||
| cb347c715b | |||
| 0e683e111f | |||
| ceb8e98fbf | |||
| da50226d9f | |||
| 3ba87d750f | |||
| 2cab0e6903 | |||
| 846e83545f | |||
| 14b568ae7d | |||
| 1fc8bce262 | |||
| 16f8d6d8b3 | |||
| ae337d1631 | |||
| c9959e4715 | |||
| 26fd7e8775 | |||
| 1819e78c0b | |||
| e26a6eb442 | |||
| 4cc072fa14 | |||
| 46436db4a5 | |||
| 1e0f379981 | |||
| 2027dd0cd1 | |||
| 59be989faa | |||
| fadb6fcfd8 | |||
| 988f7a68db | |||
| 60ef1c61f2 | |||
| a70bb23316 | |||
| 186d1c69de | |||
| 90f0adb29e | |||
| 11a12e6ca6 | |||
| ec1c7f1dc6 | |||
| e8f3660561 | |||
| 173c2f89fc | |||
| 577d33bdd1 | |||
| 5d09cd1097 | |||
| ade814e4af | |||
| 4c39b0044d | |||
| 08c43f4771 | |||
| def4d2a994 | |||
| 7256d94c49 | |||
| 52345c06cd | |||
| 26f6c935af | |||
| 7aa0413931 | |||
| 04b54566b1 | |||
| ff0e41c73f | |||
| b070d20ef4 | |||
| 5849179d0b | |||
| 9aa13777c5 | |||
| 79ca8b68a8 | |||
| 99038231a8 | |||
| 5c877f5f76 | |||
| 2beda6180b | |||
| 3921780961 | |||
| 6d856f0bfa | |||
| 7ef5dac5cb | |||
| ada5bebfe0 | |||
| fd472e7abc | |||
| 67c02f59de | |||
| 34a090cb13 | |||
| 6c66562c77 | |||
| 44474f2cbb | |||
| 0c34497671 | |||
| 957d749df5 | |||
| 23e45b3679 | |||
| 58f45a48b4 | |||
| 64884b1367 | |||
| 41808ad011 | |||
| f1f9ee57f0 | |||
| 2fa2d20c8b | |||
| d1047e2abf | |||
| eb75f6e451 | |||
| 95329e82fb | |||
| c139f1c12a | |||
| 4ead1d07ae | |||
| 81d9c22cbc | |||
| 5da1dcccba | |||
| 6a950d4bcc | |||
| 26263eee48 | |||
| ba0a151f1e | |||
| 2c5be469f0 | |||
| 9728b2ed6b | |||
| 2255bd8d7c | |||
| 7617488f52 | |||
| c0b0ed81c8 | |||
| 4ab75fb583 | |||
| 339eb8877c | |||
| 2e92ce971e | |||
| 51e58883fa | |||
| 59fe18dcd6 | |||
| d543f308b3 | |||
| 0881baf082 | |||
| 3f4590bda4 | |||
| c692d33216 | |||
| 33de46de17 | |||
| ff55504616 | |||
| 627435b452 | |||
| 64f057b1b1 | |||
| f6f4acf2b6 | |||
| 44b79b0ff0 | |||
| f5887c9f24 | |||
| 178aeb2aac | |||
| 8e8caed609 | |||
| 92c1b38ca5 | |||
| 9f196b8fb8 | |||
| a8ad3a28fb | |||
| 19f5613c74 | |||
| 35848dfd62 | |||
| a37fda47ea | |||
| 60f5d20cbe | |||
| 6a808cbc89 | |||
| 75f9e08d7b | |||
| 1d7d1e1c89 | |||
| b8356528ba | |||
| 602423d9ae | |||
| 295085c7e9 | |||
| 872735897c | |||
| b064228958 | |||
| 156ca28cbf | |||
| cd08d5ad46 | |||
| 109cd5075b | |||
| bbdf394dda | |||
| c1ace49f38 | |||
| 05c1fe6313 | |||
| a94489d52d | |||
| 2db08a1a06 | |||
| abf9f53eee | |||
| 33e9ca6021 | |||
| 601306033d | |||
| a67177bbb3 | |||
| 13cecc6f19 | |||
| 83ee267214 | |||
| 7322f50f14 | |||
| e91e838528 | |||
| 332caad470 | |||
| de1ef7f45e | |||
| 6375bcaf34 | |||
| 12394f2945 | |||
| 4e7ae503f8 | |||
| 53ae7625af | |||
| ba48ce3942 | |||
| 9a236765ed | |||
| 355c13c8f0 | |||
| 0810128ee4 | |||
| be7548e10a | |||
| b3df107c36 | |||
| 56df3723d2 | |||
| 27abeac6db | |||
| da81e80716 | |||
| d70cf4ebe7 | |||
| ab11bf5b91 | |||
| 88ff53dc29 | |||
| d93dda3f6d | |||
| fed0845912 | |||
| f18c96bcea | |||
| dd81dc8e54 | |||
| 67dae73157 | |||
| 27cffd8917 | |||
| 5338fa3c93 | |||
| 9ab398c6d2 | |||
| 1a1ec40517 | |||
| ab6813996d | |||
| d84912df76 | |||
| cfb4904976 | |||
| 9ac6e92dc5 | |||
| a5e1ee5285 | |||
| d34eafd868 | |||
| 402a1a512a | |||
| f26f8ad0e1 | |||
| 8cc97c5cc7 | |||
| 242298923e | |||
| 85011e69d3 | |||
| b4ad55a8c2 | |||
| 8935e3e520 | |||
| 883d95ca39 | |||
| 91055f207f | |||
| 299222f9fd | |||
| a2485b18b3 | |||
| 75bc825770 | |||
| b6c4c0e00a | |||
| 6797cb1107 | |||
| 1bd451a8bb | |||
| 63f101763d | |||
| 01e890081a | |||
| 147e0715cf | |||
| 2922ef04a4 | |||
| 9f2afd0f8a | |||
| ba31976fcf | |||
| ce2dcf66a4 | |||
| 0d9b79c73e | |||
| a17e3583e6 | |||
| 1885087e56 | |||
| b79d37ad06 | |||
| 8952cbaade | |||
| cbda10510d | |||
| e09cae9c44 | |||
| 187bdb0a32 | |||
| 5ba463757e | |||
| 7763a854af | |||
| 6cd8da4bf1 | |||
| a397f5e82b | |||
| 31ba52c9ac | |||
| bd5998521b | |||
| 5d043297d3 | |||
| 07dd6c09a5 | |||
| 28513feea4 | |||
| 982c4b2f80 | |||
| cd3ac7cfbc | |||
| 58bbb5532a | |||
| 6b115d6d28 | |||
| 7d97cc9148 | |||
| 992929e13a | |||
| 65b80a7d8d | |||
| 396a4dcf84 | |||
| dae5881128 | |||
| c00de1af0e | |||
| 5c760f5bfc | |||
| d3881d0897 | |||
| 64771ae931 | |||
| 516b7eaed4 | |||
| dc11045158 | |||
| c462a44130 | |||
| 9130b97e13 | |||
| c1291fa9e7 | |||
| 282031208e | |||
| 2ee7347334 | |||
| d3d4c5c7e6 | |||
| 47b46bdbf1 | |||
| a5750d59be | |||
| e7324aa80d | |||
| 61728dd166 | |||
| f405b40518 | |||
| 4fbcff7320 | |||
| 9e77650fa6 | |||
| 2e3a459e5c | |||
| 3e0a36a9d9 | |||
| 84463917f5 | |||
| b23b815696 | |||
| d2858a640b | |||
| 8cd055be59 | |||
| 7a3787d62d | |||
| 985dd82c6f | |||
| b828545a42 | |||
| c1a311e021 | |||
| 98fc1e131b | |||
| f19b74c2e9 | |||
| 0aae361973 | |||
| e925d6712c | |||
| 553455474b | |||
| b53c5bb5b1 | |||
| f76419c158 | |||
| fb44fb3fab | |||
| d19182608d | |||
| ebbb2dd780 | |||
| ce24afcea0 | |||
| 4b1c84319b | |||
| 7d46fa680f | |||
| 73961f5caf | |||
| 89c194d604 | |||
| fc50d282ca | |||
| 101cbd0761 | |||
| 48f7c42a21 | |||
| a6d00d0823 | |||
| e02c11e258 | |||
| 3554bf257e | |||
| ec0e54e4b2 | |||
| 8d60d1d914 | |||
| 2555bc641b | |||
| dfc48d1525 | |||
| 80a61f86dc | |||
| 1cde20d8bc | |||
| 378bdade49 | |||
| b87610007a | |||
| c216a5e997 | |||
| ccf0ee95c6 | |||
| 0a2644f5d4 | |||
| 7f31c039e8 | |||
| cfbf65a7f5 | |||
| 1f67c4a752 | |||
| b9dbcac931 | |||
| 0b713dfa4e | |||
| 140bd5c510 | |||
| ae68f811f2 | |||
| 1c25f3421d | |||
| 3f4477d938 | |||
| 7d0afea3bf | |||
| 4eab3730be | |||
| 07d95c5255 | |||
| ddb412cdea | |||
| 5c29aeffc5 | |||
| f9dfd7ae1a | |||
| 34a8b4ffed | |||
| 93480fdf86 | |||
| f5605570e0 | |||
| 9d9e3570df | |||
| 8be54bb19b | |||
| b533415ab7 | |||
| 3b2fd0b3f4 | |||
| ef90d16de8 | |||
| 5222447894 | |||
| 8d9d8d4ca2 | |||
| f32ad388b2 | |||
| e1ff3e4624 | |||
| 1187753bb7 | |||
| dde5b26215 | |||
| 1db52368f7 | |||
| 9e9970f517 | |||
| 00df88dc0e | |||
| de09bd0179 | |||
| 2180d78dfc | |||
| 1cb0490c03 | |||
| 424dd06e18 | |||
| 17b23c8497 | |||
| ba6bb433b6 | |||
| c3120b819e | |||
| edcb1af2d9 | |||
| 0cc43ddbb5 | |||
| 3f4096dfe5 | |||
| 2b27db1bff | |||
| f9aafdc772 | |||
| 0568b5d256 | |||
| 76ed5e3b0a | |||
| 61a70a7c37 | |||
| cebb8d311d | |||
| 42d7bb5c6e | |||
| 0eb1751e41 | |||
| c995295397 | |||
| 448a482497 | |||
| 9bd0c2f190 | |||
| 283d757327 | |||
| 32c9cd7504 | |||
| fac419453e | |||
| b043028ec7 | |||
| 900eb52b17 | |||
| 89d705f414 | |||
| 34e5fbb417 | |||
| 0aa6df37cd | |||
| a185bd740d | |||
| bd81378c22 | |||
| 96c6f25c3c | |||
| 61a67cd51d | |||
| fe6ef8762e | |||
| c6c053585c | |||
| f3dcd108db | |||
| 8e8bb981e1 | |||
| 5000562333 | |||
| e2aad1b524 | |||
| bb383dcddb | |||
| d59434285a | |||
| e55f66e4fb | |||
| 7c3ff59a0f |
@@ -1,8 +1,8 @@
|
|||||||
[//]: # (Title: Nixy)
|
[//]: # (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.)
|
[//]: # (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)
|
[//]: # (Author: Hadi)
|
||||||
[//]: # (Date: 09/04/24)
|
[//]: # (Date: 08/28/24)
|
||||||
[//]: # (Version: v2.3.0)
|
[//]: # (Version: v2.2.0)
|
||||||
|
|
||||||
<div align="center">
|
<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/docs/src/logo.png" width="100px" />
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
<br>
|
<br>
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<a href="https://github.com/anotherhadi/nixy">
|
<a href="https://github.com/anotherhadi/nixy">
|
||||||
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=Version&message=v2.3.0&colorA=181825&colorB=89b4fa&logo=githubactions&logoColor=89b4fa"/>
|
<img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=Version&message=v2.2.0&colorA=181825&colorB=89b4fa&logo=githubactions&logoColor=89b4fa"/>
|
||||||
</a>
|
</a>
|
||||||
<a href="https://github.com/anotherhadi/nixy/stargazers">
|
<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=89b4fa&labelColor=181825&style=for-the-badge&logo=starship&logoColor=89b4fa">
|
||||||
@@ -40,41 +40,27 @@ It's a simple way to manage your system configuration and dotfiles.
|
|||||||
- [Table of Content](#table-of-content)
|
- [Table of Content](#table-of-content)
|
||||||
- [Gallery](#gallery)
|
- [Gallery](#gallery)
|
||||||
- [Architecture](#architecture)
|
- [Architecture](#architecture)
|
||||||
- [🏠 `home`](#-home)
|
|
||||||
- [💻 `hosts`](#-hosts)
|
|
||||||
- [Installation](#installation)
|
- [Installation](#installation)
|
||||||
- [Documentation](#documentation)
|
- [Documentation](#documentation)
|
||||||
|
|
||||||
## Gallery
|
## Gallery
|
||||||
|
|
||||||

|

|
||||||

|

|
||||||

|

|
||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
|
|
||||||
### 🏠 `home`
|
- 🏠 `home` are the dotfiles and configuration files for the users
|
||||||
|
- 'programs' is a collection of apps configured with home-manager
|
||||||
Those are the dotfiles and configuration files for user-level configuration
|
- 'scripts' is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
|
||||||
|
- 'system' is some "desktop environment" configuration
|
||||||
**Subfolders:**
|
- 'wallpapers' are... wallpapers
|
||||||
|
- 💻 `hosts` are the system configuration files
|
||||||
- `programs` is a collection of apps configured with home-manager
|
- 'laptop' is my configuration for my laptop with Nvidia that you can copy
|
||||||
- `scripts` is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
|
- 'server' is for my homeserver (w/nextcloud, nginx, vaultwarden, ... look `hosts/server`)
|
||||||
- `system` is some "desktop environment" configuration
|
- 'themes' contains all the *themes* available *(see [THEMES.md](docs/THEMES.md))*
|
||||||
- `wallpapers` are... wallpapers
|
- 'modules' are some nix modules that you can import (Nvidia, prime, fonts, ...)
|
||||||
|
|
||||||
### 💻 `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.
|
|
||||||
|
|
||||||
**Subfolders:**
|
|
||||||
|
|
||||||
- 🎨 `themes` are the themes available *(see [THEMES.md](docs/THEMES.md))*
|
|
||||||
- 📦 `modules` are the nix modules that you can import
|
|
||||||
- `laptop` is my configuration for my laptop with Nvidia that you can copy
|
|
||||||
- `server` is for my homeserver (w/nextcloud, nginx, vaultwarden, ...)
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ The configurations files can be found in the `hosts/laptop` directory.
|
|||||||
| | hypridle |
|
| | hypridle |
|
||||||
| | hyprcursor |
|
| | hyprcursor |
|
||||||
| | wlogout |
|
| | wlogout |
|
||||||
| Bar | hyprpanel |
|
| Bar | waybar |
|
||||||
| Terminal | kitty |
|
| Terminal | kitty |
|
||||||
| Shell | zsh |
|
| Shell | zsh |
|
||||||
| | tmux |
|
| | tmux |
|
||||||
@@ -25,17 +25,32 @@ The configurations files can be found in the `hosts/laptop` directory.
|
|||||||
| | zoxide |
|
| | zoxide |
|
||||||
| | fzf |
|
| | fzf |
|
||||||
| Editor | neovim(nixvim) |
|
| Editor | neovim(nixvim) |
|
||||||
| File manager | thunar |
|
| File manager | lf |
|
||||||
|
| | thunar |
|
||||||
| Browser | qutebrowser |
|
| Browser | qutebrowser |
|
||||||
| Music | spicetify |
|
| Music | spicetify |
|
||||||
|
| Notifications | dunst |
|
||||||
| Launcher | wofi |
|
| Launcher | wofi |
|
||||||
| DM | tuigreet |
|
| DM | tuigreet |
|
||||||
| Secrets | sops-nix |
|
| Secrets | sops-nix |
|
||||||
|
| Misc | lazygit |
|
||||||
|
| | neofetch |
|
||||||
|
| | cava |
|
||||||
| See [hosts/laptop](../hosts/laptop/)... | |
|
| See [hosts/laptop](../hosts/laptop/)... | |
|
||||||
|
|
||||||
## Server
|
## Server
|
||||||
|
|
||||||
The server configuration is used by a home server running NixOS.
|
The server configuration is used by a home server running NixOS.
|
||||||
The configurations files can be found in the `hosts/server` directory.
|
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, jellyfin, ...
|
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
|
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,17 +3,17 @@
|
|||||||
The list of the keybindings working on Hyprland:
|
The list of the keybindings working on Hyprland:
|
||||||
|
|
||||||
| Description | Keybinding |
|
| Description | Keybinding |
|
||||||
|--------------------------------------------|--------------------------|
|
|-----------------------------|--------------------------|
|
||||||
| Switch Workspace | SUPER + {Number} |
|
| Switch Workspace | SUPER + {Number} |
|
||||||
| Move app to Workspace | SHIFT + SUPER + {Number} |
|
| Move app to Workspace | SHIFT + SUPER + {Number} |
|
||||||
| Kitty | SUPER + RETURN |
|
| Kitty | SUPER + RETURN |
|
||||||
| Thunar | SUPER + E |
|
| Thunar | SUPER + E |
|
||||||
| Qutebrowser | SUPER + B |
|
| Qutebrowser | SUPER + B |
|
||||||
| Bitwarden | SUPER + K |
|
| Bitwarden | SUPER + K |
|
||||||
|
| Peaclock | SUPER + C |
|
||||||
| Lock | SUPER + L |
|
| Lock | SUPER + L |
|
||||||
| Powermenu | SUPER + X |
|
| Powermenu | SUPER + X |
|
||||||
| Launcher | SUPER + SPACE |
|
| Launcher | SUPER + SPACE |
|
||||||
| "\$shiftMod, SPACE, hyprexpo:expo, toggle" | |
|
|
||||||
| Close window | SUPER + Q |
|
| Close window | SUPER + Q |
|
||||||
| Toggle Floating | SUPER + T |
|
| Toggle Floating | SUPER + T |
|
||||||
| Toggle Fullscreen | SUPER + F |
|
| Toggle Fullscreen | SUPER + F |
|
||||||
@@ -27,11 +27,9 @@ The list of the keybindings working on Hyprland:
|
|||||||
| Screenshot monitor | PRINT |
|
| Screenshot monitor | PRINT |
|
||||||
| Screenshot region | SHIFT + SUPER + PRINT |
|
| Screenshot region | SHIFT + SUPER + PRINT |
|
||||||
| Screenshot region then edit | ALT PRINT |
|
| Screenshot region then edit | ALT PRINT |
|
||||||
| Search on internet with wofi | SHIFT + SUPER + S |
|
|
||||||
| Clipboard picker with wofi | SHIFT + SUPER + C |
|
|
||||||
| Emoji picker with wofi | SHIFT + SUPER + E |
|
|
||||||
| Turn off night shift | SUPER + F2 |
|
| Turn off night shift | SUPER + F2 |
|
||||||
| Turn on night shift | SUPER + F3 |
|
| Turn on night shift | SUPER + F3 |
|
||||||
|
| Choose sound output | SUPER + F5 |
|
||||||
| Move Window (mouse) | SUPER + mouse:272 |
|
| Move Window (mouse) | SUPER + mouse:272 |
|
||||||
| Resize Window (mouse) | SUPER + R |
|
| Resize Window (mouse) | SUPER + R |
|
||||||
| Toggle Mute | XF86AudioMute |
|
| Toggle Mute | XF86AudioMute |
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Scripts
|
# Scripts
|
||||||
|
|
||||||
Scripts are located in the `home/scripts` folder. Home-manager add those in the user's path.
|
Scripts are located in the `home/scripts` folder. Home-manager add those in the path.
|
||||||
|
|
||||||
## Nix/NixOs shortcuts
|
## Nix/NixOs shortcuts
|
||||||
|
|
||||||
@@ -18,15 +18,14 @@ Scripts are located in the `home/scripts` folder. Home-manager add those in the
|
|||||||
|
|
||||||
- `brightness-up`
|
- `brightness-up`
|
||||||
- `brightness-down`
|
- `brightness-down`
|
||||||
- `brightness-set [value]`
|
- `brightness-change <up/down> <increment>`
|
||||||
- `brightness-change [up/down] <increment>`
|
|
||||||
|
|
||||||
## Sound control
|
## Sound control
|
||||||
|
|
||||||
- `sound-up`
|
- `sound-up`
|
||||||
- `sound-down`
|
- `sound-down`
|
||||||
- `sound-toggle`
|
- `sound-toggle`
|
||||||
- `sound-set [value]`
|
- `sound-output`
|
||||||
- `sound-change [up/down/mute] <increment>`
|
- `sound-change [up/down/mute] <increment>`
|
||||||
|
|
||||||
## Caffeine
|
## Caffeine
|
||||||
@@ -34,16 +33,14 @@ Scripts are located in the `home/scripts` folder. Home-manager add those in the
|
|||||||
Caffeine is a simple script that toggles hypridle (disable suspend & screenlock).
|
Caffeine is a simple script that toggles hypridle (disable suspend & screenlock).
|
||||||
|
|
||||||
- `caffeine` # Toggle caffeine
|
- `caffeine` # Toggle caffeine
|
||||||
- `caffeine-status` # Return 1/0
|
- `caffeine-status` # Return active/inactive
|
||||||
- `caffeine-status-icon` # Return /
|
|
||||||
|
|
||||||
## Night-Shift
|
## Night-Shift
|
||||||
|
|
||||||
Blue light filter, using wlsunset
|
Blue light filter, using wlsunset
|
||||||
|
|
||||||
- `night-shift` # Toggle night shift
|
- `night-shift` # Toggle night shift
|
||||||
- `night-shift-status` # Return 1/0
|
- `night-shift-status` # Return active/inactive
|
||||||
- `night-shift-status-icon` # Return /
|
|
||||||
- `night-shift-on`
|
- `night-shift-on`
|
||||||
- `night-shift-off`
|
- `night-shift-off`
|
||||||
|
|
||||||
@@ -53,3 +50,10 @@ Nerdfont fzf is a quick way to search for nerdfont icons locally.
|
|||||||
It will copy the selected icon to the clipboard.
|
It will copy the selected icon to the clipboard.
|
||||||
|
|
||||||
- `nerdfont-fzf`
|
- `nerdfont-fzf`
|
||||||
|
|
||||||
|
## Compress/Extract
|
||||||
|
|
||||||
|
Some shortcuts to compress and extract files.
|
||||||
|
|
||||||
|
- `compress` ...
|
||||||
|
- `extract` ...
|
||||||
|
|||||||
@@ -18,3 +18,15 @@ Wallpapers are loaded from the `home/wallpapers` folder.
|
|||||||

|

|
||||||

|

|
||||||

|

|
||||||
|
|
||||||
|
### Catppuccin
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
### Windows
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|||||||
@@ -2,26 +2,28 @@
|
|||||||
|
|
||||||
feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md))
|
feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md))
|
||||||
|
|
||||||
- [ ] Wofi config
|
- [ ] Nixy
|
||||||
- Calculator
|
- [ ] Themes
|
||||||
|
|
||||||
- [ ] Test hyprshade (replacement for gammastep)
|
- [ ] Clipse: clipboard manager
|
||||||
|
- [ ] Walker launcher implementation
|
||||||
|
- [ ] Swaync implementation
|
||||||
|
|
||||||
- [ ] Qutebrowser
|
- [ ] Qutebrowser
|
||||||
- [ ] !!! Bitwarden integration (I need this.)
|
- [ ] !!! Bitwarden integration (I need this.)
|
||||||
|
|
||||||
- [ ] Hyprland
|
- [ ] Hyprland
|
||||||
- [ ] Fix screenshots (screenshot region's border shows up in the screenshot, hyprshot jq error?) and add in the scripts doc
|
- [ ] Implement Hyprcursor
|
||||||
|
- [ ] wofi: popin
|
||||||
|
- [ ] wlogout: fade in
|
||||||
|
- [ ] Fix screenshots (screenshot region's border shows up in the screenshot, hyprshot jq error?)
|
||||||
|
- [ ] Hyprlock themes (repo hyprlock-styles on github)
|
||||||
|
|
||||||
- [ ] Nixvim
|
- [ ] Nixvim
|
||||||
- [ ] Keymaps:
|
- [ ] Keymaps:
|
||||||
- Trouble
|
- Trouble
|
||||||
- Tagbar (actually not working)
|
- Tagbar (actually not working)
|
||||||
|
- [ ] Disable background color for headlines.nvim for titles
|
||||||
- [ ] Change my keyboard backlight
|
|
||||||
- Issue on nixos-hardware ig
|
|
||||||
|
|
||||||
- [ ] Update docs
|
|
||||||
|
|
||||||
## Server
|
## Server
|
||||||
|
|
||||||
@@ -30,4 +32,3 @@ feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md))
|
|||||||
- Take a look into buildarr or build a custom solution with *arr apis
|
- Take a look into buildarr or build a custom solution with *arr apis
|
||||||
- [ ] Bitcoin-git: broken
|
- [ ] Bitcoin-git: broken
|
||||||
- [ ] Secrets mode 0444: not secure
|
- [ ] Secrets mode 0444: not secure
|
||||||
- [ ] Adguard config
|
|
||||||
|
|||||||
@@ -8,34 +8,22 @@ It's a simple way to manage your system configuration and dotfiles.
|
|||||||
|
|
||||||
## Gallery
|
## Gallery
|
||||||
|
|
||||||

|

|
||||||

|

|
||||||

|

|
||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
|
|
||||||
### 🏠 `home`
|
- 🏠 `home` are the dotfiles and configuration files for the users
|
||||||
|
- 'programs' is a collection of apps configured with home-manager
|
||||||
Those are the dotfiles and configuration files for user-level configuration
|
- 'scripts' is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
|
||||||
|
- 'system' is some "desktop environment" configuration
|
||||||
**Subfolders:**
|
- 'wallpapers' are... wallpapers
|
||||||
|
- 💻 `hosts` are the system configuration files
|
||||||
- `programs` is a collection of apps configured with home-manager
|
- 'laptop' is my configuration for my laptop with Nvidia that you can copy
|
||||||
- `scripts` is a folder full of bash scripts (see [SCRIPTS.md](docs/SCRIPTS.md))
|
- 'server' is for my homeserver (w/nextcloud, nginx, vaultwarden, ... look `hosts/server`)
|
||||||
- `system` is some "desktop environment" configuration
|
- 'themes' contains all the *themes* available *(see [THEMES.md](docs/THEMES.md))*
|
||||||
- `wallpapers` are... wallpapers
|
- 'modules' are some nix modules that you can import (Nvidia, prime, fonts, ...)
|
||||||
|
|
||||||
### 💻 `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.
|
|
||||||
|
|
||||||
**Subfolders:**
|
|
||||||
|
|
||||||
- 🎨 `themes` are the themes available *(see [THEMES.md](docs/THEMES.md))*
|
|
||||||
- 📦 `modules` are the nix modules that you can import
|
|
||||||
- `laptop` is my configuration for my laptop with Nvidia that you can copy
|
|
||||||
- `server` is for my homeserver (w/nextcloud, nginx, vaultwarden, ...)
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 566 KiB |
|
Before Width: | Height: | Size: 811 KiB |
@@ -0,0 +1 @@
|
|||||||
|
62b52ad02a886c19a8cfe1ea17e8aaad50f23632
|
||||||
@@ -1,24 +1,5 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"ags": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_3",
|
|
||||||
"systems": "systems_3"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1721306136,
|
|
||||||
"narHash": "sha256-VKPsIGf3/a+RONBipx4lEE4LXG2sdMNkWQu22LNQItg=",
|
|
||||||
"owner": "Aylur",
|
|
||||||
"repo": "ags",
|
|
||||||
"rev": "344ea72cd3b8d4911f362fec34bce7d8fb37028c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "Aylur",
|
|
||||||
"repo": "ags",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"apple-fonts": {
|
"apple-fonts": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
@@ -63,11 +44,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725016199,
|
"lastModified": 1724273991,
|
||||||
"narHash": "sha256-2TMk7F2a27ZtOUW/bftkDyZKp3OQ71E5XnfKSUT8HZQ=",
|
"narHash": "sha256-+aUSOXKGpS5CRm1oTitgNAr05ThQNbKIXalZHl3nC6Y=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "cff00196f0fcf734a2bf164eb0dfdb6e58c5c906",
|
"rev": "9a3161ad4c78dc420d1cbb3aae638222608c7de4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -168,7 +149,7 @@
|
|||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_4"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1710146030,
|
||||||
@@ -201,11 +182,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724857454,
|
"lastModified": 1724440431,
|
||||||
"narHash": "sha256-Qyl9Q4QMTLZnnBb/8OuQ9LSkzWjBU1T5l5zIzTxkkhk=",
|
"narHash": "sha256-9etXEOUtzeMgqg1u0wp+EdwG7RpmrAZ2yX516bMj2aE=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "4509ca64f1084e73bc7a721b20c669a8d4c5ebe6",
|
"rev": "c8a54057aae480c56e28ef3e14e4960628ac495b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -318,11 +299,11 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725019943,
|
"lastModified": 1724784150,
|
||||||
"narHash": "sha256-tAGs6TpIYkRUWjU0WYAavzHCPy4XLLMn63caFF7OCNc=",
|
"narHash": "sha256-XlmFLoLppuKxSh2eGPXy27+tNIQ+w+cXoh8Ln3vBJew=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "25e72949a1cc2368425ed81712a394cb277f514f",
|
"rev": "17ed4fc04cedbaad365bdebf6bfe0160c527f3fe",
|
||||||
"revCount": 5160,
|
"revCount": 5147,
|
||||||
"submodules": true,
|
"submodules": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/hyprwm/Hyprland"
|
"url": "https://github.com/hyprwm/Hyprland"
|
||||||
@@ -419,25 +400,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"hyprpanel": {
|
|
||||||
"inputs": {
|
|
||||||
"ags": "ags",
|
|
||||||
"nixpkgs": "nixpkgs_4"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1725006826,
|
|
||||||
"narHash": "sha256-DO9Sxg+HP7Iy/TguZtjwXRjlH35liWXEuG17ilcJejI=",
|
|
||||||
"owner": "Jas-SinghFSU",
|
|
||||||
"repo": "HyprPanel",
|
|
||||||
"rev": "4bd5c3ed30ae643ac1dee152f8b9332d0c5c3eb9",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "Jas-SinghFSU",
|
|
||||||
"repo": "HyprPanel",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"hyprutils": {
|
"hyprutils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -450,11 +412,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724966483,
|
"lastModified": 1722869141,
|
||||||
"narHash": "sha256-WXDgKIbzjYKczxSZOsJplCS1i1yrTUpsDPuJV/xpYLo=",
|
"narHash": "sha256-0KU4qhyMp441qfwbirNg3+wbm489KnEjXOz2I/RbeFs=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "8976e3f6a5357da953a09511d0c7f6a890fb6ec2",
|
"rev": "0252fd13e78e60fb0da512a212e56007515a49f7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -511,11 +473,11 @@
|
|||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724878143,
|
"lastModified": 1724575805,
|
||||||
"narHash": "sha256-UjpKo92iZ25M05kgSOw/Ti6VZwpgdlOa73zHj8OcaDk=",
|
"narHash": "sha256-OB/kEL3GAhUZmUfkbPfsPhKs0pRqJKs0EEBiLfyKZw8=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "95c3dfe6ef2e96ddc1ccdd7194e3cda02ca9a8ef",
|
"rev": "9fc19be21f0807d6be092d70bf0b1de0c00ac895",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -559,11 +521,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724819573,
|
"lastModified": 1724224976,
|
||||||
"narHash": "sha256-GnR7/ibgIH1vhoy8cYdmXE6iyZqKqFxQSVkFgosBh6w=",
|
"narHash": "sha256-Z/ELQhrSd7bMzTO8r7NZgi9g5emh+aRKoCdaAv5fiO0=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "71e91c409d1e654808b2621f28a327acfdad8dc2",
|
"rev": "c374d94f1536013ca8e92341b540eba4c22f9c62",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -575,43 +537,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718714799,
|
"lastModified": 1724479785,
|
||||||
"narHash": "sha256-FUZpz9rg3gL8NVPKbqU8ei1VkPLsTIfAJ2fdAf5qjak=",
|
"narHash": "sha256-pP3Azj5d6M5nmG68Fu4JqZmdGt4S4vqI5f8te+E/FTw=",
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "c00d587b1a1afbf200b1d8f0b0e4ba9deb1c7f0e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_4": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1722185531,
|
|
||||||
"narHash": "sha256-veKR07psFoJjINLC8RK4DiLniGGMgF3QMlS4tb74S6k=",
|
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "52ec9ac3b12395ad677e8b62106f0b98c1f8569d",
|
"rev": "d0e1602ddde669d5beb01aec49d71a51937ed7be",
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nixos",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_5": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1724819573,
|
|
||||||
"narHash": "sha256-GnR7/ibgIH1vhoy8cYdmXE6iyZqKqFxQSVkFgosBh6w=",
|
|
||||||
"owner": "nixos",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "71e91c409d1e654808b2621f28a327acfdad8dc2",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -636,11 +566,11 @@
|
|||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724968633,
|
"lastModified": 1724820329,
|
||||||
"narHash": "sha256-eb2NCdLwfXL1MuTAkoDncSl2lCJwyylV5/NM1Ws2P/U=",
|
"narHash": "sha256-jXaDebjRjcUgZcMNXkvA99s/tTUvZfLLJxLwf1e/qwE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"rev": "2704133fe3ca616b22ed6685cc67180456eb4160",
|
"rev": "70e9532ec290769e4d671747b0f65b1c29a3c14e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -689,9 +619,8 @@
|
|||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"hyprland-plugins": "hyprland-plugins",
|
"hyprland-plugins": "hyprland-plugins",
|
||||||
"hyprpanel": "hyprpanel",
|
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_3",
|
||||||
"nixvim": "nixvim",
|
"nixvim": "nixvim",
|
||||||
"sops-nix": "sops-nix",
|
"sops-nix": "sops-nix",
|
||||||
"spicetify-nix": "spicetify-nix"
|
"spicetify-nix": "spicetify-nix"
|
||||||
@@ -774,11 +703,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724991403,
|
"lastModified": 1724818600,
|
||||||
"narHash": "sha256-n0os3uymBUoGlikG87Yp7oisYGrkEwsm3nptS9FhdAk=",
|
"narHash": "sha256-7i8zqLTds2bXs6n/2ucSJdmKTzhajCktQ2WWFOVW3x0=",
|
||||||
"owner": "Gerg-L",
|
"owner": "Gerg-L",
|
||||||
"repo": "spicetify-nix",
|
"repo": "spicetify-nix",
|
||||||
"rev": "0965e58aa38245b2105fec2949a9463fe34e3f05",
|
"rev": "c8050c21e2e61efe0ac2d423eac9062c62bb6633",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -818,21 +747,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_3": {
|
"systems_3": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1689347949,
|
|
||||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_4": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
@@ -855,11 +769,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724833132,
|
"lastModified": 1724338379,
|
||||||
"narHash": "sha256-F4djBvyNRAXGusJiNYInqR6zIMI3rvlp6WiKwsRISos=",
|
"narHash": "sha256-kKJtaiU5Ou+e/0Qs7SICXF22DLx4V/WhG1P6+k4yeOE=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"rev": "3ffd842a5f50f435d3e603312eefa4790db46af5",
|
"rev": "070f834771efa715f3e74cd8ab93ecc96fabc951",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -30,18 +30,15 @@
|
|||||||
inputs.hyprland.follows = "hyprland";
|
inputs.hyprland.follows = "hyprland";
|
||||||
};
|
};
|
||||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||||
hyprpanel.url = "github:Jas-SinghFSU/HyprPanel";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ nixpkgs, ... }: {
|
outputs = inputs@{ nixpkgs, ... }: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
|
|
||||||
nixy = nixpkgs.lib.nixosSystem { # CHANGEME
|
nixy = nixpkgs.lib.nixosSystem { # CHANGEME
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
{
|
{ _module.args = { inherit inputs; }; }
|
||||||
nixpkgs.overlays = [ inputs.hyprpanel.overlay ];
|
|
||||||
_module.args = { inherit inputs; };
|
|
||||||
}
|
|
||||||
inputs.nixos-hardware.nixosModules.omen-16-n0005ne # CHANGEME
|
inputs.nixos-hardware.nixosModules.omen-16-n0005ne # CHANGEME
|
||||||
inputs.home-manager.nixosModules.home-manager
|
inputs.home-manager.nixosModules.home-manager
|
||||||
./hosts/laptop/configuration.nix # CHANGEME
|
./hosts/laptop/configuration.nix # CHANGEME
|
||||||
|
|||||||
@@ -0,0 +1,174 @@
|
|||||||
|
# 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
|
||||||
@@ -0,0 +1,361 @@
|
|||||||
|
# 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
|
||||||
@@ -0,0 +1,80 @@
|
|||||||
|
{ 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;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,13 +1,6 @@
|
|||||||
{ pkgs, config, ... }: {
|
{ pkgs, ... }: {
|
||||||
home.packages = with pkgs; [ ctags ];
|
home.packages = with pkgs; [ ctags ];
|
||||||
|
|
||||||
programs.nixvim = {
|
programs.nixvim = {
|
||||||
highlight = {
|
|
||||||
Headline.bg = "#${config.var.theme.colors.bgalt}";
|
|
||||||
Headline.bold = true;
|
|
||||||
Headline1.bg = "#${config.var.theme.colors.c0}";
|
|
||||||
Headline1.bold = true;
|
|
||||||
};
|
|
||||||
plugins = {
|
plugins = {
|
||||||
lualine.enable = true;
|
lualine.enable = true;
|
||||||
noice.enable = true;
|
noice.enable = true;
|
||||||
@@ -17,22 +10,17 @@
|
|||||||
};
|
};
|
||||||
bufferline.enable = true;
|
bufferline.enable = true;
|
||||||
trouble.enable = true;
|
trouble.enable = true;
|
||||||
indent-blankline.enable = true;
|
|
||||||
which-key.enable = true;
|
which-key.enable = true;
|
||||||
headlines = {
|
headlines = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
markdown = {
|
markdown = {
|
||||||
headline_highlights = [ "Headline1" "Headline" ];
|
codeblock_highlight = false;
|
||||||
fat_headlines = false;
|
|
||||||
bullets = [ "" "◉" "○" "✸" ];
|
|
||||||
dash_string = "";
|
|
||||||
codeblock_highlight = "Headline";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
nvim-colorizer.enable = true;
|
nvim-colorizer.enable = true;
|
||||||
tagbar.enable = true; # FIXME: Tagbar is not working
|
# tagbar.enable = true;
|
||||||
};
|
};
|
||||||
keymaps = [{
|
keymaps = [{
|
||||||
key = "<leader>t";
|
key = "<leader>t";
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
{ 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 ]; }
|
||||||
@@ -4,12 +4,16 @@ let
|
|||||||
increments = "5";
|
increments = "5";
|
||||||
|
|
||||||
brightness-change = pkgs.writeShellScriptBin "brightness-change" ''
|
brightness-change = pkgs.writeShellScriptBin "brightness-change" ''
|
||||||
[[ $1 == "up" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ''${2-${increments}}%+
|
sleep 0.05
|
||||||
[[ $1 == "down" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ''${2-${increments}}%-
|
|
||||||
'';
|
|
||||||
|
|
||||||
brightness-set = pkgs.writeShellScriptBin "brightness-set" ''
|
[[ $1 == "up" ]] && ${pkgs.brightnessctl}/bin/brightnessctl set ${increments}%+
|
||||||
${pkgs.brightnessctl}/bin/brightnessctl set ''${1-100}%
|
[[ $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-up = pkgs.writeShellScriptBin "brightness-up" ''
|
brightness-up = pkgs.writeShellScriptBin "brightness-up" ''
|
||||||
@@ -20,12 +24,4 @@ let
|
|||||||
brightness-change down ${increments}
|
brightness-change down ${increments}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
in {
|
in { home.packages = [ brightness-change brightness-up brightness-down ]; }
|
||||||
home.packages = [
|
|
||||||
pkgs.brightnessctl
|
|
||||||
brightness-change
|
|
||||||
brightness-up
|
|
||||||
brightness-down
|
|
||||||
brightness-set
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,25 +1,29 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
let
|
||||||
caffeine-status = pkgs.writeShellScriptBin "caffeine-status" ''
|
caffeine-status = pkgs.writeShellScriptBin "caffeine-status" ''
|
||||||
[[ $(pidof "hypridle") ]] && echo "0" || echo "1"
|
[[ -f /tmp/caffeine ]] && echo "1" || echo "0"
|
||||||
'';
|
|
||||||
|
|
||||||
caffeine-status-icon = pkgs.writeShellScriptBin "caffeine-status-icon" ''
|
|
||||||
[[ $(pidof "hypridle") ]] && echo "" || echo ""
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
caffeine = pkgs.writeShellScriptBin "caffeine" ''
|
caffeine = pkgs.writeShellScriptBin "caffeine" ''
|
||||||
if [[ $(pidof "hypridle") ]]; then
|
if [[ -f /tmp/caffeine ]]; then
|
||||||
pkill hypridle
|
rm /tmp/caffeine
|
||||||
title=" Caffeine Activated"
|
|
||||||
description="Caffeine is now active! Your screen will not turn off automatically."
|
|
||||||
else
|
|
||||||
${pkgs.hyprland}/bin/hyprctl dispatch exec ${pkgs.hypridle}/bin/hypridle
|
${pkgs.hyprland}/bin/hyprctl dispatch exec ${pkgs.hypridle}/bin/hypridle
|
||||||
title=" Caffeine Deactivated"
|
message=" Caffeine Deactivated"
|
||||||
description="Caffeine is now deactivated! Your screen will turn off automatically."
|
else
|
||||||
|
touch /tmp/caffeine
|
||||||
|
pkill hypridle
|
||||||
|
message=" Caffeine Activated"
|
||||||
fi
|
fi
|
||||||
|
notif "caffeine" "$message"
|
||||||
|
'';
|
||||||
|
|
||||||
notif "caffeine" "$title" "$description"
|
caffeine-status-icon = pkgs.writeShellScriptBin "caffeine-status-icon" ''
|
||||||
|
status=$(caffeine-status)
|
||||||
|
if [[ $status == "1" ]]; then
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
in { home.packages = [ caffeine-status caffeine caffeine-status-icon ]; }
|
in { home.packages = [ caffeine-status caffeine caffeine-status-icon ]; }
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
# 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 ]; }
|
||||||
@@ -6,8 +6,11 @@
|
|||||||
./caffeine
|
./caffeine
|
||||||
./night-shift
|
./night-shift
|
||||||
./screenshot
|
./screenshot
|
||||||
|
./startup
|
||||||
./nerdfont_fzf
|
./nerdfont_fzf
|
||||||
./notification
|
./notification
|
||||||
./system
|
./battery
|
||||||
|
./compress
|
||||||
|
./misc
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,15 +12,21 @@ let
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Copied to clipboard: $fzf_result"
|
echo "Copied to clipboard: $fzf_result"
|
||||||
${pkgs.wl-clipboard}/bin/wl-copy "$fzf_result" # wait for paste before exiting.. not cool
|
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" ''
|
nerdfont-fzf-fetch = pkgs.writeShellScriptBin "nerdfont-fzf-fetch" ''
|
||||||
wget "https://raw.githubusercontent.com/ryanoasis/nerd-fonts/master/glyphnames.json" -O "glyphnames.json" || exit 1
|
wget "https://raw.githubusercontent.com/ryanoasis/nerd-fonts/master/glyphnames.json" -O "glyphnames.json" || exit 1
|
||||||
jq 'del(.METADATA)' "glyphnames.json"
|
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 {
|
in {
|
||||||
home.packages = [ nerdfont-fzf nerdfont-fzf-fetch ];
|
home.packages = [ nerdfont-fzf nerdfont-fzf-fetch nerdfont-popup ];
|
||||||
|
|
||||||
xdg.configFile."nerdfont_glyphnames.json" = {
|
xdg.configFile."nerdfont_glyphnames.json" = {
|
||||||
source = ./nerdfont_glyphnames.json;
|
source = ./nerdfont_glyphnames.json;
|
||||||
|
|||||||
@@ -4,23 +4,19 @@ let
|
|||||||
default = "4000";
|
default = "4000";
|
||||||
|
|
||||||
night-shift-on = pkgs.writeShellScriptBin "night-shift-on" ''
|
night-shift-on = pkgs.writeShellScriptBin "night-shift-on" ''
|
||||||
${pkgs.hyprland}/bin/hyprctl dispatch exec "${pkgs.gammastep}/bin/gammastep -O ${default}"
|
${pkgs.hyprland}/bin/hyprctl dispatch exec "${pkgs.wlsunset}/bin/wlsunset -t ${default}"
|
||||||
title=" Night-Shift Activated"
|
message=" Night-Shift Activated"
|
||||||
description="Night-Shift is now activated! Your screen will be warmer and easier on the eyes."
|
notif "night-shift" "$message"
|
||||||
|
|
||||||
notif "night-shift" "$title" "$description"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
night-shift-off = pkgs.writeShellScriptBin "night-shift-off" ''
|
night-shift-off = pkgs.writeShellScriptBin "night-shift-off" ''
|
||||||
pkill gammastep
|
pkill wlsunset
|
||||||
title=" Night-Shift Deactivated"
|
message=" Night-Shift Deactivated"
|
||||||
description="Night-Shift is now deactivated! Your screen will return to normal."
|
notif "night-shift" "$message"
|
||||||
|
|
||||||
notif "night-shift" "$title" "$description"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
night-shift = pkgs.writeShellScriptBin "night-shift" ''
|
night-shift = pkgs.writeShellScriptBin "night-shift" ''
|
||||||
if pgrep gammastep; then
|
if pgrep wlsunset; then
|
||||||
night-shift-off
|
night-shift-off
|
||||||
else
|
else
|
||||||
night-shift-on
|
night-shift-on
|
||||||
@@ -28,7 +24,7 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
night-shift-status = pkgs.writeShellScriptBin "night-shift-status" ''
|
night-shift-status = pkgs.writeShellScriptBin "night-shift-status" ''
|
||||||
if [[ $(pgrep gammastep) ]]; then
|
if [[ $(pgrep wlsunset) ]]; then
|
||||||
echo "1"
|
echo "1"
|
||||||
else
|
else
|
||||||
echo "0"
|
echo "0"
|
||||||
@@ -37,7 +33,7 @@ let
|
|||||||
|
|
||||||
night-shift-status-icon =
|
night-shift-status-icon =
|
||||||
pkgs.writeShellScriptBin "night-shift-status-icon" ''
|
pkgs.writeShellScriptBin "night-shift-status-icon" ''
|
||||||
if [[ $(pgrep gammastep) ]]; then
|
if [[ $(pgrep wlsunset) ]]; then
|
||||||
echo ""
|
echo ""
|
||||||
else
|
else
|
||||||
echo ""
|
echo ""
|
||||||
@@ -45,7 +41,6 @@ let
|
|||||||
'';
|
'';
|
||||||
in {
|
in {
|
||||||
home.packages = [
|
home.packages = [
|
||||||
pkgs.gammastep
|
|
||||||
night-shift-on
|
night-shift-on
|
||||||
night-shift-off
|
night-shift-off
|
||||||
night-shift
|
night-shift
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
{ pkgs, config, ... }:
|
{ pkgs, config, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
nixy = pkgs.writeShellScriptBin "nixy" ''
|
nixy = pkgs.writeShellScriptBin "nixy" ''
|
||||||
function exec() {
|
function exec() {
|
||||||
$@
|
$@
|
||||||
|
|||||||
@@ -1,26 +1,27 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
let
|
||||||
notif = pkgs.writeShellScriptBin "notif" # bash
|
notif = pkgs.writeShellScriptBin "notif" ''
|
||||||
''
|
|
||||||
# Shell script to send custom notifications
|
# Shell script to send custom notifications
|
||||||
# Usage: notif "sender_id" "message" ["description"]
|
|
||||||
NOTIF_FOLDER="/tmp/notif"
|
NOTIF_FOLDER="/tmp/notif"
|
||||||
sender_id=$1 # To overwrite existing notifications
|
sender_id=$1 # To overwrite existing notifications
|
||||||
title=$2
|
message=$2
|
||||||
description=$3
|
extraargs=""
|
||||||
|
description=""
|
||||||
|
if [[ $3 == "extraargs="* ]]; then
|
||||||
|
extraargs=$(echo "$3" | sed 's/extraargs=//g')
|
||||||
|
else
|
||||||
|
description="$3"
|
||||||
|
extraargs="$4"
|
||||||
|
fi
|
||||||
|
|
||||||
[[ -d "$NOTIF_FOLDER" ]] || mkdir $NOTIF_FOLDER
|
[[ -d "$NOTIF_FOLDER" ]] || mkdir $NOTIF_FOLDER
|
||||||
[[ -f "$NOTIF_FOLDER/$sender_id" ]] || (echo "0" > "$NOTIF_FOLDER/$sender_id")
|
[[ -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 \
|
${pkgs.libnotify}/bin/notify-send "$message" \
|
||||||
--replace-id="$old_notification_id" --print-id \
|
$extraargs \
|
||||||
--app-name="$sender_id" \
|
--replace-id="$old_notification_id" --print-id > "$NOTIF_FOLDER/$sender_id"
|
||||||
"$title" \
|
|
||||||
"$description" \
|
|
||||||
> "$NOTIF_FOLDER/$sender_id"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
in { home.packages = [ pkgs.libnotify notif ]; }
|
in { home.packages = [ notif ]; }
|
||||||
|
|||||||
@@ -1,23 +1,38 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, config, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
homedir = config.home.homeDirectory;
|
||||||
increments = "5";
|
increments = "5";
|
||||||
|
|
||||||
sound-change = pkgs.writeShellScriptBin "sound-change" ''
|
sound-change = pkgs.writeShellScriptBin "sound-change" ''
|
||||||
|
sleep 0.05
|
||||||
|
|
||||||
[[ $1 == "mute" ]] && wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
[[ $1 == "mute" ]] && wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
[[ $1 == "up" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ ''${2-${increments}}%+
|
[[ $1 == "up" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ "$2%+"
|
||||||
[[ $1 == "down" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ ''${2-${increments}}%-
|
[[ $1 == "down" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ "$2%-"
|
||||||
[[ $1 == "set" ]] && wpctl set-volume @DEFAULT_AUDIO_SINK@ ''${2-100}%
|
|
||||||
|
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"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
sound-up = pkgs.writeShellScriptBin "sound-up" ''
|
sound-up = pkgs.writeShellScriptBin "sound-up" ''
|
||||||
sound-change up ${increments}
|
sound-change up ${increments}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
sound-set = pkgs.writeShellScriptBin "sound-set" ''
|
|
||||||
sound-change set ''${1-100}
|
|
||||||
'';
|
|
||||||
|
|
||||||
sound-down = pkgs.writeShellScriptBin "sound-down" ''
|
sound-down = pkgs.writeShellScriptBin "sound-down" ''
|
||||||
sound-change down ${increments}
|
sound-change down ${increments}
|
||||||
'';
|
'';
|
||||||
@@ -25,6 +40,47 @@ let
|
|||||||
sound-toggle = pkgs.writeShellScriptBin "sound-toggle" ''
|
sound-toggle = pkgs.writeShellScriptBin "sound-toggle" ''
|
||||||
sound-change mute
|
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 {
|
in {
|
||||||
home.packages = [ sound-change sound-up sound-down sound-toggle sound-set ];
|
home.packages =
|
||||||
|
[ sound-output sound-change sound-up sound-down sound-toggle ];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
# File runned at startup by Hyprland
|
||||||
|
{ pkgs, config, ... }:
|
||||||
|
let
|
||||||
|
startup = pkgs.writeShellScriptBin "startup" ''
|
||||||
|
# Startup is a script called by Hyprland on startup
|
||||||
|
# Because HM enabling services suck.
|
||||||
|
|
||||||
|
[[ ${toString config.var.sops} == "1" ]] && systemctl --user start sops-nix
|
||||||
|
|
||||||
|
battery-watch &
|
||||||
|
${pkgs.waybar}/bin/waybar &
|
||||||
|
|
||||||
|
|
||||||
|
wlr-randr --output "Unknown-1" --off # FIX: REMOVE WEIRD GHOST MONITOR
|
||||||
|
'';
|
||||||
|
|
||||||
|
in { home.packages = [ startup ]; }
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
{
|
|
||||||
services.batsignal = {
|
|
||||||
enable = true;
|
|
||||||
extraArgs = [ "-c 10" "-w 30" "-f 97" ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
let
|
|
||||||
|
|
||||||
clipboard-clear = pkgs.writeShellScriptBin "clipboard-clear" ''
|
|
||||||
clipman clear --all
|
|
||||||
'';
|
|
||||||
|
|
||||||
clipboard = pkgs.writeShellScriptBin "clipboard" ''
|
|
||||||
clipman pick --tool=wofi
|
|
||||||
'';
|
|
||||||
|
|
||||||
in {
|
|
||||||
wayland.windowManager.hyprland.settings.exec-once =
|
|
||||||
[ "${clipboard-clear}" "wl-paste -t text --watch clipman store" ];
|
|
||||||
home.packages = with pkgs; [ clipman clipboard clipboard-clear ];
|
|
||||||
services.clipman.enable = true;
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,83 @@
|
|||||||
|
{ config, pkgs, ... }: {
|
||||||
|
|
||||||
|
home.packages = with pkgs; [ libnotify ];
|
||||||
|
|
||||||
|
services.dunst = {
|
||||||
|
enable = true;
|
||||||
|
iconTheme = {
|
||||||
|
name = "Moka";
|
||||||
|
package = pkgs.moka-icon-theme;
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
global = {
|
||||||
|
rounded = "yes";
|
||||||
|
origin = "top-center";
|
||||||
|
monitor = "0";
|
||||||
|
alignment = "center";
|
||||||
|
vertical_alignment = "center";
|
||||||
|
width = "400";
|
||||||
|
height = "400";
|
||||||
|
scale = 0;
|
||||||
|
gap_size = 0;
|
||||||
|
progress_bar = true;
|
||||||
|
transparency = 0;
|
||||||
|
text_icon_padding = 0;
|
||||||
|
separator_color = "frame";
|
||||||
|
sort = "yes";
|
||||||
|
idle_threshold = 120;
|
||||||
|
line_height = 0;
|
||||||
|
markup = "full";
|
||||||
|
show_age_threshold = 60;
|
||||||
|
ellipsize = "middle";
|
||||||
|
ignore_newline = "no";
|
||||||
|
stack_duplicates = true;
|
||||||
|
sticky_history = "yes";
|
||||||
|
history_length = 20;
|
||||||
|
always_run_script = true;
|
||||||
|
corner_radius = config.var.theme.rounding;
|
||||||
|
follow = "mouse";
|
||||||
|
font = config.var.theme.font;
|
||||||
|
format = "<b>%s</b>\\n%b";
|
||||||
|
progress_bar_corner_radius = config.var.theme.rounding - 10;
|
||||||
|
#format = ''
|
||||||
|
# <span foreground='#${config.var.theme.colors.accent}'><b>%s %p</b></span>
|
||||||
|
# %b'';
|
||||||
|
frame_color = "#" + config.var.theme.colors.bg;
|
||||||
|
highlight = "#" + config.var.theme.colors.accent;
|
||||||
|
foreground = "#" + config.var.theme.colors.fg;
|
||||||
|
frame_width = 1;
|
||||||
|
offset = "0x10";
|
||||||
|
horizontal_padding = 10;
|
||||||
|
icon_position = "left";
|
||||||
|
indicate_hidden = "yes";
|
||||||
|
min_icon_size = 0;
|
||||||
|
max_icon_size = 64;
|
||||||
|
mouse_left_click = "do_action, close_current";
|
||||||
|
mouse_middle_click = "close_current";
|
||||||
|
mouse_right_click = "close_all";
|
||||||
|
padding = 10;
|
||||||
|
plain_text = "no";
|
||||||
|
separator_height = 2;
|
||||||
|
show_indicators = "yes";
|
||||||
|
shrink = "no";
|
||||||
|
word_wrap = "yes";
|
||||||
|
browser = "${pkgs.qutebrowser}/bin/qutebrowser";
|
||||||
|
};
|
||||||
|
|
||||||
|
fullscreen_delay_everything = { fullscreen = "delay"; };
|
||||||
|
|
||||||
|
urgency_critical = {
|
||||||
|
background = "#" + config.var.theme.colors.c1;
|
||||||
|
foreground = "#" + config.var.theme.colors.c0;
|
||||||
|
};
|
||||||
|
urgency_low = {
|
||||||
|
background = "#" + config.var.theme.colors.bgalt;
|
||||||
|
foreground = "#" + config.var.theme.colors.fgalt;
|
||||||
|
};
|
||||||
|
urgency_normal = {
|
||||||
|
background = "#" + config.var.theme.colors.bgalt;
|
||||||
|
foreground = "#" + config.var.theme.colors.fgalt;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,12 +1,7 @@
|
|||||||
{ pkgs, config, inputs, ... }: {
|
{ pkgs, config, inputs, ... }: {
|
||||||
|
|
||||||
imports = [
|
imports =
|
||||||
./hyprlock.nix
|
[ ./hyprlock/macos.nix ./hypridle.nix ./hyprpaper.nix ./hyprcursor.nix ];
|
||||||
./hypridle.nix
|
|
||||||
./hyprpaper.nix
|
|
||||||
./hyprcursor.nix
|
|
||||||
./hyprpanel.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
hyprshot
|
hyprshot
|
||||||
@@ -14,10 +9,14 @@
|
|||||||
swappy
|
swappy
|
||||||
imv
|
imv
|
||||||
wf-recorder
|
wf-recorder
|
||||||
|
xdg-desktop-portal-hyprland
|
||||||
wlr-randr
|
wlr-randr
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
brightnessctl
|
brightnessctl
|
||||||
gnome-themes-extra
|
gnome-themes-extra
|
||||||
|
wlsunset
|
||||||
|
xwayland
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
qt5ct
|
qt5ct
|
||||||
libva
|
libva
|
||||||
dconf
|
dconf
|
||||||
@@ -30,45 +29,30 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
|
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
|
||||||
# plugins = [ inputs.hyprland-plugins.packages.${pkgs.system}.hyprexpo ]; TODO: broken
|
# plugins = [ inputs.hyprland-plugins.packages.${pkgs.system}.hyprexpo ]; # TODO: Fix, stack overflow
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
"$mod" = "SUPER";
|
"$mod" = "SUPER";
|
||||||
"$shiftMod" = "SUPER_SHIFT";
|
"$shiftMod" = "SUPER_SHIFT";
|
||||||
|
|
||||||
exec-once = [
|
exec-once = [
|
||||||
|
"startup"
|
||||||
|
"${pkgs.hypridle}/bin/hypridle"
|
||||||
|
"${pkgs.hyprpaper}/bin/hyprpaper"
|
||||||
"${pkgs.bitwarden}/bin/bitwarden"
|
"${pkgs.bitwarden}/bin/bitwarden"
|
||||||
"[[ ${
|
|
||||||
toString config.var.sops
|
|
||||||
} == 1 ]] && systemctl --user start sops-nix"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
monitor = [ "eDP-2,highres,0x0,1" ",prefered,auto,1" ];
|
monitor = [ "eDP-2,highres,0x0,1" ",prefered,auto,1" ];
|
||||||
|
|
||||||
# plugin = {
|
|
||||||
# hyprexpo = {
|
|
||||||
# columns = 2;
|
|
||||||
# gap_size = 5;
|
|
||||||
# bg_col = "rgb(111111)";
|
|
||||||
# workspace_method =
|
|
||||||
# "center current"; # [center/first] [workspace] e.g. first 1 or center m+1
|
|
||||||
#
|
|
||||||
# enable_gesture = true; # laptop touchpad
|
|
||||||
# gesture_fingers = 3; # 3 or 4
|
|
||||||
# gesture_distance = 300; # how far is the "max"
|
|
||||||
# gesture_positive = true; # positive = swipe down. Negative = swipe up.
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
|
|
||||||
bind = [
|
bind = [
|
||||||
"$mod, RETURN, exec, ${pkgs.kitty}/bin/kitty" # Kitty
|
"$mod, RETURN, exec, ${pkgs.kitty}/bin/kitty" # Kitty
|
||||||
"$mod, E, exec, ${pkgs.xfce.thunar}/bin/thunar" # Thunar
|
"$mod, E, exec, ${pkgs.xfce.thunar}/bin/thunar" # Thunar
|
||||||
"$mod, B, exec, ${pkgs.qutebrowser}/bin/qutebrowser" # Qutebrowser
|
"$mod, B, exec, ${pkgs.qutebrowser}/bin/qutebrowser" # Qutebrowser
|
||||||
"$mod, K, exec, ${pkgs.bitwarden}/bin/bitwarden" # Bitwarden
|
"$mod, K, exec, ${pkgs.bitwarden}/bin/bitwarden" # Bitwarden
|
||||||
|
"$mod, C, exec, ${pkgs.kitty}/bin/kitty --class peaclock peaclock" # Peaclock
|
||||||
"$mod, L, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock
|
"$mod, L, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock
|
||||||
"$mod, X, exec, powermenu" # Powermenu
|
"$mod, X, exec, powermenu" # Powermenu
|
||||||
"$mod, SPACE, exec, menu" # Launcher
|
"$mod, SPACE, exec, menu" # Launcher
|
||||||
# "$shiftMod, SPACE, hyprexpo:expo, toggle" # HyprExpo
|
|
||||||
|
|
||||||
"$mod, Q, killactive," # Close window
|
"$mod, Q, killactive," # Close window
|
||||||
"$mod, T, togglefloating," # Toggle Floating
|
"$mod, T, togglefloating," # Toggle Floating
|
||||||
@@ -85,11 +69,10 @@
|
|||||||
"$shiftMod, PRINT, exec, screenshot region" # Screenshot region
|
"$shiftMod, PRINT, exec, screenshot region" # Screenshot region
|
||||||
"ALT, PRINT, exec, screenshot region swappy" # Screenshot region then edit
|
"ALT, PRINT, exec, screenshot region swappy" # Screenshot region then edit
|
||||||
|
|
||||||
"$shiftMod, S, exec, ${pkgs.qutebrowser}/bin/qutebrowser :open $(wofi --show dmenu -L 1 -p ' Search on internet')" # Search on internet with wofi
|
|
||||||
"$shiftMod, C, exec, clipboard" # Clipboard picker with wofi
|
|
||||||
"$shiftMod, E, exec, ${pkgs.wofi-emoji}/bin/wofi-emoji" # Emoji picker with wofi
|
|
||||||
"$mod, F2, exec, night-shift-off" # Turn off night shift
|
"$mod, F2, exec, night-shift-off" # Turn off night shift
|
||||||
"$mod, F3, exec, night-shift-on" # Turn on night shift
|
"$mod, F3, exec, night-shift-on" # Turn on night shift
|
||||||
|
|
||||||
|
"$mod, F5, exec, ${pkgs.kitty}/bin/kitty --class floating zsh -c sound-output" # Choose sound output
|
||||||
] ++ (builtins.concatLists (builtins.genList (i:
|
] ++ (builtins.concatLists (builtins.genList (i:
|
||||||
let ws = i + 1;
|
let ws = i + 1;
|
||||||
in [
|
in [
|
||||||
@@ -148,14 +131,12 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
decoration = {
|
decoration = {
|
||||||
active_opacity = config.var.theme.active-opacity;
|
|
||||||
inactive_opacity = config.var.theme.inactive-opacity;
|
|
||||||
rounding = config.var.theme.rounding;
|
rounding = config.var.theme.rounding;
|
||||||
drop_shadow = true;
|
drop_shadow = true;
|
||||||
shadow_range = 20;
|
shadow_range = 20;
|
||||||
shadow_render_power = 3;
|
shadow_render_power = 3;
|
||||||
"col.shadow" = "rgba(00000055)";
|
"col.shadow" = "rgba(00000055)";
|
||||||
blur = { enabled = if config.var.theme.blur then "true" else "false"; };
|
blur = { enabled = false; };
|
||||||
};
|
};
|
||||||
|
|
||||||
master = {
|
master = {
|
||||||
@@ -195,7 +176,13 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
windowrule = [ "animation popin,^(wlogout)$" ];
|
||||||
|
|
||||||
windowrulev2 = [
|
windowrulev2 = [
|
||||||
|
"float, class:peaclock"
|
||||||
|
"move 2% 78%, class:peaclock"
|
||||||
|
"size 30% 20%, class:peaclock"
|
||||||
|
|
||||||
"float, class:floating"
|
"float, class:floating"
|
||||||
"size 40% 40%, class:floating"
|
"size 40% 40%, class:floating"
|
||||||
"move 30% 30%, class:floating"
|
"move 30% 30%, class:floating"
|
||||||
|
|||||||
@@ -1,6 +1,4 @@
|
|||||||
{ pkgs, ... }: {
|
{ pkgs, ... }: {
|
||||||
# wayland.windowManager.hyprland.settings.exec-once =
|
|
||||||
# [ "${pkgs.hypridle}/bin/hypridle" ];
|
|
||||||
|
|
||||||
services.hypridle = {
|
services.hypridle = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@@ -0,0 +1,84 @@
|
|||||||
|
{ config, ... }: {
|
||||||
|
|
||||||
|
programs.hyprlock = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
general = {
|
||||||
|
disable_loading_bar = true;
|
||||||
|
grace = 5;
|
||||||
|
no_fade_in = true;
|
||||||
|
no_fade_out = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
background = {
|
||||||
|
monitor = "";
|
||||||
|
path = "$HOME/wallpapers/${config.var.theme.wallpaper}";
|
||||||
|
color = "rgb(${config.var.theme.colors.bg})";
|
||||||
|
|
||||||
|
blur_size = 4;
|
||||||
|
blur_passes = 3;
|
||||||
|
noise = 1.17e-2;
|
||||||
|
contrast = 1.3;
|
||||||
|
brightness = 0.8;
|
||||||
|
vibrancy = 0.21;
|
||||||
|
vibrancy_darkness = 0.0;
|
||||||
|
};
|
||||||
|
|
||||||
|
input-field = [{
|
||||||
|
monitor = "";
|
||||||
|
size = "250, 50";
|
||||||
|
outline_thickness = 3;
|
||||||
|
dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
|
||||||
|
dots_spacing = 0.64; # Scale of dots' absolute size, 0.0 - 1.0
|
||||||
|
dots_center = true;
|
||||||
|
outer_color = "rgb(${config.var.theme.colors.accent})";
|
||||||
|
inner_color = "rgb(${config.var.theme.colors.bg})";
|
||||||
|
font_color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
fade_on_empty = true;
|
||||||
|
placeholder_text =
|
||||||
|
"Password..."; # Text rendered in the input box when it's empty.
|
||||||
|
position = "0, 80";
|
||||||
|
halign = "center";
|
||||||
|
valign = "bottom";
|
||||||
|
}];
|
||||||
|
|
||||||
|
label = [
|
||||||
|
# Current time
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text =
|
||||||
|
''cmd[update:1000] echo "<b><big> $(date +"%H:%M:%S") </big></b>"'';
|
||||||
|
color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
font_size = 64;
|
||||||
|
font_family = config.var.theme.font;
|
||||||
|
position = "0, 16";
|
||||||
|
halign = "center";
|
||||||
|
valign = "center";
|
||||||
|
}
|
||||||
|
# User label
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = ''
|
||||||
|
Hey <span text_transform="capitalize" size="larger">$USER</span>'';
|
||||||
|
color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
font_size = config.var.theme.font-size;
|
||||||
|
font_family = config.var.theme.font;
|
||||||
|
position = "0, 0";
|
||||||
|
halign = "center";
|
||||||
|
valign = "center";
|
||||||
|
}
|
||||||
|
# Type to unlock
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "Type to unlock!";
|
||||||
|
color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
font_size = config.var.theme.font-size;
|
||||||
|
font_family = config.var.theme.font;
|
||||||
|
position = "0, 30";
|
||||||
|
halign = "center";
|
||||||
|
valign = "bottom";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,86 @@
|
|||||||
|
{ config, ... }: {
|
||||||
|
|
||||||
|
programs.hyprlock = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
general = {
|
||||||
|
disable_loading_bar = true;
|
||||||
|
grace = 5;
|
||||||
|
no_fade_in = true;
|
||||||
|
no_fade_out = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
background = {
|
||||||
|
monitor = "";
|
||||||
|
color = "rgb(${config.var.theme.colors.bg})";
|
||||||
|
};
|
||||||
|
|
||||||
|
input-field = [{
|
||||||
|
monitor = "";
|
||||||
|
size = "250, 50";
|
||||||
|
outline_thickness = 3;
|
||||||
|
dots_size = 0.2;
|
||||||
|
dots_spacing = 0.64;
|
||||||
|
dots_center = false;
|
||||||
|
outer_color = "rgb(${config.var.theme.colors.bg})";
|
||||||
|
inner_color = "rgb(${config.var.theme.colors.bg})";
|
||||||
|
font_color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
fade_on_empty = false;
|
||||||
|
placeholder_text = "";
|
||||||
|
position = "1190, -50";
|
||||||
|
halign = "left";
|
||||||
|
valign = "center";
|
||||||
|
}];
|
||||||
|
|
||||||
|
shape = [{
|
||||||
|
monitor = "";
|
||||||
|
size = "520, 200";
|
||||||
|
color = "rgb(${config.var.theme.colors.bg})";
|
||||||
|
rounding = "0";
|
||||||
|
border_size = "3";
|
||||||
|
border_color = "rgba(255, 255, 255, 1.0)";
|
||||||
|
rotate = "0";
|
||||||
|
xray = "false";
|
||||||
|
position = "0, 0";
|
||||||
|
halign = "center";
|
||||||
|
valign = "center";
|
||||||
|
}];
|
||||||
|
|
||||||
|
label = [
|
||||||
|
# Current time
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = ''cmd[update:900] echo "time: $(date +"%H:%M:%S")"'';
|
||||||
|
color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
font_size = config.var.theme.font-size;
|
||||||
|
font_family = config.var.theme.font-mono;
|
||||||
|
position = "1100, 50";
|
||||||
|
halign = "left";
|
||||||
|
valign = "center";
|
||||||
|
}
|
||||||
|
# Username
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "username: ${config.var.username}";
|
||||||
|
color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
font_size = config.var.theme.font-size;
|
||||||
|
font_family = config.var.theme.font-mono;
|
||||||
|
position = "1100, 0";
|
||||||
|
halign = "left";
|
||||||
|
valign = "center";
|
||||||
|
}
|
||||||
|
# Password
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "password: ";
|
||||||
|
color = "rgb(${config.var.theme.colors.fg})";
|
||||||
|
font_size = config.var.theme.font-size;
|
||||||
|
font_family = config.var.theme.font-mono;
|
||||||
|
position = "1100, -50";
|
||||||
|
halign = "left";
|
||||||
|
valign = "center";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,230 +0,0 @@
|
|||||||
{ pkgs, config, ... }: {
|
|
||||||
wayland.windowManager.hyprland.settings.exec-once =
|
|
||||||
[ "${pkgs.hyprpanel}/bin/hyprpanel" ];
|
|
||||||
|
|
||||||
home.packages = with pkgs; [ hyprpanel libnotify ];
|
|
||||||
|
|
||||||
home.file.".cache/ags/hyprpanel/options.json" = {
|
|
||||||
text = # json
|
|
||||||
''
|
|
||||||
{
|
|
||||||
"bar.layouts": {
|
|
||||||
"0": {
|
|
||||||
"left": [
|
|
||||||
"dashboard",
|
|
||||||
"workspaces",
|
|
||||||
"windowtitle"
|
|
||||||
],
|
|
||||||
"middle": [
|
|
||||||
"media"
|
|
||||||
],
|
|
||||||
"right": [
|
|
||||||
"systray",
|
|
||||||
"network",
|
|
||||||
"volume",
|
|
||||||
"bluetooth",
|
|
||||||
"battery",
|
|
||||||
"clock",
|
|
||||||
"notifications"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"left": [
|
|
||||||
"dashboard",
|
|
||||||
"workspaces",
|
|
||||||
"windowtitle"
|
|
||||||
],
|
|
||||||
"middle": [
|
|
||||||
"media"
|
|
||||||
],
|
|
||||||
"right": [
|
|
||||||
"systray",
|
|
||||||
"network",
|
|
||||||
"volume",
|
|
||||||
"bluetooth",
|
|
||||||
"battery",
|
|
||||||
"clock",
|
|
||||||
"notifications"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"2": {
|
|
||||||
"left": [
|
|
||||||
"dashboard",
|
|
||||||
"workspaces",
|
|
||||||
"windowtitle"
|
|
||||||
],
|
|
||||||
"middle": [
|
|
||||||
"media"
|
|
||||||
],
|
|
||||||
"right": [
|
|
||||||
"systray",
|
|
||||||
"network",
|
|
||||||
"volume",
|
|
||||||
"bluetooth",
|
|
||||||
"battery",
|
|
||||||
"clock",
|
|
||||||
"notifications"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"theme.font.name": "${config.var.theme.font}",
|
|
||||||
"theme.font.size": "${toString config.var.theme.bar.font-size}px",
|
|
||||||
"theme.bar.outer_spacing": "${
|
|
||||||
if config.var.theme.bar.floating
|
|
||||||
&& config.var.theme.bar.transparent then
|
|
||||||
"0"
|
|
||||||
else
|
|
||||||
"8"
|
|
||||||
}px",
|
|
||||||
"theme.bar.buttons.y_margins": "${
|
|
||||||
if config.var.theme.bar.floating
|
|
||||||
&& config.var.theme.bar.transparent then
|
|
||||||
"0"
|
|
||||||
else
|
|
||||||
"8"
|
|
||||||
}px",
|
|
||||||
"theme.bar.buttons.spacing": "0.3em",
|
|
||||||
"theme.bar.buttons.radius": "${
|
|
||||||
if config.var.theme.bar.transparent then
|
|
||||||
toString config.var.theme.rounding
|
|
||||||
else
|
|
||||||
toString (config.var.theme.rounding - 8)
|
|
||||||
}px",
|
|
||||||
"theme.bar.floating": ${
|
|
||||||
if config.var.theme.bar.floating then "true" else "false"
|
|
||||||
},
|
|
||||||
"theme.bar.buttons.padding_x": "0.8rem",
|
|
||||||
"theme.bar.buttons.padding_y": "0.4rem",
|
|
||||||
|
|
||||||
"theme.bar.buttons.workspaces.hover": "#${config.var.theme.colors.accentalt}",
|
|
||||||
"theme.bar.buttons.workspaces.active": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.buttons.workspaces.available": "#${config.var.theme.colors.bg}",
|
|
||||||
|
|
||||||
"theme.bar.margin_top": "1.0em",
|
|
||||||
"theme.bar.margin_sides": "${toString config.var.theme.gaps-out}px",
|
|
||||||
"theme.bar.margin_bottom": "0px",
|
|
||||||
"theme.bar.border_radius": "${toString config.var.theme.rounding}px",
|
|
||||||
|
|
||||||
"bar.launcher.icon": "",
|
|
||||||
"theme.bar.transparent": ${
|
|
||||||
if config.var.theme.bar.transparent then "true" else "false"
|
|
||||||
},
|
|
||||||
"bar.workspaces.show_numbered": false,
|
|
||||||
"bar.workspaces.workspaces": 5,
|
|
||||||
"bar.workspaces.monitorSpecific": true,
|
|
||||||
"bar.workspaces.hideUnoccupied": false,
|
|
||||||
"bar.windowtitle.label": true,
|
|
||||||
"bar.volume.label": false,
|
|
||||||
"bar.network.truncation_size": 7,
|
|
||||||
"bar.bluetooth.label": false,
|
|
||||||
"bar.clock.format": "%a %b %d %I:%M %p",
|
|
||||||
"bar.notifications.show_total": true,
|
|
||||||
"theme.notification.border_radius": "${
|
|
||||||
toString config.var.theme.rounding
|
|
||||||
}px",
|
|
||||||
"theme.osd.enable": true,
|
|
||||||
"theme.osd.orientation": "vertical",
|
|
||||||
"theme.osd.location": "left",
|
|
||||||
"theme.osd.radius": "${toString config.var.theme.rounding}px",
|
|
||||||
"theme.osd.margins": "0px 0px 0px 10px",
|
|
||||||
"theme.osd.muted_zero": true,
|
|
||||||
"menus.clock.weather.location": "${config.var.location}",
|
|
||||||
"menus.clock.weather.key": "myapikey",
|
|
||||||
"menus.clock.weather.unit": "metric",
|
|
||||||
"menus.dashboard.powermenu.avatar.image": "${config.var.homeDirectory}/.profile_picture.png",
|
|
||||||
"menus.dashboard.powermenu.confirmation": false,
|
|
||||||
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut1.icon": "",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut1.command": "qutebrowser",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut1.tooltip": "Qutebrowser",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut2.icon": "",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut2.command": "caffeine",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut2.tooltip": "Caffeine",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut3.icon": "",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut3.command": "night-shift",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut3.tooltip": "Night-shift",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut4.icon": "",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut4.command": "menu",
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut4.tooltip": "Search Apps",
|
|
||||||
"menus.dashboard.shortcuts.right.shortcut1.icon": "",
|
|
||||||
"menus.dashboard.shortcuts.right.shortcut1.command": "hyprpicker -a",
|
|
||||||
"menus.dashboard.shortcuts.right.shortcut1.tooltip": "Color Picker",
|
|
||||||
"menus.dashboard.shortcuts.right.shortcut3.icon": "",
|
|
||||||
"menus.dashboard.shortcuts.right.shortcut3.command": "screenshot region swappy",
|
|
||||||
"menus.dashboard.shortcuts.right.shortcut3.tooltip": "Screenshot",
|
|
||||||
|
|
||||||
"menus.dashboard.directories.left.directory1.label": " Downloads",
|
|
||||||
"menus.dashboard.directories.left.directory1.command": "bash -c \"thunar $HOME/Downloads/\"",
|
|
||||||
"menus.dashboard.directories.left.directory2.label": " Pictures",
|
|
||||||
"menus.dashboard.directories.left.directory2.command": "bash -c \"thunar $HOME/Pictures/\"",
|
|
||||||
"menus.dashboard.directories.left.directory3.label": " Documents",
|
|
||||||
"menus.dashboard.directories.left.directory3.command": "bash -c \"thunar $HOME/Documents/\"",
|
|
||||||
"menus.dashboard.directories.right.directory1.label": " Home",
|
|
||||||
"menus.dashboard.directories.right.directory1.command": "bash -c \"thunar $HOME/\"",
|
|
||||||
"menus.dashboard.directories.right.directory2.label": " Projects",
|
|
||||||
"menus.dashboard.directories.right.directory2.command": "bash -c \"thunar $HOME/dev/\"",
|
|
||||||
"menus.dashboard.directories.right.directory3.label": " Config",
|
|
||||||
"menus.dashboard.directories.right.directory3.command": "bash -c \"thunar $HOME/.config/\"",
|
|
||||||
|
|
||||||
"theme.bar.menus.monochrome": true,
|
|
||||||
"wallpaper.enable": false,
|
|
||||||
"theme.bar.menus.background": "#${config.var.theme.colors.bg}",
|
|
||||||
"theme.bar.menus.cards": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.menus.card_radius": "${
|
|
||||||
toString config.var.theme.rounding
|
|
||||||
}px",
|
|
||||||
"theme.bar.menus.label": "#${config.var.theme.colors.fg}",
|
|
||||||
"theme.bar.menus.text": "#${config.var.theme.colors.fg}",
|
|
||||||
"theme.bar.menus.border.size": "${
|
|
||||||
toString config.var.theme.border-size
|
|
||||||
}px",
|
|
||||||
"theme.bar.menus.border.color": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.border.radius": "${
|
|
||||||
toString config.var.theme.rounding
|
|
||||||
}px",
|
|
||||||
"theme.bar.menus.popover.text": "#${config.var.theme.colors.fg}",
|
|
||||||
"theme.bar.menus.popover.background": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.menus.listitems.active": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.icons.active": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.switch.enabled": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.check_radio_button.active": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.buttons.default": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.buttons.active": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.iconbuttons.active": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.progressbar.foreground": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.slider.primary": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.menus.tooltip.background": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.menus.tooltip.text": "#${config.var.theme.colors.fg}",
|
|
||||||
"theme.bar.menus.dropdownmenu.background": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.menus.dropdownmenu.text": "#${config.var.theme.colors.fg}",
|
|
||||||
"theme.bar.background": "#${config.var.theme.colors.bg}",
|
|
||||||
"theme.bar.buttons.style": "default",
|
|
||||||
"theme.bar.buttons.monochrome": true,
|
|
||||||
"theme.bar.buttons.text": "#${config.var.theme.colors.fg}",
|
|
||||||
"theme.bar.buttons.background": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.buttons.icon": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.buttons.notifications.background": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.buttons.hover": "#${config.var.theme.colors.bg}",
|
|
||||||
"theme.bar.buttons.notifications.hover": "#${config.var.theme.colors.bg}",
|
|
||||||
"theme.bar.buttons.notifications.total": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.bar.buttons.notifications.icon": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.notification.background": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.notification.actions.background": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.notification.actions.text": "#${config.var.theme.colors.fg}",
|
|
||||||
"theme.notification.label": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.notification.border": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.notification.text": "#${config.var.theme.colors.fgalt}",
|
|
||||||
"theme.notification.labelicon": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.osd.bar_color": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.osd.bar_overflow_color": "#${config.var.theme.colors.accentalt}",
|
|
||||||
"theme.osd.icon": "#${config.var.theme.colors.bg}",
|
|
||||||
"theme.osd.icon_container": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.osd.label": "#${config.var.theme.colors.accent}",
|
|
||||||
"theme.osd.bar_container": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.menus.menu.media.background.color": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.menus.menu.media.card.color": "#${config.var.theme.colors.bgalt}",
|
|
||||||
"theme.bar.menus.menu.media.card.tint": 90
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,7 +1,4 @@
|
|||||||
{ pkgs, config, ... }: {
|
{ config, ... }: {
|
||||||
# wayland.windowManager.hyprland.settings.exec-once =
|
|
||||||
# [ "${pkgs.hyprpaper}/bin/hyprpaper" ];
|
|
||||||
|
|
||||||
services.hyprpaper = {
|
services.hyprpaper = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|||||||
@@ -0,0 +1,125 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
|
||||||
|
imports = [ ./style.nix ];
|
||||||
|
|
||||||
|
home.packages = with pkgs; [ libnotify ];
|
||||||
|
|
||||||
|
services.swaync = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
positionX = "right";
|
||||||
|
positionY = "top";
|
||||||
|
|
||||||
|
control-center-margin-top = 15;
|
||||||
|
control-center-margin-bottom = 15;
|
||||||
|
control-center-margin-right = 15;
|
||||||
|
control-center-margin-left = 15;
|
||||||
|
|
||||||
|
notification-icon-size = 32;
|
||||||
|
notification-body-image-height = 50;
|
||||||
|
notification-body-image-width = 50;
|
||||||
|
|
||||||
|
timeout-low = 5;
|
||||||
|
timeout = 10;
|
||||||
|
timeout-critical = 0;
|
||||||
|
|
||||||
|
fit-to-screen = true;
|
||||||
|
control-center-width = 500;
|
||||||
|
notification-window-width = 400;
|
||||||
|
|
||||||
|
keyboard-shortcuts = true;
|
||||||
|
image-visibility = "when-available";
|
||||||
|
|
||||||
|
transition-time = 200;
|
||||||
|
hide-on-clear = false;
|
||||||
|
hide-on-action = true;
|
||||||
|
script-fail-notify = true;
|
||||||
|
|
||||||
|
widgets = [
|
||||||
|
"menubar"
|
||||||
|
"title"
|
||||||
|
"buttons-grid"
|
||||||
|
"mpris"
|
||||||
|
"volume"
|
||||||
|
"backlight"
|
||||||
|
"dnd"
|
||||||
|
"notifications"
|
||||||
|
];
|
||||||
|
|
||||||
|
widget-config = {
|
||||||
|
title = {
|
||||||
|
text = "Notification Center";
|
||||||
|
clear-all-button = true;
|
||||||
|
button-text = " Clear All";
|
||||||
|
};
|
||||||
|
dnd = { text = "Do Not Disturb"; };
|
||||||
|
mpris = {
|
||||||
|
image-size = 96;
|
||||||
|
image-radius = 7;
|
||||||
|
};
|
||||||
|
volume = { label = ""; };
|
||||||
|
backlight = {
|
||||||
|
label = "";
|
||||||
|
subsystem = "backlight";
|
||||||
|
device = "nvidia_0";
|
||||||
|
};
|
||||||
|
menubar = {
|
||||||
|
"menu#power-buttons" = {
|
||||||
|
label = "";
|
||||||
|
position = "right";
|
||||||
|
actions = [
|
||||||
|
{
|
||||||
|
label = "";
|
||||||
|
command = "systemctl poweroff";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
label = "";
|
||||||
|
command = "systemctl reboot";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
label = "";
|
||||||
|
command = "systemctl suspend";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "";
|
||||||
|
"command" = "${pkgs.hyprlock}/bin/hyprlock";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "";
|
||||||
|
"command" = "${pkgs.hyprland}/bin/hyprctl dispatch exit";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"buttons-grid" = {
|
||||||
|
"actions" = [
|
||||||
|
{
|
||||||
|
"label" = "";
|
||||||
|
"command" =
|
||||||
|
"${pkgs.pulseaudio}/bin/pactl set-sink-mute @DEFAULT_SINK@ toggle";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "";
|
||||||
|
"command" =
|
||||||
|
"${pkgs.pulseaudio}/bin/pactl set-source-mute @DEFAULT_SOURCE@ toggle";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "";
|
||||||
|
"command" = "${pkgs.blueman}/bin/blueman-manager";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "";
|
||||||
|
"command" =
|
||||||
|
"${pkgs.grimblast}/bin/grimblast --notify --freeze --wait 1 copysave area ~/Pictures/$(date +%Y-%m-%dT%H%M%S).png";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "";
|
||||||
|
"command" = "${pkgs.kooha}/bin/kooha";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,315 @@
|
|||||||
|
{ config, ... }: {
|
||||||
|
|
||||||
|
xdg.configFile."swaync/style.css" = {
|
||||||
|
text = ''
|
||||||
|
@define-color notif-bg #${config.var.theme.colors.bgalt};
|
||||||
|
@define-color notif-fg #${config.var.theme.colors.fgalt};
|
||||||
|
@define-color cc-bg #${config.var.theme.colors.bg};
|
||||||
|
@define-color cc-fg #${config.var.theme.colors.fg};
|
||||||
|
@define-color red #${config.var.theme.colors.c1};
|
||||||
|
|
||||||
|
* {
|
||||||
|
font-family: "${config.var.theme.font}";
|
||||||
|
color: #${config.var.theme.colors.fg};
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-row {
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-row:focus,
|
||||||
|
.notification-row:hover {
|
||||||
|
background: @notif-bg;
|
||||||
|
opacity: 0.8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification {
|
||||||
|
border-radius: ${toString config.var.theme.rounding}px;
|
||||||
|
margin: 6px 12px;
|
||||||
|
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3), 0 1px 3px 1px rgba(0, 0, 0, 0.7),
|
||||||
|
0 2px 6px 2px rgba(0, 0, 0, 0.3);
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-content {
|
||||||
|
background: transparent;
|
||||||
|
padding: 6px;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.close-button {
|
||||||
|
background: @cc-bg;
|
||||||
|
color: @cc-fg;
|
||||||
|
text-shadow: none;
|
||||||
|
padding: 0;
|
||||||
|
border-radius: 100%;
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-right: 16px;
|
||||||
|
box-shadow: none;
|
||||||
|
border: none;
|
||||||
|
min-width: 24px;
|
||||||
|
min-height: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.close-button:hover {
|
||||||
|
box-shadow: none;
|
||||||
|
background: @red;
|
||||||
|
transition: all 0.15s ease-in-out;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-default-action,
|
||||||
|
.notification-action {
|
||||||
|
padding: 4px;
|
||||||
|
margin: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
background: @cc-bg;
|
||||||
|
color: @cc-fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-default-action:hover,
|
||||||
|
.notification-action:hover {
|
||||||
|
-gtk-icon-effect: none;
|
||||||
|
background: @noti-bg-hover;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-default-action {
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* When alternative actions are visible */
|
||||||
|
.notification-default-action:not(:only-child) {
|
||||||
|
border-bottom-left-radius: 0px;
|
||||||
|
border-bottom-right-radius: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-action {
|
||||||
|
border-radius: 0px;
|
||||||
|
border-top: none;
|
||||||
|
border-right: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* add bottom border radius to eliminate clipping */
|
||||||
|
.notification-action:first-child {
|
||||||
|
border-bottom-left-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-action:last-child {
|
||||||
|
border-bottom-right-radius: 10px;
|
||||||
|
border-right: 1px solid @noti-border-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image {}
|
||||||
|
|
||||||
|
.body-image {
|
||||||
|
margin-top: 6px;
|
||||||
|
background-color: white;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.summary {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
background: transparent;
|
||||||
|
color: white;
|
||||||
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.time {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
background: transparent;
|
||||||
|
color: white;
|
||||||
|
text-shadow: none;
|
||||||
|
margin-right: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.body {
|
||||||
|
font-size: 15px;
|
||||||
|
font-weight: normal;
|
||||||
|
background: transparent;
|
||||||
|
color: white;
|
||||||
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The "Notifications" and "Do Not Disturb" text widget */
|
||||||
|
.top-action-title {
|
||||||
|
color: white;
|
||||||
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-center {
|
||||||
|
background-color: @cc-bg;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-center-list {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.floating-notifications {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Window behind control center and on all other monitors */
|
||||||
|
.blank-window {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*** Widgets ***/
|
||||||
|
|
||||||
|
/* Title widget */
|
||||||
|
.widget-title {
|
||||||
|
margin: 8px;
|
||||||
|
font-size: 1.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title>button {
|
||||||
|
font-size: initial;
|
||||||
|
color: white;
|
||||||
|
text-shadow: none;
|
||||||
|
background: @noti-bg;
|
||||||
|
border: 1px solid @noti-border-color;
|
||||||
|
box-shadow: none;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-title>button:hover {
|
||||||
|
background: @noti-bg-hover;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* DND widget */
|
||||||
|
.widget-dnd {
|
||||||
|
margin: 8px;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-dnd>switch {
|
||||||
|
font-size: initial;
|
||||||
|
border-radius: 12px;
|
||||||
|
background: @noti-bg;
|
||||||
|
border: 1px solid @noti-border-color;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-dnd>switch:checked {
|
||||||
|
background: @bg-selected;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-dnd>switch slider {
|
||||||
|
background: @noti-bg-hover;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Label widget */
|
||||||
|
.widget-label {
|
||||||
|
margin: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-label>label {
|
||||||
|
font-size: 1.1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Mpris widget */
|
||||||
|
.widget-mpris {
|
||||||
|
/* The parent to all players */
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-mpris-player {
|
||||||
|
padding: 8px;
|
||||||
|
margin: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-mpris-title {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-mpris-subtitle {
|
||||||
|
font-size: 1.1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Volume and Brightness Widget*/
|
||||||
|
|
||||||
|
.widget-volume {
|
||||||
|
background-color: @noti-bg;
|
||||||
|
padding: 4px 8px 8px 8px;
|
||||||
|
margin: 0px 8px 8px 8px;
|
||||||
|
border-bottom-left-radius: 12px;
|
||||||
|
border-bottom-right-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-backlight {
|
||||||
|
background-color: @noti-bg;
|
||||||
|
padding: 8px 8px 4px 8px;
|
||||||
|
margin: 8px 8px 0px 8px;
|
||||||
|
border-top-left-radius: 12px;
|
||||||
|
border-top-right-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.KB {
|
||||||
|
padding: 4px 8px 4px 8px;
|
||||||
|
margin: 0px 8px 0px 8px;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.power-buttons{
|
||||||
|
background-color: @noti-bg;
|
||||||
|
padding: 8px;
|
||||||
|
margin: 8px;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.power-buttons>button {
|
||||||
|
background: transparent;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.power-buttons>button:hover {
|
||||||
|
background: @noti-bg-hover;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-menubar>box>.menu-button-bar>button{
|
||||||
|
border: none;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.topbar-buttons>button{
|
||||||
|
border: none;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-buttons-grid{
|
||||||
|
padding: 8px;
|
||||||
|
margin: 8px;
|
||||||
|
border-radius: 12px;
|
||||||
|
background-color: @noti-bg;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-buttons-grid>flowbox>flowboxchild>button{
|
||||||
|
background: @noti-bg;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.widget-buttons-grid>flowbox>flowboxchild>button:hover {
|
||||||
|
background: @noti-bg-hover;
|
||||||
|
}
|
||||||
|
|
||||||
|
.powermode-buttons{
|
||||||
|
background-color: @noti-bg;
|
||||||
|
padding: 8px;
|
||||||
|
margin: 8px;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.powermode-buttons>button {
|
||||||
|
background: transparent;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.powermode-buttons>button:hover {
|
||||||
|
background: @noti-bg-hover;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,337 @@
|
|||||||
|
{ config, ... }: {
|
||||||
|
services = {
|
||||||
|
blueman-applet.enable = true;
|
||||||
|
network-manager-applet.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
mainBar = {
|
||||||
|
layer = config.var.theme.waybar.position;
|
||||||
|
position = config.var.theme.waybar.position;
|
||||||
|
spacing = 0;
|
||||||
|
"margin-top" = if config.var.theme.waybar.float
|
||||||
|
&& config.var.theme.waybar.position == "top" then
|
||||||
|
config.var.theme.gaps-out
|
||||||
|
else
|
||||||
|
0;
|
||||||
|
"margin-bottom" = if config.var.theme.waybar.float
|
||||||
|
&& config.var.theme.waybar.position == "bottom" then
|
||||||
|
config.var.theme.gaps-out
|
||||||
|
else
|
||||||
|
0;
|
||||||
|
"margin-left" = if config.var.theme.waybar.float then
|
||||||
|
config.var.theme.gaps-out
|
||||||
|
else
|
||||||
|
0;
|
||||||
|
"margin-right" = if config.var.theme.waybar.float then
|
||||||
|
config.var.theme.gaps-out
|
||||||
|
else
|
||||||
|
0;
|
||||||
|
height = 44;
|
||||||
|
modules-left = [ "custom/logo" "hyprland/window" ];
|
||||||
|
modules-center = [ "hyprland/workspaces" ];
|
||||||
|
modules-right = [
|
||||||
|
"tray"
|
||||||
|
# "backlight"
|
||||||
|
# "pulseaudio"
|
||||||
|
"custom/caffeine"
|
||||||
|
"custom/night-shift"
|
||||||
|
"battery"
|
||||||
|
"clock"
|
||||||
|
"custom/notification"
|
||||||
|
"custom/power"
|
||||||
|
];
|
||||||
|
|
||||||
|
"wlr/taskbar" = {
|
||||||
|
format = "{icon}";
|
||||||
|
"on-click" = "activate";
|
||||||
|
"on-click-right" = "fullscreen";
|
||||||
|
|
||||||
|
"icon-size" = 25;
|
||||||
|
"tooltip-format" = "{title}";
|
||||||
|
};
|
||||||
|
"hyprland/window" = {
|
||||||
|
"format" = "{title:30}";
|
||||||
|
"max-length" = 30;
|
||||||
|
"separate-outputs" = true;
|
||||||
|
rewrite = {
|
||||||
|
"\\s*(.*)\\s+" = "$1"; # Remove trailing whitespace
|
||||||
|
# "\\s*" = # TODO FIXME
|
||||||
|
# "\${USER}@\${HOST}"; # Replace empty string with your username
|
||||||
|
".* - LibreWolf" = "LibreWolf";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"hyprland/workspaces" = {
|
||||||
|
"on-click" = "activate";
|
||||||
|
format = "{icon}";
|
||||||
|
"format-icons" = {
|
||||||
|
"default" = "";
|
||||||
|
"1" = "1";
|
||||||
|
"2" = "2";
|
||||||
|
"3" = "3";
|
||||||
|
"4" = "4";
|
||||||
|
"5" = "5";
|
||||||
|
"6" = "6";
|
||||||
|
"7" = "7";
|
||||||
|
"8" = "8";
|
||||||
|
"9" = "9";
|
||||||
|
"active" = "";
|
||||||
|
"urgent" = "";
|
||||||
|
};
|
||||||
|
"persistent-workspaces" = {
|
||||||
|
"1" = [ ];
|
||||||
|
"2" = [ ];
|
||||||
|
"3" = [ ];
|
||||||
|
"4" = [ ];
|
||||||
|
"5" = [ ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
tray = { spacing = 16; };
|
||||||
|
|
||||||
|
clock = {
|
||||||
|
"tooltip-format" = "<tt>{calendar}</tt>";
|
||||||
|
"format-alt" = " {:%a, %d %b %Y}";
|
||||||
|
format = " {:%I:%M %p}";
|
||||||
|
};
|
||||||
|
|
||||||
|
pulseaudio = {
|
||||||
|
format = "{icon}";
|
||||||
|
"format-bluetooth" = "";
|
||||||
|
nospacing = 1;
|
||||||
|
"tooltip-format" = "Volume : {volume}%";
|
||||||
|
"format-muted" = "";
|
||||||
|
"format-icons" = {
|
||||||
|
"headphone" = "";
|
||||||
|
"default" = [ "" "" "" ];
|
||||||
|
};
|
||||||
|
"on-click" = "sound-toggle";
|
||||||
|
"scroll-step" = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
"custom/logo" = {
|
||||||
|
format = " ";
|
||||||
|
tooltip = false;
|
||||||
|
on-click = "menu";
|
||||||
|
};
|
||||||
|
|
||||||
|
"custom/notification" = {
|
||||||
|
tooltip = false;
|
||||||
|
format = "{} {icon}";
|
||||||
|
"format-icons" = {
|
||||||
|
notification = "";
|
||||||
|
none = "";
|
||||||
|
"dnd-notification" = " ";
|
||||||
|
"dnd-none" = "";
|
||||||
|
"inhibited-notification" = " ";
|
||||||
|
"inhibited-none" = "";
|
||||||
|
"dnd-inhibited-notification" = " ";
|
||||||
|
"dnd-inhibited-none" = " ";
|
||||||
|
};
|
||||||
|
"return-type" = "json";
|
||||||
|
"exec-if" = "which swaync-client";
|
||||||
|
exec = "swaync-client -swb";
|
||||||
|
"on-click" = "sleep 0.1 && swaync-client -t -sw";
|
||||||
|
"on-click-right" = "sleep 0.1 && swaync-client -d -sw";
|
||||||
|
escape = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
battery = {
|
||||||
|
format = "{capacity}% {icon}";
|
||||||
|
"format-icons" = {
|
||||||
|
"charging" = [ "" "" "" "" "" "" "" "" "" "" ];
|
||||||
|
"default" = [ "" "" "" "" "" "" "" "" "" "" ];
|
||||||
|
};
|
||||||
|
"format-full" = " ";
|
||||||
|
interval = 10;
|
||||||
|
states = {
|
||||||
|
warning = 20;
|
||||||
|
critical = 10;
|
||||||
|
};
|
||||||
|
tooltip = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
"custom/power" = {
|
||||||
|
format = "";
|
||||||
|
tooltip = false;
|
||||||
|
on-click = "powermenu";
|
||||||
|
};
|
||||||
|
"custom/caffeine" = {
|
||||||
|
format = "{}";
|
||||||
|
max-length = 5;
|
||||||
|
interval = 10;
|
||||||
|
exec = "caffeine-status-icon";
|
||||||
|
"on-click" = "caffeine";
|
||||||
|
# exec-if = "pgrep spotify";
|
||||||
|
# return-type = "";
|
||||||
|
};
|
||||||
|
"custom/night-shift" = {
|
||||||
|
format = "{}";
|
||||||
|
max-length = 5;
|
||||||
|
interval = 10;
|
||||||
|
exec = "night-shift-status-icon";
|
||||||
|
"on-click" = "night-shift";
|
||||||
|
};
|
||||||
|
backlight = {
|
||||||
|
device = "nvidia_0";
|
||||||
|
format = "{icon}";
|
||||||
|
"format-icons" = [ " " " " "" "" "" "" "" "" "" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
style = ''
|
||||||
|
* {
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
min-height: 0;
|
||||||
|
font-family: "${config.var.theme.font}";
|
||||||
|
color: #${config.var.theme.colors.fg};
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: ${
|
||||||
|
if config.var.theme.waybar.transparent then
|
||||||
|
"rgba(0, 0, 0, 0)"
|
||||||
|
else
|
||||||
|
"#${config.var.theme.colors.bg}"
|
||||||
|
};
|
||||||
|
transition-property: background-color;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
border-radius: ${
|
||||||
|
if config.var.theme.waybar.float then
|
||||||
|
toString config.var.theme.rounding
|
||||||
|
else
|
||||||
|
"0"
|
||||||
|
}px;
|
||||||
|
font-size: ${toString config.var.theme.waybar.font-size}px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-left, .modules-center, .modules-right {
|
||||||
|
border-radius: ${
|
||||||
|
if config.var.theme.waybar.float then
|
||||||
|
toString config.var.theme.rounding
|
||||||
|
else
|
||||||
|
"0"
|
||||||
|
}px;
|
||||||
|
background-color: #${config.var.theme.colors.bg};
|
||||||
|
padding: 2px 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
all: initial; /* Remove GTK theme values (waybar #1351) */
|
||||||
|
min-width: 0; /* Fix weird spacing in materia (waybar #450) */
|
||||||
|
box-shadow: inset 0 -3px transparent; /* Use box-shadow instead of border so the text isn't offset */
|
||||||
|
padding: 6px 18px;
|
||||||
|
margin: 6px 3px;
|
||||||
|
border-radius: 4px;
|
||||||
|
background-color: #${config.var.theme.colors.bgalt};
|
||||||
|
color: #${config.var.theme.colors.fgalt};
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active {
|
||||||
|
color: #${config.var.theme.colors.accentFg};
|
||||||
|
background-color: #${config.var.theme.colors.accent};
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
box-shadow: inherit;
|
||||||
|
text-shadow: inherit;
|
||||||
|
opacity: 0.8;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
background-color: #${config.var.theme.colors.c1};
|
||||||
|
}
|
||||||
|
|
||||||
|
#window > * {
|
||||||
|
font-family: "${config.var.theme.font-mono}";
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory,
|
||||||
|
#custom-power,
|
||||||
|
#custom-notification,
|
||||||
|
#custom-caffeine,
|
||||||
|
#custom-night-shift,
|
||||||
|
#battery,
|
||||||
|
#backlight,
|
||||||
|
#pulseaudio,
|
||||||
|
#network,
|
||||||
|
#clock,
|
||||||
|
#tray,
|
||||||
|
#backlight{
|
||||||
|
border-radius: 9px;
|
||||||
|
margin: 6px 3px;
|
||||||
|
padding: 6px 12px;
|
||||||
|
background-color: #${config.var.theme.colors.bgalt};
|
||||||
|
color: #${config.var.theme.colors.fgalt};
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray menu {
|
||||||
|
background-color: #${config.var.theme.colors.bgalt};
|
||||||
|
color: #${config.var.theme.colors.fgalt};
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-logo {
|
||||||
|
padding-right: 7px;
|
||||||
|
font-size: ${toString config.var.theme.waybar.font-size}px;
|
||||||
|
color: #${config.var.theme.colors.accent};
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
background-color: #f38ba8;
|
||||||
|
color: #181825;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.warning,
|
||||||
|
#battery.critical,
|
||||||
|
#battery.urgent {
|
||||||
|
background-color: #ff0048;
|
||||||
|
color: #181825;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.5s;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging {
|
||||||
|
background-color: #${config.var.theme.colors.bgalt};
|
||||||
|
color: #${config.var.theme.colors.fgalt};
|
||||||
|
animation: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power {
|
||||||
|
background-color: #${config.var.theme.colors.accent};
|
||||||
|
color: #${config.var.theme.colors.accentFg};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
tooltip {
|
||||||
|
border-radius: 8px;
|
||||||
|
padding: 15px;
|
||||||
|
background-color: #${config.var.theme.colors.bgalt};
|
||||||
|
color: #${config.var.theme.colors.fgalt};
|
||||||
|
}
|
||||||
|
|
||||||
|
tooltip label {
|
||||||
|
padding: 5px;
|
||||||
|
background-color: #${config.var.theme.colors.bgalt};
|
||||||
|
color: #${config.var.theme.colors.fgalt};
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,6 +1,4 @@
|
|||||||
{ config, pkgs, ... }: {
|
{ config, ... }: {
|
||||||
|
|
||||||
home.packages = with pkgs; [ wofi-emoji ];
|
|
||||||
|
|
||||||
programs.wofi = {
|
programs.wofi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@@ -9,6 +9,9 @@
|
|||||||
statusbar-basename = true;
|
statusbar-basename = true;
|
||||||
render-loading = false;
|
render-loading = false;
|
||||||
scroll-step = 120;
|
scroll-step = 120;
|
||||||
|
|
||||||
|
# highlight-color = ");
|
||||||
|
# highlight-active-color = mkForce (rgba "base0D");
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 486 KiB |
|
Before Width: | Height: | Size: 928 KiB |
|
Before Width: | Height: | Size: 948 KiB |
|
Before Width: | Height: | Size: 739 KiB |
|
Before Width: | Height: | Size: 369 KiB |
|
Before Width: | Height: | Size: 641 KiB |
|
Before Width: | Height: | Size: 288 KiB |
|
Before Width: | Height: | Size: 511 KiB |
|
Before Width: | Height: | Size: 909 KiB |
@@ -16,9 +16,7 @@
|
|||||||
../modules/nix.nix
|
../modules/nix.nix
|
||||||
../modules/network-manager.nix
|
../modules/network-manager.nix
|
||||||
../modules/home-manager.nix
|
../modules/home-manager.nix
|
||||||
../modules/power-profiles.nix
|
|
||||||
../modules/utils.nix
|
../modules/utils.nix
|
||||||
../modules/gvfs.nix
|
|
||||||
|
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./variables.nix
|
./variables.nix
|
||||||
|
|||||||
@@ -4,30 +4,33 @@
|
|||||||
./variables.nix
|
./variables.nix
|
||||||
|
|
||||||
# Programs
|
# Programs
|
||||||
../../home/programs/kitty
|
|
||||||
../../home/programs/nvim
|
|
||||||
../../home/programs/qutebrowser
|
|
||||||
../../home/programs/shell
|
|
||||||
../../home/programs/fetch
|
|
||||||
../../home/programs/git
|
|
||||||
# ../../home/programs/spicetify TODO: broken
|
|
||||||
../../home/programs/btop
|
../../home/programs/btop
|
||||||
../../home/programs/cava
|
../../home/programs/cava
|
||||||
|
../../home/programs/kitty
|
||||||
../../home/programs/nextcloud
|
../../home/programs/nextcloud
|
||||||
|
../../home/programs/nvim
|
||||||
|
../../home/programs/qutebrowser
|
||||||
|
../../home/programs/spicetify
|
||||||
|
../../home/programs/shell
|
||||||
|
../../home/programs/fetch
|
||||||
|
../../home/programs/lf
|
||||||
|
../../home/programs/git
|
||||||
|
../../home/programs/yazi
|
||||||
|
|
||||||
# Scripts
|
# Scripts
|
||||||
../../home/scripts # All scripts
|
../../home/scripts # All scripts
|
||||||
|
|
||||||
# System (Desktop environment like stuff)
|
# System (Desktop environment like stuff)
|
||||||
../../home/system/hyprland
|
# ../../home/system/dunst
|
||||||
../../home/system/gtk
|
../../home/system/gtk
|
||||||
|
../../home/system/zathura
|
||||||
|
../../home/system/hyprland
|
||||||
|
../../home/system/waybar
|
||||||
../../home/system/wlogout
|
../../home/system/wlogout
|
||||||
../../home/system/wofi
|
../../home/system/wofi
|
||||||
../../home/system/batsignal
|
|
||||||
../../home/system/zathura
|
|
||||||
../../home/system/mime
|
../../home/system/mime
|
||||||
../../home/system/udiskie
|
../../home/system/udiskie
|
||||||
../../home/system/clipman
|
../../home/system/swaync
|
||||||
|
|
||||||
./secrets # You should probably remove this line
|
./secrets # You should probably remove this line
|
||||||
];
|
];
|
||||||
@@ -37,14 +40,19 @@
|
|||||||
inherit (config.var) homeDirectory;
|
inherit (config.var) homeDirectory;
|
||||||
|
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
# Apps
|
|
||||||
discord
|
discord
|
||||||
xfce.thunar
|
xfce.thunar
|
||||||
bitwarden
|
bitwarden
|
||||||
vlc
|
vlc
|
||||||
|
nextcloud-client
|
||||||
|
tailscale
|
||||||
|
wireguard-tools
|
||||||
|
|
||||||
# Dev
|
# Dev
|
||||||
|
wails
|
||||||
|
pkg-config
|
||||||
go
|
go
|
||||||
|
cargo
|
||||||
nodejs
|
nodejs
|
||||||
python3
|
python3
|
||||||
jq
|
jq
|
||||||
@@ -59,7 +67,6 @@
|
|||||||
optipng
|
optipng
|
||||||
pfetch
|
pfetch
|
||||||
pandoc
|
pandoc
|
||||||
tailscale
|
|
||||||
|
|
||||||
# Just cool
|
# Just cool
|
||||||
peaclock
|
peaclock
|
||||||
@@ -71,6 +78,7 @@
|
|||||||
vscode
|
vscode
|
||||||
firefox
|
firefox
|
||||||
neovide
|
neovide
|
||||||
|
brave
|
||||||
];
|
];
|
||||||
|
|
||||||
# Import wallpapers into $HOME/wallpapers
|
# Import wallpapers into $HOME/wallpapers
|
||||||
@@ -79,9 +87,6 @@
|
|||||||
source = ../../home/wallpapers;
|
source = ../../home/wallpapers;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Import my profile picture, used by the hyprpanel dashboard
|
|
||||||
file.".profile_picture.png" = { source = ./profile_picture.png; };
|
|
||||||
|
|
||||||
# Don't touch this
|
# Don't touch this
|
||||||
stateVersion = "24.05";
|
stateVersion = "24.05";
|
||||||
};
|
};
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 12 KiB |
@@ -9,7 +9,6 @@
|
|||||||
|
|
||||||
keyboardLayout = "fr";
|
keyboardLayout = "fr";
|
||||||
|
|
||||||
location = "Paris";
|
|
||||||
timeZone = "Europe/Paris";
|
timeZone = "Europe/Paris";
|
||||||
defaultLocale = "en_US.UTF-8";
|
defaultLocale = "en_US.UTF-8";
|
||||||
extraLocale = "fr_FR.UTF-8";
|
extraLocale = "fr_FR.UTF-8";
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{ services.gvfs.enable = true; }
|
|
||||||
@@ -1,4 +1,6 @@
|
|||||||
{ pkgs, ... }: {
|
{ pkgs, ... }: {
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
systemd.services.NetworkManager-wait-online.enable = false;
|
systemd.services.NetworkManager-wait-online.enable = false;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [ networkmanagerapplet ];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{ services.power-profiles-daemon.enable = true; }
|
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
# internal
|
# internal
|
||||||
./modules/internal/security.nix
|
./modules/internal/security.nix
|
||||||
./modules/internal/openssh.nix
|
./modules/internal/openssh.nix
|
||||||
# ./modules/internal/adguard.nix
|
# ./modules/internal/adguard.nix # TODO
|
||||||
# ./modules/internal/cockpit.nix
|
# ./modules/internal/cockpit.nix
|
||||||
|
|
||||||
# exposed
|
# exposed
|
||||||
|
|||||||
@@ -0,0 +1,52 @@
|
|||||||
|
{
|
||||||
|
wallpaper = "nix.png";
|
||||||
|
|
||||||
|
font = "SFProDisplay Nerd Font";
|
||||||
|
font-mono = "FiraCode Nerd Font Mono";
|
||||||
|
font-size = 13;
|
||||||
|
|
||||||
|
rounding = 11;
|
||||||
|
gaps-in = 15;
|
||||||
|
gaps-out = 15 * 2;
|
||||||
|
border-size = 5;
|
||||||
|
animation-speed = "medium"; # "fast" | "medium" | "slow"
|
||||||
|
fetch = "none"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
||||||
|
|
||||||
|
waybar = {
|
||||||
|
transparent = true;
|
||||||
|
float = true;
|
||||||
|
position = "top";
|
||||||
|
font-size = 15;
|
||||||
|
};
|
||||||
|
|
||||||
|
colors = {
|
||||||
|
c0 = "1e1e2e"; # black
|
||||||
|
c1 = "f38ba8"; # red
|
||||||
|
c2 = "a6e3a1"; # green
|
||||||
|
c3 = "fab387"; # yellow
|
||||||
|
c4 = "89b4fa"; # blue
|
||||||
|
c5 = "cba6f7"; # magenta
|
||||||
|
c6 = "74c7ec"; # cyan
|
||||||
|
c7 = "cdd6f4"; # white
|
||||||
|
c8 = "313244"; # bright black
|
||||||
|
c9 = "eba0ac"; # bright red
|
||||||
|
c10 = "94e2d5"; # bright green
|
||||||
|
c11 = "f9e2af"; # bright yellow
|
||||||
|
c12 = "b4befe"; # bright blue
|
||||||
|
c13 = "f5c2e7"; # bright magenta
|
||||||
|
c14 = "94e2d5"; # bright cyan
|
||||||
|
c15 = "bac2de"; # bright white
|
||||||
|
|
||||||
|
bg = "01010b";
|
||||||
|
fg = "cdd6f4";
|
||||||
|
bgalt = "181825";
|
||||||
|
fgalt = "bac2de";
|
||||||
|
|
||||||
|
accent = "89b4fa";
|
||||||
|
accentFg = "1e1e2e";
|
||||||
|
|
||||||
|
# Should make those automtic
|
||||||
|
accentName = "blue";
|
||||||
|
accentNumber = "4";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,52 @@
|
|||||||
|
{
|
||||||
|
wallpaper = "magma.png";
|
||||||
|
|
||||||
|
font = "SFProDisplay Nerd Font";
|
||||||
|
font-mono = "FiraCode Nerd Font Mono";
|
||||||
|
font-size = 14;
|
||||||
|
|
||||||
|
rounding = 8;
|
||||||
|
gaps-in = 8;
|
||||||
|
gaps-out = 8 * 2;
|
||||||
|
border-size = 2;
|
||||||
|
animation-speed = "slow"; # "fast" | "medium" | "slow"
|
||||||
|
fetch = "none"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
||||||
|
|
||||||
|
waybar = {
|
||||||
|
transparent = false;
|
||||||
|
float = false;
|
||||||
|
position = "bottom";
|
||||||
|
font-size = 16;
|
||||||
|
};
|
||||||
|
|
||||||
|
colors = {
|
||||||
|
c0 = "1e1e2e"; # black
|
||||||
|
c1 = "f38ba8"; # red
|
||||||
|
c2 = "a6e3a1"; # green
|
||||||
|
c3 = "fab387"; # yellow
|
||||||
|
c4 = "89b4fa"; # blue
|
||||||
|
c5 = "cba6f7"; # magenta
|
||||||
|
c6 = "74c7ec"; # cyan
|
||||||
|
c7 = "cdd6f4"; # white
|
||||||
|
c8 = "313244"; # bright black
|
||||||
|
c9 = "eba0ac"; # bright red
|
||||||
|
c10 = "94e2d5"; # bright green
|
||||||
|
c11 = "f9e2af"; # bright yellow
|
||||||
|
c12 = "b4befe"; # bright blue
|
||||||
|
c13 = "f5c2e7"; # bright magenta
|
||||||
|
c14 = "94e2d5"; # bright cyan
|
||||||
|
c15 = "bac2de"; # bright white
|
||||||
|
|
||||||
|
bg = "01010b";
|
||||||
|
fg = "cdd6f4";
|
||||||
|
bgalt = "181825";
|
||||||
|
fgalt = "bac2de";
|
||||||
|
|
||||||
|
accent = "f38ba8";
|
||||||
|
accentFg = "1e1e2e";
|
||||||
|
|
||||||
|
# Should make those automtic
|
||||||
|
accentName = "red";
|
||||||
|
accentNumber = "1";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
wallpaper = "nix.png";
|
wallpaper = "dark_cloud.png";
|
||||||
|
|
||||||
font = "SFProDisplay Nerd Font";
|
font = "SFProDisplay Nerd Font";
|
||||||
font-mono = "FiraCode Nerd Font Mono";
|
font-mono = "FiraCode Nerd Font Mono";
|
||||||
@@ -8,17 +8,15 @@
|
|||||||
rounding = 15;
|
rounding = 15;
|
||||||
gaps-in = 10;
|
gaps-in = 10;
|
||||||
gaps-out = 10 * 2;
|
gaps-out = 10 * 2;
|
||||||
active-opacity = 0.95;
|
|
||||||
inactive-opacity = 0.9;
|
|
||||||
blur = true;
|
|
||||||
border-size = 3;
|
border-size = 3;
|
||||||
animation-speed = "fast"; # "fast" | "medium" | "slow"
|
animation-speed = "fast"; # "fast" | "medium" | "slow"
|
||||||
fetch = "nerdfetch"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
fetch = "nerdfetch"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
||||||
|
|
||||||
bar = {
|
waybar = {
|
||||||
transparent = true;
|
transparent = true;
|
||||||
floating = true;
|
float = true;
|
||||||
font-size = 16;
|
position = "top";
|
||||||
|
font-size = 15;
|
||||||
};
|
};
|
||||||
|
|
||||||
colors = {
|
colors = {
|
||||||
@@ -46,7 +44,6 @@
|
|||||||
|
|
||||||
accent = "A594FD";
|
accent = "A594FD";
|
||||||
accentFg = "0B0B0B";
|
accentFg = "0B0B0B";
|
||||||
accentalt = "917FF0";
|
|
||||||
|
|
||||||
# Should make those automtic
|
# Should make those automtic
|
||||||
accentName = "magenta";
|
accentName = "magenta";
|
||||||
|
|||||||
@@ -1,23 +1,21 @@
|
|||||||
{
|
{
|
||||||
wallpaper = "moutains_black.png";
|
wallpaper = "windows.png";
|
||||||
|
|
||||||
font = "SFProDisplay Nerd Font";
|
font = "SFProDisplay Nerd Font";
|
||||||
font-mono = "FiraCode Nerd Font Mono";
|
font-mono = "FiraCode Nerd Font Mono";
|
||||||
font-size = 14;
|
font-size = 14;
|
||||||
|
|
||||||
rounding = 10;
|
rounding = 8;
|
||||||
gaps-in = 6;
|
gaps-in = 8;
|
||||||
gaps-out = 6 * 2;
|
gaps-out = 8 * 2;
|
||||||
active-opacity = 0.95;
|
border-size = 2;
|
||||||
inactive-opacity = 0.9;
|
animation-speed = "slow"; # "fast" | "medium" | "slow"
|
||||||
blur = true;
|
|
||||||
border-size = 1;
|
|
||||||
animation-speed = "medium"; # "fast" | "medium" | "slow"
|
|
||||||
fetch = "none"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
fetch = "none"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
||||||
|
|
||||||
bar = {
|
waybar = {
|
||||||
transparent = false;
|
transparent = false;
|
||||||
floating = false;
|
float = false;
|
||||||
|
position = "bottom";
|
||||||
font-size = 16;
|
font-size = 16;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -27,7 +25,7 @@
|
|||||||
c2 = "a6e3a1"; # green
|
c2 = "a6e3a1"; # green
|
||||||
c3 = "fab387"; # yellow
|
c3 = "fab387"; # yellow
|
||||||
c4 = "89b4fa"; # blue
|
c4 = "89b4fa"; # blue
|
||||||
c5 = "A594FD"; # magenta
|
c5 = "cba6f7"; # magenta
|
||||||
c6 = "74c7ec"; # cyan
|
c6 = "74c7ec"; # cyan
|
||||||
c7 = "cdd6f4"; # white
|
c7 = "cdd6f4"; # white
|
||||||
c8 = "313244"; # bright black
|
c8 = "313244"; # bright black
|
||||||
@@ -39,17 +37,16 @@
|
|||||||
c14 = "94e2d5"; # bright cyan
|
c14 = "94e2d5"; # bright cyan
|
||||||
c15 = "bac2de"; # bright white
|
c15 = "bac2de"; # bright white
|
||||||
|
|
||||||
bg = "0B0B1B";
|
bg = "01010b";
|
||||||
fg = "EAF0F5";
|
fg = "cdd6f4";
|
||||||
bgalt = "121222";
|
bgalt = "181825";
|
||||||
fgalt = "EAF0F5";
|
fgalt = "bac2de";
|
||||||
|
|
||||||
accent = "74c7ec";
|
accent = "89b4fa";
|
||||||
accentFg = "1E1E2E";
|
accentFg = "1e1e2e";
|
||||||
accentalt = "94e2d5";
|
|
||||||
|
|
||||||
# Should make those automtic
|
# Should make those automtic
|
||||||
accentName = "cyan";
|
accentName = "blue";
|
||||||
accentNumber = "6";
|
accentNumber = "4";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||