Compare commits
39 Commits
2be712393f
...
noctilia-e
| Author | SHA1 | Date | |
|---|---|---|---|
| e5b5d68808 | |||
| 80d7fc08cc | |||
| 8ccb9205bf | |||
| 51ad90dc9c | |||
| 248b2f1dbb | |||
| c258681d10 | |||
| 5314aba270 | |||
| 0f00938787 | |||
| 6cbbd0110d | |||
| 01cc53fff1 | |||
| 7501159100 | |||
| 727462ffd3 | |||
| 7446d8c239 | |||
| 085e02f539 | |||
| 9d9ed0f04b | |||
| 28daa28c6b | |||
| b8a7ead4be | |||
| 2881d84c16 | |||
| 591e42fe61 | |||
| f21640749a | |||
| 0b9623241a | |||
| 7a6e3916f5 | |||
| 43c657523e | |||
| 594accfe8d | |||
| 86c5e8ad5b | |||
| f7fe35b3be | |||
| 629e7b6a9e | |||
| 29c62adbd1 | |||
| 5747e449b2 | |||
| 087ffd4194 | |||
| 7a2382cb3c | |||
| be74b351e8 | |||
| 8d3fd7dbe2 | |||
| d80266e89a | |||
| 3f14984072 | |||
| ef49539fed | |||
| d951277cec | |||
| 196db56791 | |||
| 900b565405 |
34
GarandOS.svg
Normal file
34
GarandOS.svg
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<svg version="1.1" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<path d="M204.958 225.203L88.751 427.776L61.6218 381.485L92.9365 327.23L30.7418 327.069L17.485 303.936L31.0226 280.277L119.554 280.558L151.369 225.346L204.958 225.203ZM213.875 387.14L446.27 387.151L420.006 433.946L357.665 433.773L388.622 488.074L375.35 511.194L348.228 511.225L304.199 433.912L240.789 433.781L213.875 387.14ZM349.136 298.374L232.949 95.7897L286.345 95.2858L317.364 149.713L348.602 95.5781L375.134 95.5858L388.722 119.218L344.212 196.251L375.808 251.594L349.136 298.374Z" fill-rule="nonzero" transform="matrix(1, 0, 0, 1, 0, 0)" fill="#f87c0e" fill-opacity="1" stroke="#ffffff" stroke-width="0" stroke-linecap="butt" stroke-linejoin="round" opacity="1" id="Ścieżka" />
|
||||||
|
</g>
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<path d="M163.021 308.653L279.209 511.237L225.812 511.741L194.794 457.313L163.556 511.448L137.023 511.441L123.436 487.808L167.946 410.776L136.35 355.433L163.021 308.653ZM297.975 219.375L65.5804 219.364L91.8478 172.572L154.185 172.745L123.228 118.445L136.5 95.3242L163.625 95.2858L207.651 172.599L271.065 172.73L297.979 219.371L297.975 219.375ZM307.042 381.781L423.249 179.205L450.378 225.5L419.06 279.75L481.258 279.916L494.515 303.048L480.977 326.707L392.446 326.426L360.631 381.638L307.042 381.781Z" fill-rule="nonzero" transform="matrix(1, 0, 0, 1, 0, 0)" fill="#d31411" fill-opacity="1" stroke="#ffffff" stroke-width="0" stroke-linecap="butt" stroke-linejoin="round" opacity="1" id="Ścieżka" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<path d="M2450 3260C2088 3214 2045 3204 1575 3048L1180 2917L928 2604C701 2323 658 2256 500 1940L324 1589L214 935L261 647C302 397 315 355 354 329C379 313 421 286 447 269C493 240 499 243 629 364C827 548 853 562 898 503C996 373 2188 395 3060 543C3524 622 4487 845 4562 891C4572 897 4752 924 4963 950C5340 997 5415 1021 5377 1085C5375 1088 5394 1128 5418 1175C5481 1300 5446 1823 5362 2010C5332 2076 5276 2200 5239 2285C5144 2500 4859 2805 4595 2974C4143 3264 3340 3371 2450 3260Z" fill-rule="nonzero" transform="matrix(0.07236655, 0.03395807, 0.03395807, -0.07236655, 1.3727798, 172.38365)" fill="url(#radialGradient0)" stroke="#ffffff" stroke-width="0" stroke-linecap="butt" stroke-linejoin="round" opacity="1" id="Ścieżka" />
|
||||||
|
</g>
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<g opacity="1" id="sex">
|
||||||
|
<path d="M817.655 463.605C817.655 463.605 854.451 461.794 890.298 462.854C920.592 463.75 999.455 459.842 999.455 459.842C999.455 459.842 1003.91 465.764 998.44 470.501C991.48 476.524 965.783 477.134 965.783 477.134C965.783 477.134 887.398 481.385 847.948 482.786C831.474 483.371 827.044 484.107 827.044 484.107C749.409 511.416 382.407 556.101 132.027 514.61C89.434 507.552 75.311 501.175 75.311 501.175C75.311 501.175 69.701 498.783 67.055 497.251C61.505 494.037 59.627 487.436 55.064 485.302C97.102 484.629 200.019 503.974 231.976 506.06C434.227 519.263 787.431 470.57 817.655 463.605Z" fill-rule="nonzero" transform="matrix(0.36220634, 0.1296544, -0.1296544, 0.36220634, 124.92382, -19.742592)" fill="#66403a" fill-opacity="1" stroke="#ffffff" stroke-width="0" stroke-linecap="butt" stroke-linejoin="round" opacity="1" id="Ścieżka" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g opacity="1" id="Nowy folder">
|
||||||
|
<path d="M673.187 -57.558C673.187 -57.558 612.481 82.106 627.658 249.732C640.891 395.9 728.739 515.282 728.739 515.282C479.26 696.823 247.039 715.481 -25.318 512.668C-25.318 512.668 28.205 384.383 19.217 255.062C10.52 129.933 -83.313 -14.958 -83.313 -14.958C39.333 -197.304 437.51 -263.061 673.187 -57.558Z" fill-rule="nonzero" transform="matrix(0.10106731, 0.015680183, -0.017484369, 0.11269537, 243.86673, 125.96185)" fill="#d5a12b" fill-opacity="1" stroke="#ffffff" stroke-width="0" stroke-linecap="butt" stroke-linejoin="round" opacity="1" id="Ścieżka" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<radialGradient gradientTransform="matrix(-2850.1318, 2233.969, 2233.969, 2850.1318, 3820.5884, 481.4537)" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" id="radialGradient0">
|
||||||
|
<stop stop-color="#8b2928" offset="0%" stop-opacity="1" />
|
||||||
|
<stop stop-color="#842929" offset="54%" stop-opacity="1" />
|
||||||
|
<stop stop-color="#6d272e" offset="100%" stop-opacity="1" />
|
||||||
|
</radialGradient>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 4.4 KiB |
34
README.md
34
README.md
@@ -1,3 +1,7 @@
|
|||||||
|

|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
# **GarandOS**
|
# **GarandOS**
|
||||||
Disclaimer: This configuration is a fork of [ZaneyOS](https://gitlab.com/Zaney/zaneyos), a wonderful configuration I had the pleasure of ~~stealing~~ forking almost a year ago for my laptop (version 2.2). Now that I've installed NIxOS on my main computer, I've installed the latest version (2.4), connected my repository, and am customizing it to suit my needs. My configuration won't be synchronized with the main project, as it serves as the foundation upon which I'm building my custom system. The original has been stripped of many unnecessary features, so I highly recommend checking out the original project and, like me, adapting it to your needs. If you like my configuration, fork it too and manage it yourself, as the project won't accept external pull requests.
|
Disclaimer: This configuration is a fork of [ZaneyOS](https://gitlab.com/Zaney/zaneyos), a wonderful configuration I had the pleasure of ~~stealing~~ forking almost a year ago for my laptop (version 2.2). Now that I've installed NIxOS on my main computer, I've installed the latest version (2.4), connected my repository, and am customizing it to suit my needs. My configuration won't be synchronized with the main project, as it serves as the foundation upon which I'm building my custom system. The original has been stripped of many unnecessary features, so I highly recommend checking out the original project and, like me, adapting it to your needs. If you like my configuration, fork it too and manage it yourself, as the project won't accept external pull requests.
|
||||||
|
|
||||||
@@ -183,30 +187,42 @@ git add .
|
|||||||
- `profile` - graphics card profile, choose the one most suitable for your hardware.
|
- `profile` - graphics card profile, choose the one most suitable for your hardware.
|
||||||
- `gitUsername` and `gitEmail` - required for proper git usage.
|
- `gitUsername` and `gitEmail` - required for proper git usage.
|
||||||
- `extraMonitorSettings` - specify your monitor (cable, resolution, refresh rate. You can leave the other two options).
|
- `extraMonitorSettings` - specify your monitor (cable, resolution, refresh rate. You can leave the other two options).
|
||||||
- `clock24h` - whether you want 24 or 12 hour clock.
|
|
||||||
- `browser` - browser package name opened with shortcut **SUPER + W**.
|
|
||||||
- `terminal` - terminal package name opened with shortcut **SUPER + Enter**
|
|
||||||
- `keyboardLayout` and `consoleKeyMap` - keyboard layout (special characters ą,ę, etc.).
|
- `keyboardLayout` and `consoleKeyMap` - keyboard layout (special characters ą,ę, etc.).
|
||||||
|
- `location` - your location.
|
||||||
- `stylixImage` - default system wallpaper, based on which the graphical theme (stylix) will be generated. You can browse them in the `wallpapers` folder.
|
- `stylixImage` - default system wallpaper, based on which the graphical theme (stylix) will be generated. You can browse them in the `wallpapers` folder.
|
||||||
- `waybarChoice` - system top bar style.
|
|
||||||
- `animChoice` - system animation style.
|
|
||||||
|
|
||||||
### 5. Copy the ready `hardware-configuration.nix` to host folder:
|
### 5. Review module activation options
|
||||||
|
|
||||||
|
Also check my new project - [GarandOS TUI](https://gitea.garandplg.com/GarandPLG/garandos-tui)! It's an automated way of tweaking this settings. You can use it later *(simply type `tui` into the terminal)*, after the setup, or use it right now by cloning the repo.
|
||||||
|
|
||||||
|
Open the module files for your host and adjust the `enable` options for the services you need:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Home‑modules (enable/disable home-scoped applications)
|
||||||
|
nano hosts/<your-system-hostname>/home-modules.nix
|
||||||
|
|
||||||
|
# System‑modules (enable/disable system‑wide services)
|
||||||
|
nano hosts/<your-system-hostname>/system-modules.nix
|
||||||
|
```
|
||||||
|
|
||||||
|
Set the options to `true` for the components you want active and `false` for those you don’t need.
|
||||||
|
|
||||||
|
### 6. Copy the ready `hardware-configuration.nix` to host folder:
|
||||||
```bash
|
```bash
|
||||||
sudo cp /etc/nixos/hardware-configuration.nix hosts/<your-system-hostname>/hardware.nix
|
sudo cp /etc/nixos/hardware-configuration.nix hosts/<your-system-hostname>/hardware.nix
|
||||||
```
|
```
|
||||||
|
|
||||||
### 6. Enable `Flake` functionality in your system.
|
### 7. Enable `Flake` functionality in your system.
|
||||||
```bash
|
```bash
|
||||||
NIX_CONFIG="experimental-features = nix-command flakes"
|
NIX_CONFIG="experimental-features = nix-command flakes"
|
||||||
```
|
```
|
||||||
|
|
||||||
### 7. Build system (provide your hostname)
|
### 8. Build system (provide your hostname)
|
||||||
```bash
|
```bash
|
||||||
sudo nixos-rebuild switch --flake .#your-system-hostname
|
sudo nixos-rebuild switch --flake .#your-system-hostname
|
||||||
```
|
```
|
||||||
|
|
||||||
### 8. After system rebuild you can use the following aliases instead of repeating the previous command
|
### 9. After system rebuild you can use the following aliases instead of repeating the previous command
|
||||||
|
|
||||||
- `pullos` - pull latest commits from my repository.
|
- `pullos` - pull latest commits from my repository.
|
||||||
- `upd` - rebuild system.
|
- `upd` - rebuild system.
|
||||||
|
|||||||
274
flake.lock
generated
274
flake.lock
generated
@@ -15,11 +15,11 @@
|
|||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763676235,
|
"lastModified": 1767916874,
|
||||||
"narHash": "sha256-6Bri1agFBZdwrO3l32m1aUO6jHfbeBW+8eFVSlBkUAM=",
|
"narHash": "sha256-IcvLwoF1CIOd7yELc0Xwqskilw2FxHHRm5ZnmNdBuKc=",
|
||||||
"owner": "mrshmllow",
|
"owner": "mrshmllow",
|
||||||
"repo": "affinity-nix",
|
"repo": "affinity-nix",
|
||||||
"rev": "f4ed11bdb68bc14a11a1c1a545ef1891a02cb1a1",
|
"rev": "0c110a15fb5605490f7de451073db1c775745fee",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -28,26 +28,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"auto-cpufreq": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1763546214,
|
|
||||||
"narHash": "sha256-vc9seqvw2ElF8jPetsCoCQ5lo9P3fmgiTle3HlOMezk=",
|
|
||||||
"owner": "AdnanHodzic",
|
|
||||||
"repo": "auto-cpufreq",
|
|
||||||
"rev": "76ccb66f8e4875671fd746fb6b50931454ab8cd8",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "AdnanHodzic",
|
|
||||||
"repo": "auto-cpufreq",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"base16": {
|
"base16": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"fromYaml": "fromYaml"
|
"fromYaml": "fromYaml"
|
||||||
@@ -69,28 +49,28 @@
|
|||||||
"base16-fish": {
|
"base16-fish": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1754405784,
|
"lastModified": 1765809053,
|
||||||
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
"narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
|
||||||
"owner": "tomyun",
|
"owner": "tomyun",
|
||||||
"repo": "base16-fish",
|
"repo": "base16-fish",
|
||||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "tomyun",
|
"owner": "tomyun",
|
||||||
"repo": "base16-fish",
|
"repo": "base16-fish",
|
||||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"base16-helix": {
|
"base16-helix": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752979451,
|
"lastModified": 1760703920,
|
||||||
"narHash": "sha256-0CQM+FkYy0fOO/sMGhOoNL80ftsAzYCg9VhIrodqusM=",
|
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-helix",
|
"repo": "base16-helix",
|
||||||
"rev": "27cf1e66e50abc622fb76a3019012dc07c678fac",
|
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -135,6 +115,28 @@
|
|||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"fenix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"garandos-tui",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"rust-analyzer-src": "rust-analyzer-src"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1762929886,
|
||||||
|
"narHash": "sha256-TQZ3Ugb1FoHpTSc8KLrzN4njIZU4FemAMHyS4M3mt6s=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "fenix",
|
||||||
|
"rev": "6998514dce2c365142a0a119a95ef95d89b84086",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "fenix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"firefox-addons": {
|
"firefox-addons": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -143,11 +145,11 @@
|
|||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "pkgs/firefox-addons",
|
"dir": "pkgs/firefox-addons",
|
||||||
"lastModified": 1763784262,
|
"lastModified": 1769918637,
|
||||||
"narHash": "sha256-bg+MOwWA4GgsHQ2QZQHCixIs0ouPHvN1EVAzMTELPiQ=",
|
"narHash": "sha256-3XyGk89S0UFvKRZiKpFL4ImP5qP/2AOJUaYC7ogXnJo=",
|
||||||
"owner": "rycee",
|
"owner": "rycee",
|
||||||
"repo": "nur-expressions",
|
"repo": "nur-expressions",
|
||||||
"rev": "a717a95e58c8dfdb3d07797b97fdedc97697d65c",
|
"rev": "5659e4c18d1350d1b511fcdce885fdd879effa22",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -160,11 +162,11 @@
|
|||||||
"firefox-gnome-theme": {
|
"firefox-gnome-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758112371,
|
"lastModified": 1764873433,
|
||||||
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
|
"narHash": "sha256-1XPewtGMi+9wN9Ispoluxunw/RwozuTRVuuQOmxzt+A=",
|
||||||
"owner": "rafaelmardojai",
|
"owner": "rafaelmardojai",
|
||||||
"repo": "firefox-gnome-theme",
|
"repo": "firefox-gnome-theme",
|
||||||
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
|
"rev": "f7ffd917ac0d253dbd6a3bf3da06888f57c69f92",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -189,15 +191,15 @@
|
|||||||
"flake-compat_2": {
|
"flake-compat_2": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747046372,
|
"lastModified": 1767039857,
|
||||||
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
||||||
"owner": "edolstra",
|
"owner": "NixOS",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "edolstra",
|
"owner": "NixOS",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -207,11 +209,11 @@
|
|||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1762980239,
|
"lastModified": 1767609335,
|
||||||
"narHash": "sha256-8oNVE8TrD19ulHinjaqONf9QWCKK+w4url56cdStMpM=",
|
"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "52a2caecc898d0b46b2b905f058ccc5081f842da",
|
"rev": "250481aafeb741edfe23d29195671c19b36b6dca",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -227,11 +229,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1756770412,
|
"lastModified": 1767609335,
|
||||||
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
"rev": "250481aafeb741edfe23d29195671c19b36b6dca",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -256,6 +258,29 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"garandos-tui": {
|
||||||
|
"inputs": {
|
||||||
|
"fenix": "fenix",
|
||||||
|
"naersk": "naersk",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765060905,
|
||||||
|
"narHash": "sha256-YLU5g2aSs1Sh+6j301BtQYUdQ8IqLvoeR4Eivr4eVYc=",
|
||||||
|
"ref": "main",
|
||||||
|
"rev": "028b50c9e4d7160cfa8fac8150a54a52680f4ff5",
|
||||||
|
"revCount": 13,
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://gitea.garandplg.com/GarandPLG/garandos-tui"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"ref": "main",
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://gitea.garandplg.com/GarandPLG/garandos-tui"
|
||||||
|
}
|
||||||
|
},
|
||||||
"git-hooks": {
|
"git-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_2",
|
||||||
@@ -265,11 +290,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763319842,
|
"lastModified": 1767281941,
|
||||||
"narHash": "sha256-YG19IyrTdnVn0l3DvcUYm85u3PaqBt6tI6VvolcuHnA=",
|
"narHash": "sha256-6MkqajPICgugsuZ92OMoQcgSHnD6sJHwk8AxvMcIgTE=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "7275fa67fbbb75891c16d9dee7d88e58aea2d761",
|
"rev": "f0927703b7b1c8d97511c4116eb9b4ec6645a0fa",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -302,11 +327,11 @@
|
|||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"host": "gitlab.gnome.org",
|
"host": "gitlab.gnome.org",
|
||||||
"lastModified": 1762869044,
|
"lastModified": 1767737596,
|
||||||
"narHash": "sha256-nwm/GJ2Syigf7VccLAZ66mFC8mZJFqpJmIxSGKl7+Ds=",
|
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=",
|
||||||
"owner": "GNOME",
|
"owner": "GNOME",
|
||||||
"repo": "gnome-shell",
|
"repo": "gnome-shell",
|
||||||
"rev": "680e3d195a92203f28d4bf8c6e8bb537cc3ed4ad",
|
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -324,11 +349,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763845215,
|
"lastModified": 1769952507,
|
||||||
"narHash": "sha256-8W4YByiS3zxwcdDR2sABm1nUCSOEXJwdY/XddRTVjWM=",
|
"narHash": "sha256-eNTfxT3v8b7s1dqswgposi5Y1CUMoOUhQKiy29QY25U=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "9a5042a88caea9b729a1d3bc981069159de4fc49",
|
"rev": "b59376563943ce163b2553aeb63d0c170967d74e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -341,11 +366,11 @@
|
|||||||
"libnbtplusplus": {
|
"libnbtplusplus": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1699286814,
|
"lastModified": 1744811532,
|
||||||
"narHash": "sha256-yy0q+bky80LtK1GWzz7qpM+aAGrOqLuewbid8WT1ilk=",
|
"narHash": "sha256-qhmjaRkt+O7A+gu6HjUkl7QzOEb4r8y8vWZMG2R/C6o=",
|
||||||
"owner": "PrismLauncher",
|
"owner": "PrismLauncher",
|
||||||
"repo": "libnbtplusplus",
|
"repo": "libnbtplusplus",
|
||||||
"rev": "23b955121b8217c1c348a9ed2483167a6f3ff4ad",
|
"rev": "531449ba1c930c98e0bcf5d332b237a8566f9d78",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -354,13 +379,38 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"naersk": {
|
||||||
|
"inputs": {
|
||||||
|
"fenix": [
|
||||||
|
"garandos-tui",
|
||||||
|
"fenix"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"garandos-tui",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1752689277,
|
||||||
|
"narHash": "sha256-uldUBFkZe/E7qbvxa3mH1ItrWZyT6w1dBKJQF/3ZSsc=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "naersk",
|
||||||
|
"rev": "0e72363d0938b0208d6c646d10649164c43f4d64",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "naersk",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nix-flatpak": {
|
"nix-flatpak": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1739444422,
|
"lastModified": 1767983141,
|
||||||
"narHash": "sha256-iAVVHi7X3kWORftY+LVbRiStRnQEob2TULWyjMS6dWg=",
|
"narHash": "sha256-7ZCulYUD9RmJIDULTRkGLSW1faMpDlPKcbWJLYHoXcs=",
|
||||||
"owner": "gmodena",
|
"owner": "gmodena",
|
||||||
"repo": "nix-flatpak",
|
"repo": "nix-flatpak",
|
||||||
"rev": "5e54c3ca05a7c7d968ae1ddeabe01d2a9bc1e177",
|
"rev": "440818969ac2cbd77bfe025e884d0aa528991374",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -372,11 +422,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763678758,
|
"lastModified": 1769789167,
|
||||||
"narHash": "sha256-+hBiJ+kG5IoffUOdlANKFflTT5nO3FrrR2CA3178Y5s=",
|
"narHash": "sha256-kKB3bqYJU5nzYeIROI82Ef9VtTbu4uA3YydSk/Bioa8=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "117cc7f94e8072499b0a7aa4c52084fa4e11cc9b",
|
"rev": "62c8382960464ceb98ea593cb8321a2cf8f9e3e5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -388,11 +438,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761765539,
|
"lastModified": 1765674936,
|
||||||
"narHash": "sha256-b0yj6kfvO8ApcSE+QmA6mUfu8IYG6/uU28OFn4PaC8M=",
|
"narHash": "sha256-k00uTP4JNfmejrCLJOwdObYC9jHRrr/5M/a/8L2EIdo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "719359f4562934ae99f5443f20aa06c2ffff91fc",
|
"rev": "2075416fcb47225d9b68ac469a5c4801a9c4dd85",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -417,6 +467,26 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"noctalia": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1769983098,
|
||||||
|
"narHash": "sha256-PKej3N1BxAoKzusrdWuS9gT8bXW0U/Zk8RkedsP3qYc=",
|
||||||
|
"owner": "noctalia-dev",
|
||||||
|
"repo": "noctalia-shell",
|
||||||
|
"rev": "2a98d04b2f5e251935ba296c0d7dc374bdc5e32d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "noctalia-dev",
|
||||||
|
"repo": "noctalia-shell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": [
|
"flake-parts": [
|
||||||
@@ -428,11 +498,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758998580,
|
"lastModified": 1767810917,
|
||||||
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
|
"narHash": "sha256-ZKqhk772+v/bujjhla9VABwcvz+hB2IaRyeLT6CFnT0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
|
"rev": "dead29c804adc928d3a69dfe7f9f12d0eec1f1a4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -444,11 +514,11 @@
|
|||||||
"on-linux": {
|
"on-linux": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763514293,
|
"lastModified": 1766544016,
|
||||||
"narHash": "sha256-x766SlDqS6DoOQyW4u1zV3iZbrEKoy4P9K6XDjZ4fGU=",
|
"narHash": "sha256-3X1426N7n6bwM7GAQOvpCq2OVdlQevCzbpak0l9B6BU=",
|
||||||
"owner": "seapear",
|
"owner": "seapear",
|
||||||
"repo": "AffinityOnLinux",
|
"repo": "AffinityOnLinux",
|
||||||
"rev": "2eacfdf625bfafa3099d411f8e2d5afec565fcd6",
|
"rev": "da601564dfefe2ae3ec10e3f177db81578847b7b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -477,11 +547,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747683146,
|
"lastModified": 1768437816,
|
||||||
"narHash": "sha256-zZS//xyNYQHvD4fUMoWx86uVUwPk+p5FjZLTTu0pelQ=",
|
"narHash": "sha256-GG+V2g5NfVrypTs8qbtGnUWTXTMkGtohy/uIDa5duI0=",
|
||||||
"owner": "Diegiwg",
|
"owner": "Diegiwg",
|
||||||
"repo": "PrismLauncher-Cracked",
|
"repo": "PrismLauncher-Cracked",
|
||||||
"rev": "0612187254ef41a1087f3107e927e0dd59c9b29d",
|
"rev": "e8418b74059bdbe4fcc97522b25dc17373b0cc21",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -493,15 +563,33 @@
|
|||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"affinity-nix": "affinity-nix",
|
"affinity-nix": "affinity-nix",
|
||||||
"auto-cpufreq": "auto-cpufreq",
|
|
||||||
"firefox-addons": "firefox-addons",
|
"firefox-addons": "firefox-addons",
|
||||||
|
"garandos-tui": "garandos-tui",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nix-flatpak": "nix-flatpak",
|
"nix-flatpak": "nix-flatpak",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"noctalia": "noctalia",
|
||||||
"prismlauncher-cracked": "prismlauncher-cracked",
|
"prismlauncher-cracked": "prismlauncher-cracked",
|
||||||
"stylix": "stylix"
|
"stylix": "stylix"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"rust-analyzer-src": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1762860488,
|
||||||
|
"narHash": "sha256-rMfWMCOo/pPefM2We0iMBLi2kLBAnYoB9thi4qS7uk4=",
|
||||||
|
"owner": "rust-lang",
|
||||||
|
"repo": "rust-analyzer",
|
||||||
|
"rev": "2efc80078029894eec0699f62ec8d5c1a56af763",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "rust-lang",
|
||||||
|
"ref": "nightly",
|
||||||
|
"repo": "rust-analyzer",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"stylix": {
|
"stylix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"base16": "base16",
|
"base16": "base16",
|
||||||
@@ -523,11 +611,11 @@
|
|||||||
"tinted-zed": "tinted-zed"
|
"tinted-zed": "tinted-zed"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763845141,
|
"lastModified": 1769888473,
|
||||||
"narHash": "sha256-o8TKdZluj/yC8qPIVNe2g4qopyFmQglH52+lvQx82kE=",
|
"narHash": "sha256-4KWbaJwaYnZ60bFyTudZYAKskjr7Sa17R3/yh+oXS7w=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "adc650610085adbe130b9860d5bdb869f96050af",
|
"rev": "ae5c0239ae4f82a8c7e33ad8a456535d5a9ba813",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -587,11 +675,11 @@
|
|||||||
"tinted-schemes": {
|
"tinted-schemes": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1757716333,
|
"lastModified": 1767710407,
|
||||||
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
|
"narHash": "sha256-+W1EB79Jl0/gm4JqmO0Nuc5C7hRdp4vfsV/VdzI+des=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "schemes",
|
"repo": "schemes",
|
||||||
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
|
"rev": "2800e2b8ac90f678d7e4acebe4fa253f602e05b2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -603,11 +691,11 @@
|
|||||||
"tinted-tmux": {
|
"tinted-tmux": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1757811970,
|
"lastModified": 1767489635,
|
||||||
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
|
"narHash": "sha256-e6nnFnWXKBCJjCv4QG4bbcouJ6y3yeT70V9MofL32lU=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "tinted-tmux",
|
"repo": "tinted-tmux",
|
||||||
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
|
"rev": "3c32729ccae99be44fe8a125d20be06f8d7d8184",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -619,11 +707,11 @@
|
|||||||
"tinted-zed": {
|
"tinted-zed": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1757811247,
|
"lastModified": 1767488740,
|
||||||
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
|
"narHash": "sha256-wVOj0qyil8m+ouSsVZcNjl5ZR+1GdOOAooAatQXHbuU=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-zed",
|
"repo": "base16-zed",
|
||||||
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
|
"rev": "11abb0b282ad3786a2aae088d3a01c60916f2e40",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -639,11 +727,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1762938485,
|
"lastModified": 1767801790,
|
||||||
"narHash": "sha256-AlEObg0syDl+Spi4LsZIBrjw+snSVU4T8MOeuZJUJjM=",
|
"narHash": "sha256-QfX6g3Wj2vQe7oBJEbTf0npvC6sJoDbF9hb2+gM5tf8=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"rev": "5b4ee75aeefd1e2d5a1cc43cf6ba65eba75e83e4",
|
"rev": "778a1d691f1ef45dd68c661715c5bf8cbf131c80",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
29
flake.nix
29
flake.nix
@@ -21,8 +21,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
auto-cpufreq = {
|
noctalia = {
|
||||||
url = "github:AdnanHodzic/auto-cpufreq";
|
url = "github:noctalia-dev/noctalia-shell";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -49,22 +49,24 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
nix-flatpak.url = "github:gmodena/nix-flatpak?ref=latest";
|
nix-flatpak.url = "github:gmodena/nix-flatpak?ref=latest";
|
||||||
|
|
||||||
|
garandos-tui = {
|
||||||
|
url = "git+https://gitea.garandplg.com/GarandPLG/garandos-tui?ref=main";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs = {
|
||||||
{
|
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
nix-flatpak,
|
nix-flatpak,
|
||||||
auto-cpufreq,
|
garandos-tui,
|
||||||
...
|
...
|
||||||
}@inputs:
|
} @ inputs: let
|
||||||
let
|
|
||||||
hostDirs = builtins.attrNames (builtins.readDir ./hosts);
|
hostDirs = builtins.attrNames (builtins.readDir ./hosts);
|
||||||
|
|
||||||
mkHost =
|
mkHost = hostName: let
|
||||||
hostName:
|
inherit
|
||||||
let
|
(import ./hosts/${hostName}/variables.nix)
|
||||||
inherit (import ./hosts/${hostName}/variables.nix)
|
|
||||||
host
|
host
|
||||||
username
|
username
|
||||||
profile
|
profile
|
||||||
@@ -83,11 +85,10 @@
|
|||||||
modules = [
|
modules = [
|
||||||
./profiles/${profile}
|
./profiles/${profile}
|
||||||
nix-flatpak.nixosModules.nix-flatpak
|
nix-flatpak.nixosModules.nix-flatpak
|
||||||
auto-cpufreq.nixosModules.default
|
garandos-tui.nixosModules.garandos-tui
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
nixosConfigurations = nixpkgs.lib.genAttrs hostDirs mkHost;
|
nixosConfigurations = nixpkgs.lib.genAttrs hostDirs mkHost;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ ... }:
|
_: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware.nix
|
./hardware.nix
|
||||||
./host-packages.nix
|
./host-packages.nix
|
||||||
|
./system-modules.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,8 +6,7 @@
|
|||||||
lib,
|
lib,
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
@@ -22,7 +21,7 @@
|
|||||||
"usb_storage"
|
"usb_storage"
|
||||||
"sd_mod"
|
"sd_mod"
|
||||||
];
|
];
|
||||||
kernelModules = [ "dm-snapshot" ];
|
kernelModules = ["dm-snapshot"];
|
||||||
luks.devices = {
|
luks.devices = {
|
||||||
cryptroot = {
|
cryptroot = {
|
||||||
device = "/dev/disk/by-uuid/7c018698-d35c-4ee6-92a8-5e4edf914065";
|
device = "/dev/disk/by-uuid/7c018698-d35c-4ee6-92a8-5e4edf914065";
|
||||||
@@ -30,8 +29,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
kernelModules = [ "kvm-amd" ];
|
kernelModules = ["kvm-amd"];
|
||||||
extraModulePackages = [ ];
|
extraModulePackages = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems = {
|
fileSystems = {
|
||||||
|
|||||||
65
hosts/Garand-Desktop/home-modules.nix
Normal file
65
hosts/Garand-Desktop/home-modules.nix
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
_: {
|
||||||
|
/*
|
||||||
|
Development editors and IDEs
|
||||||
|
*/
|
||||||
|
vscodium.enable = false; # VSCodium: a free and open-source "demicrosofted" VSCode
|
||||||
|
zed-editor = {
|
||||||
|
enable = true; # Zed Editor: a modern, high‑performance code editor
|
||||||
|
remote-server.enable = true; # Remote Server: enable remote editing capabilities
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
Web browsers
|
||||||
|
*/
|
||||||
|
librewolf.enable = true; # Librewolf: a privacy-focused Firefox fork
|
||||||
|
ungoogled-chromium.enable = true; # Ungoogled Chromium: a privacy-focused Chromium fork
|
||||||
|
|
||||||
|
/*
|
||||||
|
System utilities
|
||||||
|
*/
|
||||||
|
btop.enable = true; # Btop: a resource monitor for the terminal
|
||||||
|
cava.enable = false; # Cava: terminal audio visualizer
|
||||||
|
fastfetch.enable = true; # Fastfetch: a fast system information tool
|
||||||
|
|
||||||
|
/*
|
||||||
|
Communication and synchronization
|
||||||
|
*/
|
||||||
|
kdeconnect.enable = false; # KDE Connect: integrate your phone and desktop
|
||||||
|
nextcloud-client.enable = true; # Nextcloud Client: sync files with a Nextcloud server
|
||||||
|
vesktop.enable = true; # Vesktop: a community‑driven Discord client
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
lutris.enable = false; # Lutris: an open gaming platform
|
||||||
|
|
||||||
|
/*
|
||||||
|
Media recording and streaming
|
||||||
|
*/
|
||||||
|
obs-studio.enable = false; # OBS Studio: streaming and recording software
|
||||||
|
|
||||||
|
/*
|
||||||
|
Office suite
|
||||||
|
*/
|
||||||
|
onlyoffice.enable = true; # OnlyOffice: an office suite compatible with Microsoft formats
|
||||||
|
|
||||||
|
/*
|
||||||
|
Learning tools
|
||||||
|
*/
|
||||||
|
anki.enable = true; # Anki: spaced‑repetition flashcard program
|
||||||
|
|
||||||
|
/*
|
||||||
|
XDG desktop entries (PWA)
|
||||||
|
*/
|
||||||
|
xdgDesktopEntries = {
|
||||||
|
enable = true; # Enable XDG desktop entries
|
||||||
|
entries = {
|
||||||
|
messenger.enable = true; # Messenger: Facebook Messenger
|
||||||
|
mastodon.enable = true; # Mastodon: a decentralized social network
|
||||||
|
garandcloud.enable = true; # GarandCloud: my Nextcloud instance
|
||||||
|
chatgpt.enable = true; # ChatGPT: a large language model
|
||||||
|
claude.enable = true; # Claude: a large language model
|
||||||
|
glance.enable = true; # Glance: my home server dashboard
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# audacity
|
# audacity
|
||||||
];
|
];
|
||||||
|
|||||||
90
hosts/Garand-Desktop/system-modules.nix
Normal file
90
hosts/Garand-Desktop/system-modules.nix
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
_: {
|
||||||
|
/*
|
||||||
|
Container & Packaging
|
||||||
|
*/
|
||||||
|
docker.enable = true; # Docker: container runtime and management
|
||||||
|
virtualbox.enable = true; # VirtualBox: PC emulator
|
||||||
|
flatpak = {
|
||||||
|
enable = true; # Flatpak: universal packaging system for Linux
|
||||||
|
packages = {
|
||||||
|
sober.enable = false; # Roblox client
|
||||||
|
warehouse.enable = true; # Flatpak manager
|
||||||
|
flatseal.enable = true; # Flatpak permissions manager
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
Networking
|
||||||
|
*/
|
||||||
|
tailscale.enable = true; # Tailscale: secure network for remote access
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
gamemode.enable = true; # GameMode: optimizes system performance for gaming
|
||||||
|
gamescope.enable = false; # Gamescope: micro‑compositor for games
|
||||||
|
steam.enable = true; # Steam: platform for buying and playing games
|
||||||
|
|
||||||
|
packages = {
|
||||||
|
/*
|
||||||
|
Container & Packaging
|
||||||
|
*/
|
||||||
|
distrobox.enable = false; # Distrobox: containerized development environments
|
||||||
|
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
|
||||||
|
bottles.enable = false; # Bottles: Easy-to-use wineprefix manager
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
prismlauncher.enable = true; # Prism Launcher: Minecraft modded launcher
|
||||||
|
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
|
||||||
|
ttySolitaire.enable = true; # TTY Solitaire: terminal‑based solitaire game
|
||||||
|
heroic.enable = false; # Native GOG, Epic, and Amazon Games Launcher for Linux, Windows and Mac
|
||||||
|
|
||||||
|
/*
|
||||||
|
Development Tools
|
||||||
|
*/
|
||||||
|
exercism.enable = true; # Exercism: coding practice platform
|
||||||
|
lazygit.enable = false; # Lazygit: simple TUI for Git
|
||||||
|
opencode.enable = false; # OpenCode: tools for coding and development
|
||||||
|
jan.enable = true; # Jan: AI chat UI
|
||||||
|
logisim-evolution.enable = true; # Logisim-Evolution: Digital logic designer and simulator
|
||||||
|
|
||||||
|
/*
|
||||||
|
Communication & Collaboration
|
||||||
|
*/
|
||||||
|
mattermost.enable = true; # Mattermost: open‑source Slack alternative
|
||||||
|
slack.enable = true; # Slack: team communication and collaboration tool
|
||||||
|
tutanota.enable = true; # Tutanota: secure email client
|
||||||
|
signal.enable = true; # Signal: secure messaging app
|
||||||
|
teams.enable = true; # Teams-for-linux: Unofficial Microsoft Teams client for Linux
|
||||||
|
ferdium.enable = false; # Ferdium: All your services in one place built by the community
|
||||||
|
|
||||||
|
/*
|
||||||
|
Productivity / Knowledge Management
|
||||||
|
*/
|
||||||
|
bitwarden.enable = false; # Bitwarden: password manager (desktop)
|
||||||
|
iotas.enable = true; # Iotas: lightweight notes manager
|
||||||
|
logseq.enable = false; # Logseq: knowledge base and outliner
|
||||||
|
|
||||||
|
/*
|
||||||
|
Media & Graphics
|
||||||
|
*/
|
||||||
|
affinity.enable = false; # Affinity: professional graphics suite
|
||||||
|
eyeOfGnome.enable = true; # Eye of GNOME: image viewer
|
||||||
|
freetube.enable = false; # FreeTube: privacy‑friendly YouTube client
|
||||||
|
gimp.enable = false; # GIMP: GNU Image Manipulation Program
|
||||||
|
kdenlive.enable = false; # Kdenlive: video editing software
|
||||||
|
pixieditor.enable = true; # Pixieditor: Universal editor for all your 2D needs
|
||||||
|
plex.enable = true; # Plex: media player and server client
|
||||||
|
|
||||||
|
/*
|
||||||
|
Utilities / Misc
|
||||||
|
*/
|
||||||
|
eddieAirVPN.enable = true; # Eddie AirVPN: VPN client
|
||||||
|
galculator.enable = false; # Galculator: simple calculator
|
||||||
|
gedit.enable = true; # Gedit: GNOME text editor
|
||||||
|
winboat.enable = true; # Winboat: Windows remote desktop via RDP
|
||||||
|
adb.enable = false; # ADB: Android SDK platform tools
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -23,22 +23,11 @@
|
|||||||
# Inside the quotes, create a new line for each monitor.
|
# Inside the quotes, create a new line for each monitor.
|
||||||
extraMonitorSettings = "monitor = DP-1,1920x1080@144,auto,1";
|
extraMonitorSettings = "monitor = DP-1,1920x1080@144,auto,1";
|
||||||
|
|
||||||
# Waybar Settings
|
|
||||||
clock24h = true;
|
|
||||||
|
|
||||||
# Program Options
|
|
||||||
# Set Default Browser (google-chrome-stable for google-chrome)
|
|
||||||
# This does NOT install your browser
|
|
||||||
# You need to install it by adding it to the `packages.nix`
|
|
||||||
# or as a flatpak
|
|
||||||
browser = "librewolf";
|
|
||||||
|
|
||||||
# Setting it here does not enable it. Kitty is installed by default
|
|
||||||
terminal = "kitty"; # Set Default System Terminal
|
|
||||||
|
|
||||||
keyboardLayout = "pl";
|
keyboardLayout = "pl";
|
||||||
consoleKeyMap = "pl";
|
consoleKeyMap = "pl";
|
||||||
|
|
||||||
|
location = "Żywiec, PL";
|
||||||
|
|
||||||
# For Nvidia Prime support
|
# For Nvidia Prime support
|
||||||
intelID = "PCI:1:0:0";
|
intelID = "PCI:1:0:0";
|
||||||
nvidiaID = "PCI:0:2:0";
|
nvidiaID = "PCI:0:2:0";
|
||||||
@@ -53,44 +42,19 @@
|
|||||||
# This will set your color palette
|
# This will set your color palette
|
||||||
# Default background
|
# Default background
|
||||||
# Add new images to ~/garandos/wallpapers
|
# Add new images to ~/garandos/wallpapers
|
||||||
stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
|
stylixImage = "attack-on-titan-mikasa-ackerman.jpg";
|
||||||
#stylixImage = ../../wallpapers/DW_Pacts.jpg;
|
#stylixImage = "DW_Pacts.jpg";
|
||||||
#stylixImage = ../../wallpapers/edward-elric-fullmetal-alchemist.jpg;
|
#stylixImage = "edward-elric-fullmetal-alchemist.jpg";
|
||||||
#stylixImage = ../../wallpapers/fire-nation.jpg;
|
#stylixImage = "fire-nation.jpg";
|
||||||
#stylixImage = ../../wallpapers/four-elements.jpg;
|
#stylixImage = "four-elements.jpg";
|
||||||
#stylixImage = ../../wallpapers/fullmetal-alchemist-5120x2880-10399.png;
|
#stylixImage = "fullmetal-alchemist-5120x2880-10399.png";
|
||||||
#stylixImage = ../../wallpapers/Grounded_Wallpaper_4K.jpg;
|
#stylixImage = "Grounded_Wallpaper_4K.jpg";
|
||||||
#stylixImage = ../../wallpapers/jablon.jpg;
|
#stylixImage = "jablon.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-log-two.jpg;
|
#stylixImage = "rammstein-log-two.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-logo-one.jpg;
|
#stylixImage = "rammstein-logo-one.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-logo-three.jpg;
|
#stylixImage = "rammstein-logo-three.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-one.jpg;
|
#stylixImage = "rammstein-one.jpg";
|
||||||
#stylixImage = ../../wallpapers/1346530.jpeg;
|
#stylixImage = "1346530.jpeg";
|
||||||
|
|
||||||
# Set Waybar
|
|
||||||
# Available Options:
|
|
||||||
waybarChoice = ../../modules/home/waybar/waybar-curved.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-ddubs.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-ddubs-2.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-simple.nix;
|
|
||||||
# Throwback to GarandOS v1.0
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-jerry.nix;
|
|
||||||
# Very colorful and bright colors
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-nekodyke.nix;
|
|
||||||
# DWM styled waybars from Matt at TheLinuxCast
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-dwm.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-dwm-2.nix;
|
|
||||||
|
|
||||||
# Set Animation style
|
|
||||||
# Available options are:
|
|
||||||
# animations-def.nix (default)
|
|
||||||
# animations-end4.nix (end-4 project very fluid)
|
|
||||||
# animations-dynamic.nix (ml4w project)
|
|
||||||
# animations-moving.nix (ml4w project)
|
|
||||||
# animChoice = ../../modules/home/hyprland/animations-def.nix;
|
|
||||||
animChoice = ../../modules/home/hyprland/animations-end4.nix;
|
|
||||||
#animChoice = ../../modules/home/hyprland/animations-dynamic.nix;
|
|
||||||
#animChoice = ../../modules/home/hyprland/animations-moving.nix;
|
|
||||||
|
|
||||||
# Set network hostId if required (needed for zfs)
|
# Set network hostId if required (needed for zfs)
|
||||||
# Otherwise leave as-is
|
# Otherwise leave as-is
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ ... }:
|
_: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware.nix
|
./hardware.nix
|
||||||
./host-packages.nix
|
./host-packages.nix
|
||||||
|
./system-modules.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,9 +6,7 @@
|
|||||||
lib,
|
lib,
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
@@ -21,14 +19,14 @@
|
|||||||
"usb_storage"
|
"usb_storage"
|
||||||
"sd_mod"
|
"sd_mod"
|
||||||
];
|
];
|
||||||
kernelModules = [ "dm-snapshot" ];
|
kernelModules = ["dm-snapshot"];
|
||||||
luks.devices.cryptroot = {
|
luks.devices.cryptroot = {
|
||||||
device = "/dev/disk/by-uuid/6abc2228-823e-42b0-94c7-48fda757732c";
|
device = "/dev/disk/by-uuid/6abc2228-823e-42b0-94c7-48fda757732c";
|
||||||
preLVM = true;
|
preLVM = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
kernelModules = [ "kvm-amd" ];
|
kernelModules = ["kvm-amd"];
|
||||||
extraModulePackages = [ ];
|
extraModulePackages = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems = {
|
fileSystems = {
|
||||||
@@ -51,7 +49,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [
|
swapDevices = [
|
||||||
{ device = "/dev/disk/by-uuid/5da7c845-7dd3-4882-93af-2d679cdb5e7a"; }
|
{device = "/dev/disk/by-uuid/5da7c845-7dd3-4882-93af-2d679cdb5e7a";}
|
||||||
];
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
|||||||
65
hosts/Garand-Laptop/home-modules.nix
Normal file
65
hosts/Garand-Laptop/home-modules.nix
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
_: {
|
||||||
|
/*
|
||||||
|
Development editors and IDEs
|
||||||
|
*/
|
||||||
|
vscodium.enable = false; # VSCodium: a free and open-source "demicrosofted" VSCode
|
||||||
|
zed-editor = {
|
||||||
|
enable = true; # Zed Editor: a modern, high‑performance code editor
|
||||||
|
remote-server.enable = true; # Remote Server: enable remote editing capabilities
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
Web browsers
|
||||||
|
*/
|
||||||
|
librewolf.enable = true; # Librewolf: a privacy-focused Firefox fork
|
||||||
|
ungoogled-chromium.enable = true; # Ungoogled Chromium: a privacy-focused Chromium fork
|
||||||
|
|
||||||
|
/*
|
||||||
|
System utilities
|
||||||
|
*/
|
||||||
|
btop.enable = true; # Btop: a resource monitor for the terminal
|
||||||
|
cava.enable = false; # Cava: terminal audio visualizer
|
||||||
|
fastfetch.enable = true; # Fastfetch: a fast system information tool
|
||||||
|
|
||||||
|
/*
|
||||||
|
Communication and synchronization
|
||||||
|
*/
|
||||||
|
kdeconnect.enable = false; # KDE Connect: integrate your phone and desktop
|
||||||
|
nextcloud-client.enable = true; # Nextcloud Client: sync files with a Nextcloud server
|
||||||
|
vesktop.enable = true; # Vesktop: a community‑driven Discord client
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
lutris.enable = false; # Lutris: an open gaming platform
|
||||||
|
|
||||||
|
/*
|
||||||
|
Media recording and streaming
|
||||||
|
*/
|
||||||
|
obs-studio.enable = false; # OBS Studio: streaming and recording software
|
||||||
|
|
||||||
|
/*
|
||||||
|
Office suite
|
||||||
|
*/
|
||||||
|
onlyoffice.enable = true; # OnlyOffice: an office suite compatible with Microsoft formats
|
||||||
|
|
||||||
|
/*
|
||||||
|
Learning tools
|
||||||
|
*/
|
||||||
|
anki.enable = true; # Anki: spaced‑repetition flashcard program
|
||||||
|
|
||||||
|
/*
|
||||||
|
XDG desktop entries (PWA)
|
||||||
|
*/
|
||||||
|
xdgDesktopEntries = {
|
||||||
|
enable = true; # Enable XDG desktop entries
|
||||||
|
entries = {
|
||||||
|
messenger.enable = true; # Messenger: Facebook Messenger
|
||||||
|
mastodon.enable = true; # Mastodon: a decentralized social network
|
||||||
|
garandcloud.enable = true; # GarandCloud: my Nextcloud instance
|
||||||
|
chatgpt.enable = true; # ChatGPT: a large language model
|
||||||
|
claude.enable = true; # Claude: a large language model
|
||||||
|
glance.enable = true; # Glance: my home server dashboard
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# audacity
|
# audacity
|
||||||
];
|
];
|
||||||
|
|||||||
90
hosts/Garand-Laptop/system-modules.nix
Normal file
90
hosts/Garand-Laptop/system-modules.nix
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
_: {
|
||||||
|
/*
|
||||||
|
Container & Packaging
|
||||||
|
*/
|
||||||
|
docker.enable = true; # Docker: container runtime and management
|
||||||
|
virtualbox.enable = false; # VirtualBox: PC emulator
|
||||||
|
flatpak = {
|
||||||
|
enable = true; # Flatpak: universal packaging system for Linux
|
||||||
|
packages = {
|
||||||
|
sober.enable = false; # Roblox client
|
||||||
|
warehouse.enable = true; # Flatpak manager
|
||||||
|
flatseal.enable = true; # Flatpak permissions manager
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
Networking
|
||||||
|
*/
|
||||||
|
tailscale.enable = true; # Tailscale: secure network for remote access
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
gamemode.enable = true; # GameMode: optimizes system performance for gaming
|
||||||
|
gamescope.enable = false; # Gamescope: micro‑compositor for games
|
||||||
|
steam.enable = true; # Steam: platform for buying and playing games
|
||||||
|
|
||||||
|
packages = {
|
||||||
|
/*
|
||||||
|
Container & Packaging
|
||||||
|
*/
|
||||||
|
distrobox.enable = false; # Distrobox: containerized development environments
|
||||||
|
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
|
||||||
|
bottles.enable = false; # Bottles: Easy-to-use wineprefix manager
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
prismlauncher.enable = true; # Prism Launcher: Minecraft modded launcher
|
||||||
|
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
|
||||||
|
ttySolitaire.enable = true; # TTY Solitaire: terminal‑based solitaire game
|
||||||
|
heroic.enable = false; # Native GOG, Epic, and Amazon Games Launcher for Linux, Windows and Mac
|
||||||
|
|
||||||
|
/*
|
||||||
|
Development Tools
|
||||||
|
*/
|
||||||
|
exercism.enable = true; # Exercism: coding practice platform
|
||||||
|
lazygit.enable = false; # Lazygit: simple TUI for Git
|
||||||
|
opencode.enable = false; # OpenCode: tools for coding and development
|
||||||
|
jan.enable = true; # Jan: AI chat UI
|
||||||
|
logisim-evolution.enable = false; # Logisim-Evolution: Digital logic designer and simulator
|
||||||
|
|
||||||
|
/*
|
||||||
|
Communication & Collaboration
|
||||||
|
*/
|
||||||
|
mattermost.enable = true; # Mattermost: open‑source Slack alternative
|
||||||
|
slack.enable = true; # Slack: team communication and collaboration tool
|
||||||
|
tutanota.enable = true; # Tutanota: secure email client
|
||||||
|
signal.enable = true; # Signal: secure messaging app
|
||||||
|
teams.enable = true; # Teams-for-linux: Unofficial Microsoft Teams client for Linux
|
||||||
|
ferdium.enable = false; # Ferdium: All your services in one place built by the community
|
||||||
|
|
||||||
|
/*
|
||||||
|
Productivity / Knowledge Management
|
||||||
|
*/
|
||||||
|
bitwarden.enable = false; # Bitwarden: password manager (desktop)
|
||||||
|
iotas.enable = true; # Iotas: lightweight notes manager
|
||||||
|
logseq.enable = false; # Logseq: knowledge base and outliner
|
||||||
|
|
||||||
|
/*
|
||||||
|
Media & Graphics
|
||||||
|
*/
|
||||||
|
affinity.enable = false; # Affinity: professional graphics suite
|
||||||
|
eyeOfGnome.enable = true; # Eye of GNOME: image viewer
|
||||||
|
freetube.enable = false; # FreeTube: privacy‑friendly YouTube client
|
||||||
|
gimp.enable = false; # GIMP: GNU Image Manipulation Program
|
||||||
|
kdenlive.enable = false; # Kdenlive: video editing software
|
||||||
|
pixieditor.enable = false; # Pixieditor: Universal editor for all your 2D needs
|
||||||
|
plex.enable = true; # Plex: media player and server client
|
||||||
|
|
||||||
|
/*
|
||||||
|
Utilities / Misc
|
||||||
|
*/
|
||||||
|
eddieAirVPN.enable = true; # Eddie AirVPN: VPN client
|
||||||
|
galculator.enable = false; # Galculator: simple calculator
|
||||||
|
gedit.enable = false; # Gedit: GNOME text editor
|
||||||
|
winboat.enable = false; # Winboat: Windows remote desktop via RDP
|
||||||
|
adb.enable = false; # ADB: Android SDK platform tools
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -23,22 +23,11 @@
|
|||||||
# Inside the quotes, create a new line for each monitor.
|
# Inside the quotes, create a new line for each monitor.
|
||||||
extraMonitorSettings = "monitor = eDP-1,1920x1080@60,auto,1";
|
extraMonitorSettings = "monitor = eDP-1,1920x1080@60,auto,1";
|
||||||
|
|
||||||
# Waybar Settings
|
|
||||||
clock24h = true;
|
|
||||||
|
|
||||||
# Program Options
|
|
||||||
# Set Default Browser (google-chrome-stable for google-chrome)
|
|
||||||
# This does NOT install your browser
|
|
||||||
# You need to install it by adding it to the `packages.nix`
|
|
||||||
# or as a flatpak
|
|
||||||
browser = "librewolf";
|
|
||||||
|
|
||||||
# Setting it here does not enable it. Kitty is installed by default
|
|
||||||
terminal = "kitty"; # Set Default System Terminal
|
|
||||||
|
|
||||||
keyboardLayout = "pl";
|
keyboardLayout = "pl";
|
||||||
consoleKeyMap = "pl";
|
consoleKeyMap = "pl";
|
||||||
|
|
||||||
|
location = "Żywiec, PL";
|
||||||
|
|
||||||
# For Nvidia Prime support
|
# For Nvidia Prime support
|
||||||
intelID = "PCI:1:0:0";
|
intelID = "PCI:1:0:0";
|
||||||
nvidiaID = "PCI:0:2:0";
|
nvidiaID = "PCI:0:2:0";
|
||||||
@@ -49,51 +38,23 @@
|
|||||||
# Enable Printing Support
|
# Enable Printing Support
|
||||||
printEnable = false;
|
printEnable = false;
|
||||||
|
|
||||||
# Themes, waybar and animation.
|
|
||||||
# Only uncomment your selection
|
|
||||||
# The others much be commented out.
|
|
||||||
|
|
||||||
# Set Stylix Image
|
# Set Stylix Image
|
||||||
# This will set your color palette
|
# This will set your color palette
|
||||||
# Default background
|
# Default background
|
||||||
# Add new images to ~/garandos/wallpapers
|
# Add new images to ~/garandos/wallpapers
|
||||||
stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
|
stylixImage = "attack-on-titan-mikasa-ackerman.jpg";
|
||||||
#stylixImage = ../../wallpapers/DW_Pacts.jpg;
|
#stylixImage = "DW_Pacts.jpg";
|
||||||
#stylixImage = ../../wallpapers/edward-elric-fullmetal-alchemist.jpg;
|
#stylixImage = "edward-elric-fullmetal-alchemist.jpg";
|
||||||
#stylixImage = ../../wallpapers/fire-nation.jpg;
|
#stylixImage = "fire-nation.jpg";
|
||||||
#stylixImage = ../../wallpapers/four-elements.jpg;
|
#stylixImage = "four-elements.jpg";
|
||||||
#stylixImage = ../../wallpapers/fullmetal-alchemist-5120x2880-10399.png;
|
#stylixImage = "fullmetal-alchemist-5120x2880-10399.png";
|
||||||
#stylixImage = ../../wallpapers/Grounded_Wallpaper_4K.jpg;
|
#stylixImage = "Grounded_Wallpaper_4K.jpg";
|
||||||
#stylixImage = ../../wallpapers/jablon.jpg;
|
#stylixImage = "jablon.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-log-two.jpg;
|
#stylixImage = "rammstein-log-two.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-logo-one.jpg;
|
#stylixImage = "rammstein-logo-one.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-logo-three.jpg;
|
#stylixImage = "rammstein-logo-three.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-one.jpg;
|
#stylixImage = "rammstein-one.jpg";
|
||||||
#stylixImage = ../../wallpapers/1346530.jpeg;
|
#stylixImage = "1346530.jpeg";
|
||||||
|
|
||||||
# Set Waybar
|
|
||||||
# Available Options:
|
|
||||||
waybarChoice = ../../modules/home/waybar/waybar-curved.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-ddubs.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-ddubs-2.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-simple.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-jerry.nix;
|
|
||||||
# Very colorful and bright colors
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-nekodyke.nix;
|
|
||||||
# DWM styled waybars from Matt at TheLinuxCast
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-dwm.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-dwm-2.nix;
|
|
||||||
|
|
||||||
# Set Animation style
|
|
||||||
# Available options are:
|
|
||||||
# animations-def.nix (default)
|
|
||||||
# animations-end4.nix (end-4 project very fluid)
|
|
||||||
# animations-dynamic.nix (ml4w project)
|
|
||||||
# animations-moving.nix (ml4w project)
|
|
||||||
# animChoice = ../../modules/home/hyprland/animations-def.nix;
|
|
||||||
animChoice = ../../modules/home/hyprland/animations-end4.nix;
|
|
||||||
#animChoice = ../../modules/home/hyprland/animations-dynamic.nix;
|
|
||||||
#animChoice = ../../modules/home/hyprland/animations-moving.nix;
|
|
||||||
|
|
||||||
# Set network hostId if required (needed for zfs)
|
# Set network hostId if required (needed for zfs)
|
||||||
# Otherwise leave as-is
|
# Otherwise leave as-is
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ ... }:
|
_: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware.nix
|
./hardware.nix
|
||||||
./host-packages.nix
|
./host-packages.nix
|
||||||
|
./system-modules.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,12 +4,9 @@
|
|||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
@@ -20,17 +17,16 @@
|
|||||||
"nvme"
|
"nvme"
|
||||||
"usbhid"
|
"usbhid"
|
||||||
];
|
];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = ["kvm-intel"];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "/dev/disk/by-uuid/dd005850-6230-40c4-9d70-8c8cf443658d";
|
device = "/dev/disk/by-uuid/dd005850-6230-40c4-9d70-8c8cf443658d";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.initrd.luks.devices."luks-b7565781-148e-4c94-9c76-36c84dd93dc8".device =
|
boot.initrd.luks.devices."luks-b7565781-148e-4c94-9c76-36c84dd93dc8".device = "/dev/disk/by-uuid/b7565781-148e-4c94-9c76-36c84dd93dc8";
|
||||||
"/dev/disk/by-uuid/b7565781-148e-4c94-9c76-36c84dd93dc8";
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" = {
|
||||||
device = "/dev/disk/by-uuid/C2A6-DF56";
|
device = "/dev/disk/by-uuid/C2A6-DF56";
|
||||||
|
|||||||
65
hosts/default/home-modules.nix
Normal file
65
hosts/default/home-modules.nix
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
_: {
|
||||||
|
/*
|
||||||
|
Development editors and IDEs
|
||||||
|
*/
|
||||||
|
vscodium.enable = false; # VSCodium: a free and open-source "demicrosofted" VSCode
|
||||||
|
zed-editor = {
|
||||||
|
enable = true; # Zed Editor: a modern, high‑performance code editor
|
||||||
|
remote-server.enable = true; # Remote Server: enable remote editing capabilities
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
Web browsers
|
||||||
|
*/
|
||||||
|
librewolf.enable = true; # Librewolf: a privacy-focused Firefox fork
|
||||||
|
ungoogled-chromium.enable = true; # Ungoogled Chromium: a privacy-focused Chromium fork
|
||||||
|
|
||||||
|
/*
|
||||||
|
System utilities
|
||||||
|
*/
|
||||||
|
btop.enable = true; # Btop: a resource monitor for the terminal
|
||||||
|
cava.enable = false; # Cava: terminal audio visualizer
|
||||||
|
fastfetch.enable = true; # Fastfetch: a fast system information tool
|
||||||
|
|
||||||
|
/*
|
||||||
|
Communication and synchronization
|
||||||
|
*/
|
||||||
|
kdeconnect.enable = false; # KDE Connect: integrate your phone and desktop
|
||||||
|
nextcloud-client.enable = true; # Nextcloud Client: sync files with a Nextcloud server
|
||||||
|
vesktop.enable = true; # Vesktop: a community‑driven Discord client
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
lutris.enable = false; # Lutris: an open gaming platform
|
||||||
|
|
||||||
|
/*
|
||||||
|
Media recording and streaming
|
||||||
|
*/
|
||||||
|
obs-studio.enable = false; # OBS Studio: streaming and recording software
|
||||||
|
|
||||||
|
/*
|
||||||
|
Office suite
|
||||||
|
*/
|
||||||
|
onlyoffice.enable = true; # OnlyOffice: an office suite compatible with Microsoft formats
|
||||||
|
|
||||||
|
/*
|
||||||
|
Learning tools
|
||||||
|
*/
|
||||||
|
anki.enable = true; # Anki: spaced‑repetition flashcard program
|
||||||
|
|
||||||
|
/*
|
||||||
|
XDG desktop entries (PWA)
|
||||||
|
*/
|
||||||
|
xdgDesktopEntries = {
|
||||||
|
enable = true; # Enable XDG desktop entries
|
||||||
|
entries = {
|
||||||
|
messenger.enable = true; # Messenger: Facebook Messenger
|
||||||
|
mastodon.enable = true; # Mastodon: a decentralized social network
|
||||||
|
garandcloud.enable = true; # GarandCloud: my Nextcloud instance
|
||||||
|
chatgpt.enable = true; # ChatGPT: a large language model
|
||||||
|
claude.enable = true; # Claude: a large language model
|
||||||
|
glance.enable = true; # Glance: my home server dashboard
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# audacity
|
# audacity
|
||||||
];
|
];
|
||||||
|
|||||||
90
hosts/default/system-modules.nix
Normal file
90
hosts/default/system-modules.nix
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
_: {
|
||||||
|
/*
|
||||||
|
Container & Packaging
|
||||||
|
*/
|
||||||
|
docker.enable = true; # Docker: container runtime and management
|
||||||
|
virtualbox.enable = false; # VirtualBox: PC emulator
|
||||||
|
flatpak = {
|
||||||
|
enable = true; # Flatpak: universal packaging system for Linux
|
||||||
|
packages = {
|
||||||
|
sober.enable = false; # Roblox client
|
||||||
|
warehouse.enable = true; # Flatpak manager
|
||||||
|
flatseal.enable = true; # Flatpak permissions manager
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
Networking
|
||||||
|
*/
|
||||||
|
tailscale.enable = false; # Tailscale: secure network for remote access
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
gamemode.enable = true; # GameMode: optimizes system performance for gaming
|
||||||
|
gamescope.enable = false; # Gamescope: micro‑compositor for games
|
||||||
|
steam.enable = true; # Steam: platform for buying and playing games
|
||||||
|
|
||||||
|
packages = {
|
||||||
|
/*
|
||||||
|
Container & Packaging
|
||||||
|
*/
|
||||||
|
distrobox.enable = false; # Distrobox: containerized development environments
|
||||||
|
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
|
||||||
|
bottles.enable = false; # Bottles: Easy-to-use wineprefix manager
|
||||||
|
|
||||||
|
/*
|
||||||
|
Gaming
|
||||||
|
*/
|
||||||
|
prismlauncher.enable = false; # Prism Launcher: Minecraft modded launcher
|
||||||
|
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
|
||||||
|
ttySolitaire.enable = true; # TTY Solitaire: terminal‑based solitaire game
|
||||||
|
heroic.enable = false; # Native GOG, Epic, and Amazon Games Launcher for Linux, Windows and Mac
|
||||||
|
|
||||||
|
/*
|
||||||
|
Development Tools
|
||||||
|
*/
|
||||||
|
exercism.enable = true; # Exercism: coding practice platform
|
||||||
|
lazygit.enable = false; # Lazygit: simple TUI for Git
|
||||||
|
opencode.enable = false; # OpenCode: tools for coding and development
|
||||||
|
jan.enable = true; # Jan: AI chat UI
|
||||||
|
logisim-evolution.enable = false; # Logisim-Evolution: Digital logic designer and simulator
|
||||||
|
|
||||||
|
/*
|
||||||
|
Communication & Collaboration
|
||||||
|
*/
|
||||||
|
mattermost.enable = true; # Mattermost: open‑source Slack alternative
|
||||||
|
slack.enable = true; # Slack: team communication and collaboration tool
|
||||||
|
tutanota.enable = true; # Tutanota: secure email client
|
||||||
|
signal.enable = true; # Signal: secure messaging app
|
||||||
|
teams.enable = true; # Teams-for-linux: Unofficial Microsoft Teams client for Linux
|
||||||
|
ferdium.enable = false; # Ferdium: All your services in one place built by the community
|
||||||
|
|
||||||
|
/*
|
||||||
|
Productivity / Knowledge Management
|
||||||
|
*/
|
||||||
|
bitwarden.enable = false; # Bitwarden: password manager (desktop)
|
||||||
|
iotas.enable = true; # Iotas: lightweight notes manager
|
||||||
|
logseq.enable = false; # Logseq: knowledge base and outliner
|
||||||
|
|
||||||
|
/*
|
||||||
|
Media & Graphics
|
||||||
|
*/
|
||||||
|
affinity.enable = false; # Affinity: professional graphics suite
|
||||||
|
eyeOfGnome.enable = true; # Eye of GNOME: image viewer
|
||||||
|
freetube.enable = false; # FreeTube: privacy‑friendly YouTube client
|
||||||
|
gimp.enable = false; # GIMP: GNU Image Manipulation Program
|
||||||
|
kdenlive.enable = false; # Kdenlive: video editing software
|
||||||
|
pixieditor.enable = false; # Pixieditor: Universal editor for all your 2D needs
|
||||||
|
plex.enable = true; # Plex: media player and server client
|
||||||
|
|
||||||
|
/*
|
||||||
|
Utilities / Misc
|
||||||
|
*/
|
||||||
|
eddieAirVPN.enable = true; # Eddie AirVPN: VPN client
|
||||||
|
galculator.enable = false; # Galculator: simple calculator
|
||||||
|
gedit.enable = false; # Gedit: GNOME text editor
|
||||||
|
winboat.enable = false; # Winboat: Windows remote desktop via RDP
|
||||||
|
adb.enable = false; # ADB: Android SDK platform tools
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -25,22 +25,11 @@
|
|||||||
|
|
||||||
";
|
";
|
||||||
|
|
||||||
# Waybar Settings
|
|
||||||
clock24h = true;
|
|
||||||
|
|
||||||
# Program Options
|
|
||||||
# Set Default Browser (google-chrome-stable for google-chrome)
|
|
||||||
# This does NOT install your browser
|
|
||||||
# You need to install it by adding it to the `packages.nix`
|
|
||||||
# or as a flatpak
|
|
||||||
browser = "librewolf";
|
|
||||||
|
|
||||||
# Setting it here does not enable it. Kitty is installed by default
|
|
||||||
terminal = "kitty"; # Set Default System Terminal
|
|
||||||
|
|
||||||
keyboardLayout = "pl";
|
keyboardLayout = "pl";
|
||||||
consoleKeyMap = "pl";
|
consoleKeyMap = "pl";
|
||||||
|
|
||||||
|
location = "Warszawa, PL";
|
||||||
|
|
||||||
# For Nvidia Prime support
|
# For Nvidia Prime support
|
||||||
intelID = "PCI:1:0:0";
|
intelID = "PCI:1:0:0";
|
||||||
nvidiaID = "PCI:0:2:0";
|
nvidiaID = "PCI:0:2:0";
|
||||||
@@ -59,44 +48,19 @@
|
|||||||
# This will set your color palette
|
# This will set your color palette
|
||||||
# Default background
|
# Default background
|
||||||
# Add new images to ~/garandos/wallpapers
|
# Add new images to ~/garandos/wallpapers
|
||||||
stylixImage = ../../wallpapers/attack-on-titan-mikasa-ackerman.jpg;
|
stylixImage = "attack-on-titan-mikasa-ackerman.jpg";
|
||||||
#stylixImage = ../../wallpapers/DW_Pacts.jpg;
|
#stylixImage = "DW_Pacts.jpg";
|
||||||
#stylixImage = ../../wallpapers/edward-elric-fullmetal-alchemist.jpg;
|
#stylixImage = "edward-elric-fullmetal-alchemist.jpg";
|
||||||
#stylixImage = ../../wallpapers/fire-nation.jpg;
|
#stylixImage = "fire-nation.jpg";
|
||||||
#stylixImage = ../../wallpapers/four-elements.jpg;
|
#stylixImage = "four-elements.jpg";
|
||||||
#stylixImage = ../../wallpapers/fullmetal-alchemist-5120x2880-10399.png;
|
#stylixImage = "fullmetal-alchemist-5120x2880-10399.png";
|
||||||
#stylixImage = ../../wallpapers/Grounded_Wallpaper_4K.jpg;
|
#stylixImage = "Grounded_Wallpaper_4K.jpg";
|
||||||
#stylixImage = ../../wallpapers/jablon.jpg;
|
#stylixImage = "jablon.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-log-two.jpg;
|
#stylixImage = "rammstein-log-two.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-logo-one.jpg;
|
#stylixImage = "rammstein-logo-one.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-logo-three.jpg;
|
#stylixImage = "rammstein-logo-three.jpg";
|
||||||
#stylixImage = ../../wallpapers/rammstein-one.jpg;
|
#stylixImage = "rammstein-one.jpg";
|
||||||
#stylixImage = ../../wallpapers/1346530.jpeg;
|
#stylixImage = "1346530.jpeg";
|
||||||
|
|
||||||
# Set Waybar
|
|
||||||
# Available Options:
|
|
||||||
waybarChoice = ../../modules/home/waybar/waybar-curved.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-ddubs.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-ddubs-2.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-simple.nix;
|
|
||||||
# Throwback to GarandOS v1.0
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-jerry.nix;
|
|
||||||
# Very colorful and bright colors
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-nekodyke.nix;
|
|
||||||
# DWM styled waybars from Matt at TheLinuxCast
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-dwm.nix;
|
|
||||||
#waybarChoice = ../../modules/home/waybar/waybar-dwm-2.nix;
|
|
||||||
|
|
||||||
# Set Animation style
|
|
||||||
# Available options are:
|
|
||||||
# animations-def.nix (default)
|
|
||||||
# animations-end4.nix (end-4 project very fluid)
|
|
||||||
# animations-dynamic.nix (ml4w project)
|
|
||||||
# animations-moving.nix (ml4w project)
|
|
||||||
animChoice = ../../modules/home/hyprland/animations-def.nix;
|
|
||||||
#animChoice = ../../modules/home/hyprland/animations-end4.nix;
|
|
||||||
#animChoice = ../../modules/home/hyprland/animations-dynamic.nix;
|
|
||||||
#animChoice = ../../modules/home/hyprland/animations-moving.nix;
|
|
||||||
|
|
||||||
# Set network hostId if required (needed for zfs)
|
# Set network hostId if required (needed for zfs)
|
||||||
# Otherwise leave as-is
|
# Otherwise leave as-is
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
programs.auto-cpufreq = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
charger = {
|
|
||||||
governor = "performance";
|
|
||||||
turbo = "auto";
|
|
||||||
};
|
|
||||||
|
|
||||||
battery = {
|
|
||||||
governor = "powersave";
|
|
||||||
turbo = "auto";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -3,13 +3,11 @@
|
|||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
|
|
||||||
{
|
|
||||||
boot = {
|
boot = {
|
||||||
kernelPackages = pkgs.linuxPackages_zen;
|
kernelPackages = pkgs.linuxPackages_zen;
|
||||||
kernelModules = [ "v4l2loopback" ];
|
kernelModules = ["v4l2loopback"];
|
||||||
extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
extraModulePackages = [config.boot.kernelPackages.v4l2loopback];
|
||||||
kernel.sysctl = {
|
kernel.sysctl = {
|
||||||
"vm.max_map_count" = 2147483642;
|
"vm.max_map_count" = 2147483642;
|
||||||
};
|
};
|
||||||
@@ -21,7 +19,7 @@
|
|||||||
wallpapers = [
|
wallpapers = [
|
||||||
./../../wallpapers/attack-on-titan-mikasa-ackerman.jpg
|
./../../wallpapers/attack-on-titan-mikasa-ackerman.jpg
|
||||||
];
|
];
|
||||||
wallpaperStyle = lib.mkDefault "centered";
|
wallpaperStyle = lib.mkForce "centered";
|
||||||
backdrop = "${config.stylix.base16Scheme.base00}";
|
backdrop = "${config.stylix.base16Scheme.base00}";
|
||||||
interface = {
|
interface = {
|
||||||
branding = "GarandOS Bootloader";
|
branding = "GarandOS Bootloader";
|
||||||
|
|||||||
@@ -1,19 +1,17 @@
|
|||||||
{
|
{inputs, ...}: {
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./packages
|
./packages
|
||||||
./auto-cpufreq.nix
|
|
||||||
./boot.nix
|
./boot.nix
|
||||||
|
./docker.nix
|
||||||
./flatpak.nix
|
./flatpak.nix
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
|
./garandos-tui.nix
|
||||||
./hardware.nix
|
./hardware.nix
|
||||||
./network.nix
|
./network.nix
|
||||||
./nfs.nix
|
./nfs.nix
|
||||||
./nh.nix
|
./nh.nix
|
||||||
./printing.nix
|
./printing.nix
|
||||||
|
./quickshell.nix
|
||||||
./greetd.nix
|
./greetd.nix
|
||||||
./security.nix
|
./security.nix
|
||||||
./services.nix
|
./services.nix
|
||||||
@@ -21,9 +19,10 @@
|
|||||||
./stylix.nix
|
./stylix.nix
|
||||||
./syncthing.nix
|
./syncthing.nix
|
||||||
./system.nix
|
./system.nix
|
||||||
|
./tailscale.nix
|
||||||
./thunar.nix
|
./thunar.nix
|
||||||
./user.nix
|
./user.nix
|
||||||
./virtualisation.nix
|
./virtualbox.nix
|
||||||
./xdg.nix
|
./xdg.nix
|
||||||
./xserver.nix
|
./xserver.nix
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
|
|||||||
14
modules/core/docker.nix
Normal file
14
modules/core/docker.nix
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.docker.enable = lib.mkEnableOption "Docker";
|
||||||
|
|
||||||
|
config.virtualisation.docker = lib.mkIf config.docker.enable {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.docker;
|
||||||
|
daemon.settings.dns = ["9.9.9.11" "149.112.112.11"];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,13 +1,28 @@
|
|||||||
_: {
|
{
|
||||||
services = {
|
lib,
|
||||||
flatpak = {
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
mkFlatpakPackage = name: pkgId: {
|
||||||
|
options.flatpak.packages.${name}.enable = lib.mkEnableOption "Flatpak: ${name}";
|
||||||
|
|
||||||
|
config.services.flatpak.packages =
|
||||||
|
lib.mkIf config.flatpak.packages.${name}.enable [pkgId];
|
||||||
|
};
|
||||||
|
|
||||||
|
flatpakPackages = {
|
||||||
|
sober = "org.vinegarhq.Sober";
|
||||||
|
warehouse = "io.github.flattool.Warehouse";
|
||||||
|
flatseal = "com.github.tchx84.Flatseal";
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
options.flatpak.enable = lib.mkEnableOption "Flatpak";
|
||||||
|
|
||||||
|
config.services.flatpak = lib.mkIf config.flatpak.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
packages = [
|
|
||||||
# "org.vinegarhq.Sober"
|
|
||||||
"io.github.flattool.Warehouse"
|
|
||||||
"com.github.tchx84.Flatseal"
|
|
||||||
];
|
|
||||||
update.onActivation = true;
|
update.onActivation = true;
|
||||||
|
packages = [];
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
imports = builtins.attrValues (builtins.mapAttrs mkFlatpakPackage flatpakPackages);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
fonts = {
|
fonts = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
dejavu_fonts
|
dejavu_fonts
|
||||||
|
|||||||
11
modules/core/garandos-tui.nix
Normal file
11
modules/core/garandos-tui.nix
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
host,
|
||||||
|
username,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs.garandos-tui = {
|
||||||
|
enable = true;
|
||||||
|
systemModulesFilePath = "/home/${username}/garandos/hosts/${host}/system-modules.nix";
|
||||||
|
homeModulesFilePath = "/home/${username}/garandos/hosts/${host}/home-modules.nix";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -2,8 +2,7 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
username,
|
username,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
{
|
|
||||||
services.greetd = {
|
services.greetd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
#vt = 3;
|
#vt = 3;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
hardware = {
|
hardware = {
|
||||||
sane = {
|
sane = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraBackends = [ pkgs.sane-airscan ];
|
extraBackends = [pkgs.sane-airscan];
|
||||||
disabledDefaultBackends = [ "escl" ];
|
disabledDefaultBackends = ["escl"];
|
||||||
};
|
};
|
||||||
logitech.wireless = {
|
logitech.wireless = {
|
||||||
enable = false;
|
enable = false;
|
||||||
|
|||||||
@@ -2,11 +2,9 @@
|
|||||||
host,
|
host,
|
||||||
options,
|
options,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) hostId;
|
inherit (import ../../hosts/${host}/variables.nix) hostId;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
# Defensive assertion for hostname validity (clearer message at eval time)
|
# Defensive assertion for hostname validity (clearer message at eval time)
|
||||||
assertions = [
|
assertions = [
|
||||||
{
|
{
|
||||||
@@ -19,7 +17,7 @@ in
|
|||||||
hostName = "${host}";
|
hostName = "${host}";
|
||||||
hostId = hostId;
|
hostId = hostId;
|
||||||
networkmanager.enable = true;
|
networkmanager.enable = true;
|
||||||
timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
timeServers = options.networking.timeServers.default ++ ["pool.ntp.org"];
|
||||||
firewall = {
|
firewall = {
|
||||||
enable = true;
|
enable = true;
|
||||||
allowedTCPPorts = [
|
allowedTCPPorts = [
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
{ host, ... }:
|
{host, ...}: let
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) enableNFS;
|
inherit (import ../../hosts/${host}/variables.nix) enableNFS;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
services = {
|
services = {
|
||||||
rpcbind.enable = enableNFS;
|
rpcbind.enable = enableNFS;
|
||||||
nfs.server.enable = enableNFS;
|
nfs.server.enable = enableNFS;
|
||||||
|
|||||||
@@ -1,8 +1,4 @@
|
|||||||
{
|
{username, ...}: {
|
||||||
username,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
programs.nh = {
|
programs.nh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
clean = {
|
clean = {
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# Communication
|
|
||||||
slack
|
|
||||||
mattermost-desktop
|
|
||||||
# Productivity & Office
|
|
||||||
# bitwarden-desktop
|
|
||||||
tutanota-desktop
|
|
||||||
iotas
|
|
||||||
# logseq
|
|
||||||
# Utilities
|
|
||||||
galculator
|
|
||||||
gedit
|
|
||||||
eddie
|
|
||||||
gnome-text-editor
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,14 +1,8 @@
|
|||||||
{ ... }:
|
_: {
|
||||||
{
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
imports = [
|
imports = [
|
||||||
|
./essentials.nix
|
||||||
|
./packages.nix
|
||||||
./programs.nix
|
./programs.nix
|
||||||
./clients.nix
|
|
||||||
./development.nix
|
|
||||||
./gaming.nix
|
|
||||||
./multimedia.nix
|
|
||||||
./terminal.nix
|
|
||||||
./tools.nix
|
|
||||||
./virtualization.nix
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# Learning & practice
|
|
||||||
exercism
|
|
||||||
# AI coding
|
|
||||||
opencode
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,11 +1,18 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
|
mpv
|
||||||
|
pavucontrol
|
||||||
|
playerctl
|
||||||
|
cmatrix
|
||||||
|
cowsay
|
||||||
|
sl
|
||||||
|
fortune
|
||||||
# File management
|
# File management
|
||||||
trash-cli
|
trash-cli
|
||||||
file-roller
|
file-roller
|
||||||
unrar
|
unrar
|
||||||
unzip
|
unzip
|
||||||
|
p7zip
|
||||||
# System monitoring & info
|
# System monitoring & info
|
||||||
inxi
|
inxi
|
||||||
lm_sensors
|
lm_sensors
|
||||||
@@ -46,5 +53,20 @@
|
|||||||
hunspell
|
hunspell
|
||||||
hunspellDicts.pl_PL
|
hunspellDicts.pl_PL
|
||||||
hunspellDicts.en_US
|
hunspellDicts.en_US
|
||||||
|
# Noctalia Shell Dependencies
|
||||||
|
matugen
|
||||||
|
app2unit
|
||||||
|
gpu-screen-recorder
|
||||||
|
# hyprland
|
||||||
|
swww
|
||||||
|
grim
|
||||||
|
slurp
|
||||||
|
wl-clipboard
|
||||||
|
swappy
|
||||||
|
ydotool
|
||||||
|
hyprpolkitagent
|
||||||
|
hyprland-qtutils # needed for banners and ANR messages
|
||||||
|
# pyprland
|
||||||
|
pyprland
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
# inputs,
|
|
||||||
# system,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# inputs.prismlauncher-cracked.packages.${system}.default
|
|
||||||
space-cadet-pinball
|
|
||||||
tty-solitaire
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
# inputs,
|
|
||||||
# system,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# Video & image processing
|
|
||||||
ffmpeg
|
|
||||||
ffmpegthumbnailer
|
|
||||||
mpv
|
|
||||||
# gimp3
|
|
||||||
# inputs.affinity-nix.packages.${system}.v3
|
|
||||||
eog
|
|
||||||
# kdePackages.kdenlive
|
|
||||||
# Audio
|
|
||||||
rhythmbox
|
|
||||||
plexamp
|
|
||||||
picard
|
|
||||||
pavucontrol
|
|
||||||
playerctl
|
|
||||||
# Media downloaders & clients
|
|
||||||
# freetube
|
|
||||||
# ytmdl
|
|
||||||
];
|
|
||||||
}
|
|
||||||
56
modules/core/packages/packages.nix
Normal file
56
modules/core/packages/packages.nix
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
mkPackage = name: pkgsOrList: {
|
||||||
|
options.packages.${name}.enable = lib.mkEnableOption name;
|
||||||
|
config.environment.systemPackages =
|
||||||
|
lib.mkIf config.packages.${name}.enable
|
||||||
|
(lib.toList pkgsOrList);
|
||||||
|
};
|
||||||
|
|
||||||
|
packages = with pkgs; {
|
||||||
|
bitwarden = bitwarden-desktop;
|
||||||
|
eddieAirVPN = eddie;
|
||||||
|
galculator = galculator;
|
||||||
|
gedit = gedit;
|
||||||
|
iotas = iotas;
|
||||||
|
logseq = logseq;
|
||||||
|
mattermost = mattermost-desktop;
|
||||||
|
slack = slack;
|
||||||
|
tutanota = tutanota-desktop;
|
||||||
|
exercism = exercism;
|
||||||
|
opencode = opencode;
|
||||||
|
jan = jan;
|
||||||
|
lazygit = lazygit;
|
||||||
|
prismlauncher = inputs.prismlauncher-cracked.packages.${system}.default;
|
||||||
|
spaceCadetPinball = space-cadet-pinball;
|
||||||
|
ttySolitaire = tty-solitaire;
|
||||||
|
gimp = gimp;
|
||||||
|
affinity = inputs.affinity-nix.packages.${system}.v3;
|
||||||
|
eyeOfGnome = eog;
|
||||||
|
kdenlive = kdePackages.kdenlive;
|
||||||
|
plex = [
|
||||||
|
(plex-desktop.override {extraEnv = {QT_QPA_PLATFORM = "xcb";};})
|
||||||
|
plexamp
|
||||||
|
];
|
||||||
|
freetube = freetube;
|
||||||
|
lazydocker = lazydocker;
|
||||||
|
distrobox = [distrobox pkgs.boxbuddy];
|
||||||
|
winboat = [winboat freerdp];
|
||||||
|
signal = signal-desktop;
|
||||||
|
pixieditor = pixieditor;
|
||||||
|
bottles = bottles;
|
||||||
|
heroic = heroic;
|
||||||
|
adb = android-tools;
|
||||||
|
teams = teams-for-linux;
|
||||||
|
ferdium = ferdium;
|
||||||
|
logisim-evolution = logisim-evolution;
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
imports = builtins.attrValues (builtins.mapAttrs mkPackage packages);
|
||||||
|
}
|
||||||
@@ -1,8 +1,4 @@
|
|||||||
{
|
_: {
|
||||||
# pkgs
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
programs = {
|
programs = {
|
||||||
nano.enable = true;
|
nano.enable = true;
|
||||||
hyprland = {
|
hyprland = {
|
||||||
@@ -13,8 +9,6 @@
|
|||||||
seahorse.enable = true;
|
seahorse.enable = true;
|
||||||
fuse.userAllowOther = true;
|
fuse.userAllowOther = true;
|
||||||
mtr.enable = true;
|
mtr.enable = true;
|
||||||
adb.enable = true;
|
|
||||||
hyprlock.enable = true;
|
|
||||||
gnupg.agent = {
|
gnupg.agent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableSSHSupport = true;
|
enableSSHSupport = true;
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
cmatrix
|
|
||||||
cowsay
|
|
||||||
sl
|
|
||||||
fortune
|
|
||||||
lolcat
|
|
||||||
eza
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
virt-viewer
|
|
||||||
# lazydocker
|
|
||||||
docker-client
|
|
||||||
# distrobox
|
|
||||||
# boxbuddy
|
|
||||||
# freerdp
|
|
||||||
# winboat
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,8 +1,6 @@
|
|||||||
{ host, ... }:
|
{host, ...}: let
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) printEnable;
|
inherit (import ../../hosts/${host}/variables.nix) printEnable;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
services = {
|
services = {
|
||||||
printing = {
|
printing = {
|
||||||
enable = printEnable;
|
enable = printEnable;
|
||||||
|
|||||||
30
modules/core/quickshell.nix
Normal file
30
modules/core/quickshell.nix
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
environment = {
|
||||||
|
systemPackages = with pkgs; [
|
||||||
|
quickshell
|
||||||
|
|
||||||
|
# Qt6 related kits(for slove Qt5Compat problem)
|
||||||
|
qt6.qt5compat
|
||||||
|
qt6.qtbase
|
||||||
|
qt6.qtquick3d
|
||||||
|
qt6.qtwayland
|
||||||
|
qt6.qtdeclarative
|
||||||
|
qt6.qtsvg
|
||||||
|
|
||||||
|
# alternate options
|
||||||
|
# libsForQt5.qt5compat
|
||||||
|
kdePackages.qt5compat
|
||||||
|
libsForQt5.qt5.qtgraphicaleffects
|
||||||
|
];
|
||||||
|
# necessary environment variables
|
||||||
|
variables = {
|
||||||
|
QML_IMPORT_PATH = "${pkgs.qt6.qt5compat}/lib/qt-6/qml:${pkgs.qt6.qtbase}/lib/qt-6/qml";
|
||||||
|
QML2_IMPORT_PATH = "${pkgs.qt6.qt5compat}/lib/qt-6/qml:${pkgs.qt6.qtbase}/lib/qt-6/qml";
|
||||||
|
};
|
||||||
|
# make sure the Qt application is working properly
|
||||||
|
sessionVariables = {
|
||||||
|
QT_QPA_PLATFORM = "wayland;xcb";
|
||||||
|
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
{ profile, ... }:
|
|
||||||
{
|
{
|
||||||
|
profile,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
# Services to start
|
# Services to start
|
||||||
services = {
|
services = {
|
||||||
libinput.enable = true; # Input Handling
|
libinput.enable = true; # Input Handling
|
||||||
@@ -12,14 +15,18 @@
|
|||||||
PasswordAuthentication = true; # Users can SSH using kb and password
|
PasswordAuthentication = true; # Users can SSH using kb and password
|
||||||
KbdInteractiveAuthentication = true;
|
KbdInteractiveAuthentication = true;
|
||||||
};
|
};
|
||||||
ports = [ 22 ];
|
ports = [22];
|
||||||
};
|
};
|
||||||
blueman.enable = true; # Bluetooth Support
|
|
||||||
tumbler.enable = true; # Image/video preview
|
tumbler.enable = true; # Image/video preview
|
||||||
gnome.gnome-keyring.enable = true;
|
gnome = {
|
||||||
|
gnome-keyring.enable = true;
|
||||||
|
evolution-data-server.enable = true;
|
||||||
|
};
|
||||||
smartd = {
|
smartd = {
|
||||||
enable = if profile == "vm" then false else true;
|
enable =
|
||||||
|
if profile == "vm"
|
||||||
|
then false
|
||||||
|
else true;
|
||||||
autodetect = true;
|
autodetect = true;
|
||||||
};
|
};
|
||||||
pipewire = {
|
pipewire = {
|
||||||
@@ -51,5 +58,13 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
upower = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.upower;
|
||||||
|
};
|
||||||
|
power-profiles-daemon = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.power-profiles-daemon;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,43 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
programs = {
|
pkgs,
|
||||||
steam = {
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options = {
|
||||||
|
steam.enable = lib.mkEnableOption "Steam";
|
||||||
|
gamescope.enable = lib.mkEnableOption "Gamescope";
|
||||||
|
gamemode.enable = lib.mkEnableOption "Gamemode";
|
||||||
|
};
|
||||||
|
|
||||||
|
config.programs = {
|
||||||
|
steam = lib.mkIf config.steam.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = pkgs.steam;
|
||||||
remotePlay.openFirewall = true;
|
remotePlay.openFirewall = true;
|
||||||
dedicatedServer.openFirewall = true;
|
dedicatedServer.openFirewall = true;
|
||||||
gamescopeSession.enable = true;
|
gamescopeSession = lib.mkIf config.gamescope.enable {
|
||||||
extraCompatPackages = [ pkgs.proton-ge-bin ];
|
enable = true;
|
||||||
|
args = [
|
||||||
|
"--rt"
|
||||||
|
"--expose-wayland"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
extraCompatPackages = [pkgs.proton-ge-bin];
|
||||||
|
};
|
||||||
|
|
||||||
|
gamescope = lib.mkIf config.gamescope.enable {
|
||||||
|
enable = true;
|
||||||
|
capSysNice = true;
|
||||||
|
args = [
|
||||||
|
"--rt"
|
||||||
|
"--expose-wayland"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
gamemode = lib.mkIf config.gamemode.enable {
|
||||||
|
enable = true;
|
||||||
|
enableRenice = true;
|
||||||
};
|
};
|
||||||
# gamescope = {
|
|
||||||
# enable = true;
|
|
||||||
# capSysNice = true;
|
|
||||||
# args = [
|
|
||||||
# "--rt"
|
|
||||||
# "--expose-wayland"
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
gamemode.enable = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,33 +2,13 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
host,
|
host,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) stylixImage;
|
inherit (import ../../hosts/${host}/variables.nix) stylixImage;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
# Styling Options
|
# Styling Options
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
image = stylixImage;
|
image = ../../wallpapers/${stylixImage};
|
||||||
# base16Scheme = {
|
|
||||||
# base00 = "282936";
|
|
||||||
# base01 = "3a3c4e";
|
|
||||||
# base02 = "4d4f68";
|
|
||||||
# base03 = "626483";
|
|
||||||
# base04 = "62d6e8";
|
|
||||||
# base05 = "e9e9f4";
|
|
||||||
# base06 = "f1f2f8";
|
|
||||||
# base07 = "f7f7fb";
|
|
||||||
# base08 = "ea51b2";
|
|
||||||
# base09 = "b45bcf";
|
|
||||||
# base0A = "00f769";
|
|
||||||
# base0B = "ebff87";
|
|
||||||
# base0C = "a1efe4";
|
|
||||||
# base0D = "62d6e8";
|
|
||||||
# base0E = "b45bcf";
|
|
||||||
# base0F = "00f769";
|
|
||||||
# };
|
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
opacity.terminal = 1.0;
|
opacity.terminal = 1.0;
|
||||||
cursor = {
|
cursor = {
|
||||||
@@ -38,16 +18,16 @@ in
|
|||||||
};
|
};
|
||||||
fonts = {
|
fonts = {
|
||||||
monospace = {
|
monospace = {
|
||||||
package = pkgs.nerd-fonts.jetbrains-mono;
|
package = pkgs.nerd-fonts.fira-mono;
|
||||||
name = "JetBrains Mono";
|
name = "FiraCode Nerd Font Mono";
|
||||||
};
|
};
|
||||||
sansSerif = {
|
sansSerif = {
|
||||||
package = pkgs.montserrat;
|
package = pkgs.nerd-fonts.fira-code;
|
||||||
name = "Montserrat";
|
name = "FiraCode Nerd Font Propo";
|
||||||
};
|
};
|
||||||
serif = {
|
serif = {
|
||||||
package = pkgs.montserrat;
|
package = pkgs.nerd-fonts.fira-code;
|
||||||
name = "Montserrat";
|
name = "FiraCode Nerd Font";
|
||||||
};
|
};
|
||||||
sizes = {
|
sizes = {
|
||||||
applications = 12;
|
applications = 12;
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
{ username, ... }:
|
{username, ...}: {
|
||||||
{
|
|
||||||
services.syncthing = {
|
services.syncthing = {
|
||||||
enable = false;
|
enable = false;
|
||||||
user = "${username}";
|
user = "${username}";
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
{ host, ... }:
|
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) consoleKeyMap;
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
|
host,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (import ../../hosts/${host}/variables.nix) consoleKeyMap;
|
||||||
|
in {
|
||||||
nix = {
|
nix = {
|
||||||
|
nixPath = ["nixpkgs=${inputs.nixpkgs}"];
|
||||||
settings = {
|
settings = {
|
||||||
download-buffer-size = 200000000;
|
download-buffer-size = 200000000;
|
||||||
auto-optimise-store = true;
|
auto-optimise-store = true;
|
||||||
@@ -11,13 +14,14 @@ in
|
|||||||
"nix-command"
|
"nix-command"
|
||||||
"flakes"
|
"flakes"
|
||||||
];
|
];
|
||||||
substituters = [ "https://hyprland.cachix.org" ];
|
substituters = ["https://hyprland.cachix.org"];
|
||||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
time.timeZone = "Europe/Warsaw";
|
time.timeZone = "Europe/Warsaw";
|
||||||
i18n.defaultLocale = "pl_PL.UTF-8";
|
i18n = {
|
||||||
i18n.extraLocaleSettings = {
|
defaultLocale = "pl_PL.UTF-8";
|
||||||
|
extraLocaleSettings = {
|
||||||
LC_ADDRESS = "pl_PL.UTF-8";
|
LC_ADDRESS = "pl_PL.UTF-8";
|
||||||
LC_IDENTIFICATION = "pl_PL.UTF-8";
|
LC_IDENTIFICATION = "pl_PL.UTF-8";
|
||||||
LC_MEASUREMENT = "pl_PL.UTF-8";
|
LC_MEASUREMENT = "pl_PL.UTF-8";
|
||||||
@@ -28,6 +32,7 @@ in
|
|||||||
LC_TELEPHONE = "pl_PL.UTF-8";
|
LC_TELEPHONE = "pl_PL.UTF-8";
|
||||||
LC_TIME = "pl_PL.UTF-8";
|
LC_TIME = "pl_PL.UTF-8";
|
||||||
};
|
};
|
||||||
|
};
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
NIXOS_OZONE_WL = "1";
|
NIXOS_OZONE_WL = "1";
|
||||||
GARANDOS_VERSION = "1.0";
|
GARANDOS_VERSION = "1.0";
|
||||||
|
|||||||
14
modules/core/tailscale.nix
Normal file
14
modules/core/tailscale.nix
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.tailscale.enable = lib.mkEnableOption "Tailscale";
|
||||||
|
|
||||||
|
config.services.tailscale = lib.mkIf config.tailscale.enable {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.tailscale;
|
||||||
|
openFirewall = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,15 +1,9 @@
|
|||||||
{
|
{pkgs, ...}: {
|
||||||
pkgs,
|
programs.thunar = {
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
programs = {
|
|
||||||
thunar = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
plugins = with pkgs.xfce; [
|
plugins = with pkgs; [
|
||||||
thunar-archive-plugin
|
thunar-archive-plugin
|
||||||
thunar-volman
|
thunar-volman
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,12 +6,10 @@
|
|||||||
profile,
|
profile,
|
||||||
system,
|
system,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) gitUsername;
|
inherit (import ../../hosts/${host}/variables.nix) gitUsername;
|
||||||
in
|
in {
|
||||||
{
|
imports = [inputs.home-manager.nixosModules.home-manager];
|
||||||
imports = [ inputs.home-manager.nixosModules.home-manager ];
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
useGlobalPkgs = false;
|
useGlobalPkgs = false;
|
||||||
@@ -26,16 +24,21 @@ in
|
|||||||
;
|
;
|
||||||
};
|
};
|
||||||
users.${username} = {
|
users.${username} = {
|
||||||
imports = [ ./../home ];
|
imports = [
|
||||||
|
./../home
|
||||||
|
../../hosts/${host}/home-modules.nix
|
||||||
|
inputs.noctalia.homeModules.default
|
||||||
|
];
|
||||||
home = {
|
home = {
|
||||||
username = "${username}";
|
username = "${username}";
|
||||||
homeDirectory = "/home/${username}";
|
homeDirectory = "/home/${username}";
|
||||||
stateVersion = "23.11";
|
stateVersion = "25.11";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
users.mutableUsers = true;
|
users = {
|
||||||
users.users.${username} = {
|
mutableUsers = true;
|
||||||
|
users.${username} = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "${gitUsername}";
|
description = "${gitUsername}";
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
@@ -45,12 +48,14 @@ in
|
|||||||
"lp"
|
"lp"
|
||||||
"networkmanager"
|
"networkmanager"
|
||||||
"scanner"
|
"scanner"
|
||||||
"wheel" # subdo access
|
"wheel" # sudo access
|
||||||
"vboxusers" # Virtual Box
|
"vboxusers" # Virtual Box
|
||||||
"gamemode"
|
"gamemode"
|
||||||
];
|
];
|
||||||
shell = pkgs.bash;
|
shell = pkgs.bash;
|
||||||
ignoreShellProgramCheck = true;
|
ignoreShellProgramCheck = true;
|
||||||
|
linger = true;
|
||||||
};
|
};
|
||||||
nix.settings.allowed-users = [ "${username}" ];
|
};
|
||||||
|
nix.settings.allowed-users = ["${username}"];
|
||||||
}
|
}
|
||||||
|
|||||||
17
modules/core/virtualbox.nix
Normal file
17
modules/core/virtualbox.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.virtualbox.enable = lib.mkEnableOption "Enable VirtualBox";
|
||||||
|
|
||||||
|
config.virtualisation.virtualbox.host = lib.mkIf config.virtualbox.enable {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.virtualbox;
|
||||||
|
enableKvm = true;
|
||||||
|
enableHardening = true;
|
||||||
|
enableExtensionPack = false;
|
||||||
|
addNetworkInterface = false;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
# Only enable either docker or podman -- Not both
|
|
||||||
virtualisation = {
|
|
||||||
docker.enable = true;
|
|
||||||
podman.enable = false;
|
|
||||||
libvirtd.enable = true;
|
|
||||||
|
|
||||||
virtualbox.host = {
|
|
||||||
enable = false;
|
|
||||||
enableExtensionPack = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.virt-manager.enable = false;
|
|
||||||
}
|
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wlr.enable = true;
|
wlr.enable = true;
|
||||||
@@ -7,6 +6,7 @@
|
|||||||
xdg-desktop-portal-hyprland
|
xdg-desktop-portal-hyprland
|
||||||
xdg-desktop-portal-gtk
|
xdg-desktop-portal-gtk
|
||||||
];
|
];
|
||||||
configPackages = [ pkgs.hyprland ];
|
configPackages = [pkgs.hyprland];
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
{ host, ... }:
|
{host, ...}: let
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) keyboardLayout;
|
inherit (import ../../hosts/${host}/variables.nix) keyboardLayout;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
xkb = {
|
xkb = {
|
||||||
|
|||||||
@@ -4,18 +4,16 @@
|
|||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib; let
|
||||||
let
|
|
||||||
cfg = config.drivers.amdgpu;
|
cfg = config.drivers.amdgpu;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
options.drivers.amdgpu = {
|
options.drivers.amdgpu = {
|
||||||
enable = mkEnableOption "Enable AMD Drivers";
|
enable = mkEnableOption "Enable AMD Drivers";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
systemd.tmpfiles.rules = [ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" ];
|
systemd.tmpfiles.rules = ["L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}"];
|
||||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
services.xserver.videoDrivers = ["amdgpu"];
|
||||||
environment.systemPackages = with pkgs; [ rocmPackages.rocm-smi ];
|
environment.systemPackages = with pkgs; [rocmPackages.rocm-smi];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,4 @@
|
|||||||
{
|
{...}: {
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./amd-drivers.nix
|
./amd-drivers.nix
|
||||||
./intel-drivers.nix
|
./intel-drivers.nix
|
||||||
|
|||||||
@@ -4,11 +4,9 @@
|
|||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib; let
|
||||||
let
|
|
||||||
cfg = config.drivers.intel;
|
cfg = config.drivers.intel;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
options.drivers.intel = {
|
options.drivers.intel = {
|
||||||
enable = mkEnableOption "Enable Intel Graphics Drivers";
|
enable = mkEnableOption "Enable Intel Graphics Drivers";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -4,14 +4,12 @@
|
|||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib; let
|
||||||
let
|
|
||||||
cfg = config.local.hardware-clock;
|
cfg = config.local.hardware-clock;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
options.local.hardware-clock = {
|
options.local.hardware-clock = {
|
||||||
enable = mkEnableOption "Change Hardware Clock To Local Time";
|
enable = mkEnableOption "Change Hardware Clock To Local Time";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable { time.hardwareClockInLocalTime = true; };
|
config = mkIf cfg.enable {time.hardwareClockInLocalTime = true;};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,18 +4,16 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib; let
|
||||||
let
|
|
||||||
cfg = config.drivers.nvidia;
|
cfg = config.drivers.nvidia;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
options.drivers.nvidia = {
|
options.drivers.nvidia = {
|
||||||
enable = mkEnableOption "Enable Nvidia Drivers";
|
enable = mkEnableOption "Enable Nvidia Drivers";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
services.xserver.videoDrivers = ["nvidia"];
|
||||||
environment.systemPackages = with pkgs; [ nvidia-docker ];
|
environment.systemPackages = with pkgs; [nvidia-docker];
|
||||||
hardware = {
|
hardware = {
|
||||||
nvidia-container-toolkit.enable = true;
|
nvidia-container-toolkit.enable = true;
|
||||||
nvidia = {
|
nvidia = {
|
||||||
@@ -38,12 +36,11 @@ in
|
|||||||
# accessible via `nvidia-settings`.
|
# accessible via `nvidia-settings`.
|
||||||
nvidiaSettings = true;
|
nvidiaSettings = true;
|
||||||
# Optionally, you may need to select the appropriate driver version for your specific GPU.
|
# Optionally, you may need to select the appropriate driver version for your specific GPU.
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
package = config.boot.kernelPackages.nvidiaPackages.beta;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
# Making nvidia docker toolkit work:
|
# Making nvidia docker toolkit work:
|
||||||
#
|
#
|
||||||
# sudo nvidia-ctk cdi generate --output=/etc/cdi/nvidia.yaml
|
# sudo nvidia-ctk cdi generate --output=/etc/cdi/nvidia.yaml
|
||||||
@@ -59,3 +56,4 @@ in
|
|||||||
# EOF
|
# EOF
|
||||||
#
|
#
|
||||||
# docker run --device nvidia.com/gpu=all
|
# docker run --device nvidia.com/gpu=all
|
||||||
|
|
||||||
|
|||||||
@@ -4,11 +4,9 @@
|
|||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib; let
|
||||||
let
|
|
||||||
cfg = config.drivers.nvidia-prime;
|
cfg = config.drivers.nvidia-prime;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
options.drivers.nvidia-prime = {
|
options.drivers.nvidia-prime = {
|
||||||
enable = mkEnableOption "Enable Nvidia Prime Hybrid GPU Offload";
|
enable = mkEnableOption "Enable Nvidia Prime Hybrid GPU Offload";
|
||||||
intelBusID = mkOption {
|
intelBusID = mkOption {
|
||||||
|
|||||||
@@ -4,11 +4,9 @@
|
|||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib; let
|
||||||
let
|
|
||||||
cfg = config.vm.guest-services;
|
cfg = config.vm.guest-services;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
options.vm.guest-services = {
|
options.vm.guest-services = {
|
||||||
enable = mkEnableOption "Enable Virtual Machine Guest Services";
|
enable = mkEnableOption "Enable Virtual Machine Guest Services";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,6 +1,13 @@
|
|||||||
{ pkgs, username, ... }:
|
|
||||||
{
|
{
|
||||||
programs.anki = {
|
pkgs,
|
||||||
|
username,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.anki.enable = lib.mkEnableOption "Anki";
|
||||||
|
|
||||||
|
config.programs.anki = lib.mkIf config.anki.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.anki;
|
package = pkgs.anki;
|
||||||
language = "pl_PL";
|
language = "pl_PL";
|
||||||
|
|||||||
@@ -1,127 +0,0 @@
|
|||||||
{ host, username, ... }:
|
|
||||||
{
|
|
||||||
programs.bash = {
|
|
||||||
shellAliases = {
|
|
||||||
# GarandOS aliases
|
|
||||||
pullos = "git -C /home/${username}/garandos pull";
|
|
||||||
upd = "nh os switch --hostname ${host}";
|
|
||||||
upg = "nh os switch --hostname ${host} --update";
|
|
||||||
upf = "sudo nix flake update";
|
|
||||||
upd-bt = "nh os boot --hostname ${host}";
|
|
||||||
upd-ts = "nh os test --hostname ${host}";
|
|
||||||
upd-bd = "nh os build --hostname ${host}";
|
|
||||||
ncg = "nh clean all";
|
|
||||||
|
|
||||||
# Development aliases
|
|
||||||
srvenv = "source .venv/bin/activate";
|
|
||||||
"..srvenv" = "source ../.venv/bin/activate";
|
|
||||||
pm = "uv run manage.py";
|
|
||||||
f8 = "uv run flake8 .";
|
|
||||||
bbr = "bun --bun run";
|
|
||||||
mkgidf = "git add . --intent-to-add . && git diff > git-diff.txt";
|
|
||||||
zed = "MANGOHUD=0 /home/${username}/.local/bin/zed";
|
|
||||||
|
|
||||||
# Development aliases for nix flake
|
|
||||||
nd = "nix develop";
|
|
||||||
nb = "nix build";
|
|
||||||
nr = "nix run";
|
|
||||||
nbr = "nix build && nix run";
|
|
||||||
nbd = "nix build .#develop";
|
|
||||||
nrd = "nix run .#develop";
|
|
||||||
nbrd = "nix build .#develop && nix run .#develop";
|
|
||||||
|
|
||||||
# System aliases
|
|
||||||
# flush-codium = "sudo killall codium && sudo rm -rf ~/.config/VSCodium/Cache && sudo rm -rf ~/.config/VSCodium/CachedData";
|
|
||||||
kys = "shutdown now";
|
|
||||||
ookla = "speedtest";
|
|
||||||
hypr-cli = "hyprctl clients";
|
|
||||||
|
|
||||||
# Navigation aliases
|
|
||||||
"~" = "cd ~";
|
|
||||||
".." = "cd ..";
|
|
||||||
"..." = "cd ../..";
|
|
||||||
"...." = "cd ../../..";
|
|
||||||
"....." = "cd ../../../..";
|
|
||||||
|
|
||||||
# Modifies commands
|
|
||||||
cat = "bat";
|
|
||||||
cp = "cp -i";
|
|
||||||
mv = "mv -i";
|
|
||||||
rm = "trash -v";
|
|
||||||
mkdir = "mkdir -p";
|
|
||||||
ps = "ps auxf";
|
|
||||||
ping = "ping -c 10";
|
|
||||||
less = "less -R";
|
|
||||||
cls = "clear";
|
|
||||||
multitail = "multitail --no-repeat -c";
|
|
||||||
freshclam = "sudo freshclam";
|
|
||||||
|
|
||||||
# Alias"s for multiple directory listing commands
|
|
||||||
la = "eza -alh --icons"; # show hidden files
|
|
||||||
ls = "eza -aF --icons --color=always"; # add colors and file type extensions
|
|
||||||
lx = "eza -lh --icons --sort=extension"; # sort by extension
|
|
||||||
lk = "eza -lh --icons --sort=size --reverse"; # sort by size
|
|
||||||
lc = "eza -lh --icons --sort=changed"; # sort by change time
|
|
||||||
lu = "eza -lh --icons --sort=accessed"; # sort by access time
|
|
||||||
lr = "eza -lh --icons --recurse"; # recursive ls
|
|
||||||
lt = "eza -lh --icons --sort=modified"; # sort by date
|
|
||||||
lm = "eza -alh --icons | more"; # pipe through "more"
|
|
||||||
lw = "eza -xh --icons"; # wide listing format
|
|
||||||
ll = "eza -lh --icons"; # long listing format
|
|
||||||
labc = "eza -lah --icons --sort=name"; # alphabetical sort
|
|
||||||
lf = "eza -lh --icons | grep -v '^d'"; # files only (przybliżenie)
|
|
||||||
ldir = "eza -lh --icons --only-dirs"; # directories only
|
|
||||||
lla = "eza -alh --icons"; # List and Hidden Files
|
|
||||||
las = "eza -a --icons"; # Hidden Files
|
|
||||||
lls = "eza -lh --icons"; # List
|
|
||||||
|
|
||||||
# chmod commands
|
|
||||||
mx = "chmod a+x";
|
|
||||||
"000" = "chmod -R 000";
|
|
||||||
"644" = "chmod -R 644";
|
|
||||||
"666" = "chmod -R 666";
|
|
||||||
"755" = "chmod -R 755";
|
|
||||||
"777" = "chmod -R 777";
|
|
||||||
|
|
||||||
# Search command line history
|
|
||||||
h = "history | grep ";
|
|
||||||
|
|
||||||
# Search running processes
|
|
||||||
p = "ps aux | grep ";
|
|
||||||
topcpu = "/bin/ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10";
|
|
||||||
|
|
||||||
# Search files in the current folder
|
|
||||||
f = "find . | grep ";
|
|
||||||
|
|
||||||
# Count all files (recursively) in the current folder
|
|
||||||
countfiles = "for t in files links directories; do echo \`find . -type \${t:0:1} | wc -l\` \$t; done 2> /dev/null";
|
|
||||||
|
|
||||||
# Alias"s to show disk space and space used in a folder
|
|
||||||
diskspace = "du -S | sort -n -r |more";
|
|
||||||
folders = "du -h --max-depth=1";
|
|
||||||
folderssort = "find . -maxdepth 1 -type d -print0 | xargs -0 du -sk | sort -rn";
|
|
||||||
tree = "tree -CAhF --dirsfirst";
|
|
||||||
treed = "tree -CAFd";
|
|
||||||
mountedinfo = "df -hT";
|
|
||||||
|
|
||||||
# Show all logs in /var/log
|
|
||||||
logs = "sudo find /var/log -type f -exec file {} \; | grep 'text' | cut -d' ' -f1 | sed -e's/:$//g' | grep -v '[0-9]$' | xargs tail -f";
|
|
||||||
|
|
||||||
# fix kitty ssh connection
|
|
||||||
kssh = "kitty +kitten ssh";
|
|
||||||
|
|
||||||
docker-clean = "docker container prune -f ; docker image prune -f ; docker network prune -f ; docker volume prune -f";
|
|
||||||
|
|
||||||
# Remove a directory and all files
|
|
||||||
rmd = "/bin/rm --recursive --force --verbose ";
|
|
||||||
|
|
||||||
# Fun aliases
|
|
||||||
pasjans = "ttysolitaire -p 10 --no-background-color";
|
|
||||||
fc = "fortune | cowsay";
|
|
||||||
|
|
||||||
# Network aliases
|
|
||||||
kssh-server = "kssh garand_plg@192.168.1.156 -i ~/.ssh/hp-t640-homeserver";
|
|
||||||
ssh-server = "ssh garand_plg@192.168.1.156 -i ~/.ssh/hp-t640-homeserver";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,146 +0,0 @@
|
|||||||
_: {
|
|
||||||
programs.bash = {
|
|
||||||
bashrcExtra = ''
|
|
||||||
# Quick directory creation and navigation
|
|
||||||
mkcd() {
|
|
||||||
mkdir -p "$1" && cd "$1"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Extract various archive formats
|
|
||||||
extract() {
|
|
||||||
for archive in "$@"; do
|
|
||||||
if [ -f "$archive" ]; then
|
|
||||||
case "$archive" in
|
|
||||||
*.tar.bz2) tar xvjf "$archive" ;;
|
|
||||||
*.tar.gz) tar xvzf "$archive" ;;
|
|
||||||
*.bz2) bunzip2 "$archive" ;;
|
|
||||||
*.rar) unrar x "$archive" ;;
|
|
||||||
*.gz) gunzip "$archive" ;;
|
|
||||||
*.tar) tar xvf "$archive" ;;
|
|
||||||
*.tbz2) tar xvjf "$archive" ;;
|
|
||||||
*.tgz) tar xvzf "$archive" ;;
|
|
||||||
*.zip) unzip "$archive" ;;
|
|
||||||
*.Z) uncompress "$archive" ;;
|
|
||||||
*.7z) 7z x "$archive" ;;
|
|
||||||
*) echo "don't know how to extract '$archive'..." ;;
|
|
||||||
esac
|
|
||||||
else
|
|
||||||
echo "'$archive' is not a valid file!"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
# Find files quickly
|
|
||||||
ff() {
|
|
||||||
find . -name "*$1*" -type f
|
|
||||||
}
|
|
||||||
|
|
||||||
# Find directories quickly
|
|
||||||
fd() {
|
|
||||||
find . -name "*$1*" -type d
|
|
||||||
}
|
|
||||||
|
|
||||||
# IP address lookup
|
|
||||||
alias whatismyip="whatsmyip"
|
|
||||||
function whatsmyip () {
|
|
||||||
# Internal IP Lookup.
|
|
||||||
if command -v ip &> /dev/null; then
|
|
||||||
echo -n "Internal IP: "
|
|
||||||
ip addr show wlan0 | grep "inet " | awk '{print $2}' | cut -d/ -f1
|
|
||||||
else
|
|
||||||
echo -n "Internal IP: "
|
|
||||||
ifconfig wlan0 | grep "inet " | awk '{print $2}'
|
|
||||||
fi
|
|
||||||
|
|
||||||
# External IP Lookup
|
|
||||||
echo -n "External IP: "
|
|
||||||
curl -4 ifconfig.me
|
|
||||||
}
|
|
||||||
|
|
||||||
# Searches for text in all files in the current folder
|
|
||||||
ftext() {
|
|
||||||
# -i case-insensitive
|
|
||||||
# -I ignore binary files
|
|
||||||
# -H causes filename to be printed
|
|
||||||
# -r recursive search
|
|
||||||
# -n causes line number to be printed
|
|
||||||
# optional: -F treat search term as a literal, not a regular expression
|
|
||||||
# optional: -l only print filenames and not the matching lines ex. grep -irl "$1" *
|
|
||||||
grep -iIHrn --color=always "$1" . | less -r
|
|
||||||
}
|
|
||||||
|
|
||||||
# Copy file with a progress bar
|
|
||||||
cpp() {
|
|
||||||
set -e
|
|
||||||
strace -q -ewrite cp -- "$1" "$2" 2>&1 |
|
|
||||||
awk '{
|
|
||||||
count += $NF
|
|
||||||
if (count % 10 == 0) {
|
|
||||||
percent = count / total_size * 100
|
|
||||||
printf "%3d%% [", percent
|
|
||||||
for (i=0;i<=percent;i++)
|
|
||||||
printf "="
|
|
||||||
printf ">"
|
|
||||||
for (i=percent;i<100;i++)
|
|
||||||
printf " "
|
|
||||||
printf "]\r"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
END { print "" }' total_size="$(stat -c '%s' "$1")" count=0
|
|
||||||
}
|
|
||||||
|
|
||||||
# Copy and go to the directory
|
|
||||||
cpg() {
|
|
||||||
if [ -d "$2" ]; then
|
|
||||||
cp "$1" "$2" && cd "$2"
|
|
||||||
else
|
|
||||||
cp "$1" "$2"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Move and go to the directory
|
|
||||||
mvg() {
|
|
||||||
if [ -d "$2" ]; then
|
|
||||||
mv "$1" "$2" && cd "$2"
|
|
||||||
else
|
|
||||||
mv "$1" "$2"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Create and go to the directory
|
|
||||||
mkdirg() {
|
|
||||||
mkdir -p "$1"
|
|
||||||
cd "$1"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Goes up a specified number of directories (i.e. up 4)
|
|
||||||
up() {
|
|
||||||
local d=""
|
|
||||||
limit=$1
|
|
||||||
for ((i = 1; i <= limit; i++)); do
|
|
||||||
d=$d/..
|
|
||||||
done
|
|
||||||
d=$(echo $d | sed 's/^\///')
|
|
||||||
if [ -z "$d" ]; then
|
|
||||||
d=..
|
|
||||||
fi
|
|
||||||
cd $d
|
|
||||||
}
|
|
||||||
|
|
||||||
# Automatically do an ls after each cd, z, or zoxide
|
|
||||||
cd ()
|
|
||||||
{
|
|
||||||
if [ -n "$1" ]; then
|
|
||||||
builtin cd "$@" && ls
|
|
||||||
else
|
|
||||||
builtin cd ~ && ls
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Returns the last 2 fields of the working directory
|
|
||||||
pwdtail() {
|
|
||||||
pwd | awk -F/ '{nlast = NF -1;print $nlast"/"$NF}'
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
138
modules/home/bash/aliases.nix
Normal file
138
modules/home/bash/aliases.nix
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
{
|
||||||
|
username,
|
||||||
|
host,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs.bash.shellAliases = {
|
||||||
|
# GarandOS aliases
|
||||||
|
pullos = "git -C /home/${username}/garandos pull";
|
||||||
|
upd = "nh os switch --hostname ${host}";
|
||||||
|
upg = "nh os switch --hostname ${host} --update";
|
||||||
|
upf = "sudo nix flake update --flake /home/${username}/garandos";
|
||||||
|
upf-undo = "git -C /home/${username}/garandos restore /home/${username}/garandos/flake.lock";
|
||||||
|
upd-bt = "nh os boot --hostname ${host}";
|
||||||
|
upd-ts = "nh os test --hostname ${host}";
|
||||||
|
upd-bd = "nh os build --hostname ${host}";
|
||||||
|
tui = "garandos-tui";
|
||||||
|
ncg = "nh clean all";
|
||||||
|
|
||||||
|
# Development aliases
|
||||||
|
srvenv = "source .venv/bin/activate";
|
||||||
|
"..srvenv" = "source ../.venv/bin/activate";
|
||||||
|
pm = "uv run manage.py";
|
||||||
|
f8 = "uv run flake8 .";
|
||||||
|
bbr = "bun --bun run";
|
||||||
|
"ga." = "git add .";
|
||||||
|
mkgidf = "git add . --intent-to-add . && git diff > git-diff.txt";
|
||||||
|
|
||||||
|
# Development aliases for nix flake
|
||||||
|
nd = "nix develop";
|
||||||
|
nb = "nix build";
|
||||||
|
nr = "nix run";
|
||||||
|
nbr = "nix build && nix run";
|
||||||
|
nbd = "nix build .#develop";
|
||||||
|
nrd = "nix run .#develop";
|
||||||
|
nbrd = "nix build .#develop && nix run .#develop";
|
||||||
|
|
||||||
|
# Development aliases for docker
|
||||||
|
dcu = "docker compose up -d";
|
||||||
|
dcd = "docker compose down";
|
||||||
|
dcb = "docker compose build";
|
||||||
|
dcub = "docker compose up -d --build";
|
||||||
|
|
||||||
|
# System aliases
|
||||||
|
# flush-codium = "sudo killall codium && sudo rm -rf ~/.config/VSCodium/Cache && sudo rm -rf ~/.config/VSCodium/CachedData";
|
||||||
|
kys = "shutdown now";
|
||||||
|
ookla = "speedtest";
|
||||||
|
hypr-cli = "hyprctl clients";
|
||||||
|
|
||||||
|
# Navigation aliases
|
||||||
|
"~" = "cd ~";
|
||||||
|
".." = "cd ..";
|
||||||
|
"..." = "cd ../..";
|
||||||
|
"...." = "cd ../../..";
|
||||||
|
"....." = "cd ../../../..";
|
||||||
|
|
||||||
|
# Modifies commands
|
||||||
|
cat = "bat";
|
||||||
|
cp = "cp -i";
|
||||||
|
mv = "mv -i";
|
||||||
|
rm = "trash -v";
|
||||||
|
mkdir = "mkdir -p";
|
||||||
|
ps = "ps auxf";
|
||||||
|
ping = "ping -c 10";
|
||||||
|
less = "less -R";
|
||||||
|
cls = "clear";
|
||||||
|
multitail = "multitail --no-repeat -c";
|
||||||
|
freshclam = "sudo freshclam";
|
||||||
|
|
||||||
|
# Alias"s for multiple directory listing commands
|
||||||
|
la = "eza -alh --icons"; # show hidden files
|
||||||
|
ls = "eza -aF --icons --color=always"; # add colors and file type extensions
|
||||||
|
lx = "eza -lh --icons --sort=extension"; # sort by extension
|
||||||
|
lk = "eza -lh --icons --sort=size --reverse"; # sort by size
|
||||||
|
lc = "eza -lh --icons --sort=changed"; # sort by change time
|
||||||
|
lu = "eza -lh --icons --sort=accessed"; # sort by access time
|
||||||
|
lr = "eza -lh --icons --recurse"; # recursive ls
|
||||||
|
lt = "eza -lh --icons --sort=modified"; # sort by date
|
||||||
|
lm = "eza -alh --icons | more"; # pipe through "more"
|
||||||
|
lw = "eza -xh --icons"; # wide listing format
|
||||||
|
ll = "eza -lh --icons"; # long listing format
|
||||||
|
labc = "eza -lah --icons --sort=name"; # alphabetical sort
|
||||||
|
lf = "eza -lh --icons | grep -v '^d'"; # files only (przybliżenie)
|
||||||
|
ldir = "eza -lh --icons --only-dirs"; # directories only
|
||||||
|
lla = "eza -alh --icons"; # List and Hidden Files
|
||||||
|
las = "eza -a --icons"; # Hidden Files
|
||||||
|
lls = "eza -lh --icons"; # List
|
||||||
|
|
||||||
|
# chmod commands
|
||||||
|
mx = "chmod a+x";
|
||||||
|
"000" = "chmod -R 000";
|
||||||
|
"644" = "chmod -R 644";
|
||||||
|
"666" = "chmod -R 666";
|
||||||
|
"755" = "chmod -R 755";
|
||||||
|
"777" = "chmod -R 777";
|
||||||
|
|
||||||
|
# Search command line history
|
||||||
|
h = "history | grep ";
|
||||||
|
|
||||||
|
# Search running processes
|
||||||
|
p = "ps aux | grep ";
|
||||||
|
topcpu = "/bin/ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10";
|
||||||
|
|
||||||
|
# Search files in the current folder
|
||||||
|
f = "find . | grep ";
|
||||||
|
|
||||||
|
# Count all files (recursively) in the current folder
|
||||||
|
countfiles = "for t in files links directories; do echo \`find . -type \${t:0:1} | wc -l\` \$t; done 2> /dev/null";
|
||||||
|
|
||||||
|
# Alias"s to show disk space and space used in a folder
|
||||||
|
diskspace = "du -S | sort -n -r |more";
|
||||||
|
folders = "du -h --max-depth=1";
|
||||||
|
folderssort = "find . -maxdepth 1 -type d -print0 | xargs -0 du -sk | sort -rn";
|
||||||
|
tree = "tree -CAhF --dirsfirst";
|
||||||
|
treed = "tree -CAFd";
|
||||||
|
mountedinfo = "df -hT";
|
||||||
|
|
||||||
|
# Show all logs in /var/log
|
||||||
|
logs = "sudo find /var/log -type f -exec file {} \; | grep 'text' | cut -d' ' -f1 | sed -e's/:$//g' | grep -v '[0-9]$' | xargs tail -f";
|
||||||
|
|
||||||
|
# fix kitty ssh connection
|
||||||
|
kssh = "kitty +kitten ssh";
|
||||||
|
|
||||||
|
docker-clean = "docker container prune -f ; docker image prune -f ; docker network prune -f ; docker volume prune -f";
|
||||||
|
|
||||||
|
# Remove a directory and all files
|
||||||
|
rmd = "/bin/rm --recursive --force --verbose ";
|
||||||
|
|
||||||
|
# Fun aliases
|
||||||
|
pasjans = "ttysolitaire -p 10 --no-background-color";
|
||||||
|
fc = "fortune | cowsay";
|
||||||
|
|
||||||
|
# Network aliases
|
||||||
|
kssh-server = "kssh hp-t640-homeserver";
|
||||||
|
kssh-server-ts = "kssh hp-t640-homeserver-tailscale";
|
||||||
|
ssh-server = "ssh hp-t640-homeserver";
|
||||||
|
ssh-server-ts = "ssh hp-t640-homeserver-tailscale";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -6,4 +6,8 @@ _: {
|
|||||||
# fastfetch
|
# fastfetch
|
||||||
# '';
|
# '';
|
||||||
};
|
};
|
||||||
|
imports = [
|
||||||
|
./aliases.nix
|
||||||
|
./functions.nix
|
||||||
|
];
|
||||||
}
|
}
|
||||||
144
modules/home/bash/functions.nix
Normal file
144
modules/home/bash/functions.nix
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
_: {
|
||||||
|
programs.bash.bashrcExtra = ''
|
||||||
|
# Quick directory creation and navigation
|
||||||
|
mkcd() {
|
||||||
|
mkdir -p "$1" && cd "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Extract various archive formats
|
||||||
|
extract() {
|
||||||
|
for archive in "$@"; do
|
||||||
|
if [ -f "$archive" ]; then
|
||||||
|
case "$archive" in
|
||||||
|
*.tar.bz2) tar xvjf "$archive" ;;
|
||||||
|
*.tar.gz) tar xvzf "$archive" ;;
|
||||||
|
*.bz2) bunzip2 "$archive" ;;
|
||||||
|
*.rar) unrar x "$archive" ;;
|
||||||
|
*.gz) gunzip "$archive" ;;
|
||||||
|
*.tar) tar xvf "$archive" ;;
|
||||||
|
*.tbz2) tar xvjf "$archive" ;;
|
||||||
|
*.tgz) tar xvzf "$archive" ;;
|
||||||
|
*.zip) unzip "$archive" ;;
|
||||||
|
*.Z) uncompress "$archive" ;;
|
||||||
|
*.7z) 7z x "$archive" ;;
|
||||||
|
*) echo "don't know how to extract '$archive'..." ;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
echo "'$archive' is not a valid file!"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
# Find files quickly
|
||||||
|
ff() {
|
||||||
|
find . -name "*$1*" -type f
|
||||||
|
}
|
||||||
|
|
||||||
|
# Find directories quickly
|
||||||
|
fd() {
|
||||||
|
find . -name "*$1*" -type d
|
||||||
|
}
|
||||||
|
|
||||||
|
# IP address lookup
|
||||||
|
alias whatismyip="whatsmyip"
|
||||||
|
function whatsmyip () {
|
||||||
|
# Internal IP Lookup.
|
||||||
|
if command -v ip &> /dev/null; then
|
||||||
|
echo -n "Internal IP: "
|
||||||
|
ip addr show wlan0 | grep "inet " | awk '{print $2}' | cut -d/ -f1
|
||||||
|
else
|
||||||
|
echo -n "Internal IP: "
|
||||||
|
ifconfig wlan0 | grep "inet " | awk '{print $2}'
|
||||||
|
fi
|
||||||
|
|
||||||
|
# External IP Lookup
|
||||||
|
echo -n "External IP: "
|
||||||
|
curl -4 ifconfig.me
|
||||||
|
}
|
||||||
|
|
||||||
|
# Searches for text in all files in the current folder
|
||||||
|
ftext() {
|
||||||
|
# -i case-insensitive
|
||||||
|
# -I ignore binary files
|
||||||
|
# -H causes filename to be printed
|
||||||
|
# -r recursive search
|
||||||
|
# -n causes line number to be printed
|
||||||
|
# optional: -F treat search term as a literal, not a regular expression
|
||||||
|
# optional: -l only print filenames and not the matching lines ex. grep -irl "$1" *
|
||||||
|
grep -iIHrn --color=always "$1" . | less -r
|
||||||
|
}
|
||||||
|
|
||||||
|
# Copy file with a progress bar
|
||||||
|
cpp() {
|
||||||
|
set -e
|
||||||
|
strace -q -ewrite cp -- "$1" "$2" 2>&1 |
|
||||||
|
awk '{
|
||||||
|
count += $NF
|
||||||
|
if (count % 10 == 0) {
|
||||||
|
percent = count / total_size * 100
|
||||||
|
printf "%3d%% [", percent
|
||||||
|
for (i=0;i<=percent;i++)
|
||||||
|
printf "="
|
||||||
|
printf ">"
|
||||||
|
for (i=percent;i<100;i++)
|
||||||
|
printf " "
|
||||||
|
printf "]\r"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
END { print "" }' total_size="$(stat -c '%s' "$1")" count=0
|
||||||
|
}
|
||||||
|
|
||||||
|
# Copy and go to the directory
|
||||||
|
cpg() {
|
||||||
|
if [ -d "$2" ]; then
|
||||||
|
cp "$1" "$2" && cd "$2"
|
||||||
|
else
|
||||||
|
cp "$1" "$2"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Move and go to the directory
|
||||||
|
mvg() {
|
||||||
|
if [ -d "$2" ]; then
|
||||||
|
mv "$1" "$2" && cd "$2"
|
||||||
|
else
|
||||||
|
mv "$1" "$2"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create and go to the directory
|
||||||
|
mkdirg() {
|
||||||
|
mkdir -p "$1"
|
||||||
|
cd "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Goes up a specified number of directories (i.e. up 4)
|
||||||
|
up() {
|
||||||
|
local d=""
|
||||||
|
limit=$1
|
||||||
|
for ((i = 1; i <= limit; i++)); do
|
||||||
|
d=$d/..
|
||||||
|
done
|
||||||
|
d=$(echo $d | sed 's/^\///')
|
||||||
|
if [ -z "$d" ]; then
|
||||||
|
d=..
|
||||||
|
fi
|
||||||
|
cd $d
|
||||||
|
}
|
||||||
|
|
||||||
|
# Automatically do an ls after each cd, z, or zoxide
|
||||||
|
cd ()
|
||||||
|
{
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
builtin cd "$@" && ls
|
||||||
|
else
|
||||||
|
builtin cd ~ && ls
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Returns the last 2 fields of the working directory
|
||||||
|
pwdtail() {
|
||||||
|
pwd | awk -F/ '{nlast = NF -1;print $nlast"/"$NF}'
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
}
|
||||||
@@ -2,17 +2,12 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
{
|
|
||||||
programs.bat = {
|
programs.bat = {
|
||||||
enable = true;
|
enable = true;
|
||||||
config = {
|
config = {
|
||||||
pager = "less -FR";
|
pager = "less -FR";
|
||||||
# other styles available and cane be combined
|
|
||||||
# style = "numbers,changes,headers,rule,grid";
|
|
||||||
style = "full";
|
style = "full";
|
||||||
# Bat has other thems as well
|
|
||||||
# Dracula,ansi,Catppuccin,base16,base16-256,GitHub,Nord,etc
|
|
||||||
theme = lib.mkForce "base16";
|
theme = lib.mkForce "base16";
|
||||||
};
|
};
|
||||||
extraPackages = with pkgs.bat-extras; [
|
extraPackages = with pkgs.bat-extras; [
|
||||||
|
|||||||
@@ -1,6 +1,12 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
programs.btop = {
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.btop.enable = lib.mkEnableOption "Btop";
|
||||||
|
|
||||||
|
config.programs.btop = lib.mkIf config.btop.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.btop.override {
|
package = pkgs.btop.override {
|
||||||
rocmSupport = true;
|
rocmSupport = true;
|
||||||
|
|||||||
@@ -1,42 +1,17 @@
|
|||||||
_: {
|
{
|
||||||
programs.cava = {
|
lib,
|
||||||
enable = false;
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.cava.enable = lib.mkEnableOption "Cava";
|
||||||
|
|
||||||
|
config.programs.cava = lib.mkIf config.cava.enable {
|
||||||
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
general = {
|
general = {
|
||||||
bar_spacing = 1;
|
bar_spacing = 1;
|
||||||
bar_width = 2;
|
bar_width = 2;
|
||||||
frame_rate = 60;
|
frame_rate = 144;
|
||||||
};
|
|
||||||
color = {
|
|
||||||
#gradient = 1;
|
|
||||||
#gradient_color_1 = "'#011f30'";
|
|
||||||
#gradient_color_2 = "'#09465b'";
|
|
||||||
#gradient_color_3 = "'#045a93'";
|
|
||||||
#gradient_color_4 = "'#00aa00'";
|
|
||||||
#gradient_color_5 = "'#ffff00'";
|
|
||||||
#gradient_color_6 = "'#cc8033'";
|
|
||||||
#gradient_color_7 = "'#aa0000'";
|
|
||||||
#gradient_color_8 = "'#ff00ff'";
|
|
||||||
# Old config
|
|
||||||
#gradient = 1;
|
|
||||||
#gradient_color_1 = "'#8bd5ca'";
|
|
||||||
#gradient_color_2 = "'#91d7e3'";
|
|
||||||
#gradient_color_3 = "'#7dc4e4'";
|
|
||||||
#gradient_color_4 = "'#8aadf4'";
|
|
||||||
#gradient_color_5 = "'#c6a0f6'";
|
|
||||||
#gradient_color_6 = "'#f5bde6'";
|
|
||||||
#gradient_color_7 = "'#ee99a0'";
|
|
||||||
#gradient_color_8 = "'#ed8796'";
|
|
||||||
# Dracula
|
|
||||||
gradient = 1;
|
|
||||||
gradient_color_1 = "'#8BE9FD'";
|
|
||||||
gradient_color_2 = "'#9AEDFE'";
|
|
||||||
gradient_color_3 = "'#CAA9FA'";
|
|
||||||
gradient_color_4 = "'#BD93F9'";
|
|
||||||
gradient_color_5 = "'#FF92D0'";
|
|
||||||
gradient_color_6 = "'#FF79C6'";
|
|
||||||
gradient_color_7 = "'#FF6E67'";
|
|
||||||
gradient_color_8 = "'#FF5555'";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,35 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
programs.chromium = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.ungoogled-chromium;
|
|
||||||
# commandLineArgs = [ ];
|
|
||||||
dictionaries = with pkgs; [
|
|
||||||
hunspellDictsChromium.en_US
|
|
||||||
# hunspellDictsChromium.pl_PL Jeśli się taka pojawi
|
|
||||||
];
|
|
||||||
extensions = [
|
|
||||||
{
|
|
||||||
id = "ocaahdebbfolfmndjeplogmgcagdmblk"; # Chromium Web Store
|
|
||||||
}
|
|
||||||
{
|
|
||||||
id = "eimadpbcbfnmbkopoojfekhnkhdbieeh"; # Dark Reader
|
|
||||||
}
|
|
||||||
{
|
|
||||||
id = "fnaicdffflnofjppbagibeoednhnbjhg"; # floccus bookmarks sync
|
|
||||||
}
|
|
||||||
{
|
|
||||||
id = "amknoiejhlmhancpahfcfcfhllgkpbld"; # Hoppscotch Browser Extension
|
|
||||||
}
|
|
||||||
{
|
|
||||||
id = "nngceckbapebfimnlniiiahkandclblb"; # Menedżer haseł Bitwarden
|
|
||||||
}
|
|
||||||
{
|
|
||||||
id = "fdaphilojaklgkoocegabckfanjoacjg"; # mtab
|
|
||||||
}
|
|
||||||
{
|
|
||||||
id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; # uBlock Origin
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
22
modules/home/chromium/default.nix
Normal file
22
modules/home/chromium/default.nix
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.ungoogled-chromium.enable = lib.mkEnableOption "Ungoogled Chromium";
|
||||||
|
|
||||||
|
config.programs.chromium = lib.mkIf config.ungoogled-chromium.enable {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.ungoogled-chromium;
|
||||||
|
# commandLineArgs = [ ];
|
||||||
|
dictionaries = with pkgs; [
|
||||||
|
hunspellDictsChromium.en_US
|
||||||
|
# hunspellDictsChromium.pl_PL Jeśli się taka pojawi
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
./extensions.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
25
modules/home/chromium/extensions.nix
Normal file
25
modules/home/chromium/extensions.nix
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
_: {
|
||||||
|
programs.chromium.extensions = [
|
||||||
|
{
|
||||||
|
id = "ocaahdebbfolfmndjeplogmgcagdmblk"; # Chromium Web Store
|
||||||
|
}
|
||||||
|
{
|
||||||
|
id = "eimadpbcbfnmbkopoojfekhnkhdbieeh"; # Dark Reader
|
||||||
|
}
|
||||||
|
{
|
||||||
|
id = "fnaicdffflnofjppbagibeoednhnbjhg"; # floccus bookmarks sync
|
||||||
|
}
|
||||||
|
{
|
||||||
|
id = "amknoiejhlmhancpahfcfcfhllgkpbld"; # Hoppscotch Browser Extension
|
||||||
|
}
|
||||||
|
{
|
||||||
|
id = "nngceckbapebfimnlniiiahkandclblb"; # Menedżer haseł Bitwarden
|
||||||
|
}
|
||||||
|
{
|
||||||
|
id = "fdaphilojaklgkoocegabckfanjoacjg"; # mtab
|
||||||
|
}
|
||||||
|
{
|
||||||
|
id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; # uBlock Origin
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -1,31 +1,26 @@
|
|||||||
{ host, ... }:
|
_: {
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) waybarChoice;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
|
./bash
|
||||||
|
./chromium
|
||||||
./fastfetch
|
./fastfetch
|
||||||
./hyprland
|
./hyprland
|
||||||
./rofi
|
./kitty
|
||||||
|
./librewolf
|
||||||
|
./noctalia
|
||||||
./scripts
|
./scripts
|
||||||
waybarChoice
|
./vscodium
|
||||||
./wlogout
|
./xdg
|
||||||
|
./zed
|
||||||
./anki.nix
|
./anki.nix
|
||||||
./bash.nix
|
|
||||||
./bash-aliases.nix
|
|
||||||
./bash-functions.nix
|
|
||||||
./bat.nix
|
./bat.nix
|
||||||
./btop.nix
|
./btop.nix
|
||||||
./cava.nix
|
./cava.nix
|
||||||
./chromium.nix
|
|
||||||
./emoji.nix
|
./emoji.nix
|
||||||
./eza.nix
|
./eza.nix
|
||||||
./fzf.nix
|
./fzf.nix
|
||||||
./git.nix
|
./git.nix
|
||||||
./gtk.nix
|
./gtk.nix
|
||||||
./kdeConnect.nix
|
./kdeConnect.nix
|
||||||
./kitty.nix
|
|
||||||
./librewolf.nix
|
|
||||||
./lutris.nix
|
./lutris.nix
|
||||||
./nextcloud.nix
|
./nextcloud.nix
|
||||||
./obs-studio.nix
|
./obs-studio.nix
|
||||||
@@ -35,13 +30,9 @@ in
|
|||||||
./starship.nix
|
./starship.nix
|
||||||
./stylix.nix
|
./stylix.nix
|
||||||
./swappy.nix
|
./swappy.nix
|
||||||
./swaync.nix
|
|
||||||
./tealdeer.nix
|
./tealdeer.nix
|
||||||
./vesktop.nix
|
./vesktop.nix
|
||||||
./virtmanager.nix
|
./virtmanager.nix
|
||||||
./xdg.nix
|
|
||||||
./zoxide.nix
|
./zoxide.nix
|
||||||
./vscode.nix
|
|
||||||
./zed.nix
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
{ ... }:
|
_: {
|
||||||
{
|
|
||||||
home.file.".config/.emoji".text = ''
|
home.file.".config/.emoji".text = ''
|
||||||
😀 grinning face face smile happy joy :D grin
|
😀 grinning face face smile happy joy :D grin
|
||||||
😃 grinning face with big eyes face happy joy haha :D :) smile funny
|
😃 grinning face with big eyes face happy joy haha :D :) smile funny
|
||||||
|
|||||||
@@ -1,184 +1,17 @@
|
|||||||
{
|
{
|
||||||
programs.fastfetch = {
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.fastfetch.enable = lib.mkEnableOption "FastFetch";
|
||||||
|
|
||||||
|
config.programs.fastfetch = lib.mkIf config.fastfetch.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = pkgs.fastfetch;
|
||||||
settings = {
|
|
||||||
display = {
|
|
||||||
color = {
|
|
||||||
keys = "35";
|
|
||||||
output = "90";
|
|
||||||
};
|
|
||||||
separator = " ➜ ";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
logo = {
|
imports = [
|
||||||
source = ./garandos.png;
|
./settings
|
||||||
type = "kitty-direct";
|
|
||||||
height = 15;
|
|
||||||
width = 30;
|
|
||||||
padding = {
|
|
||||||
top = 3;
|
|
||||||
left = 3;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
modules = [
|
|
||||||
"break"
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "┌─────────────────────────────────Hardware────────────────────────────────┐";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "host";
|
|
||||||
format = "{5} {1} Type {2}";
|
|
||||||
key = "│ PC";
|
|
||||||
keyColor = "33";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "cpu";
|
|
||||||
format = "{1} ({3}) @ {7} GHz";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "33";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "gpu";
|
|
||||||
format = "{1} {2} @ {12} GHz";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "33";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "memory";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "33";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "swap";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "33";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "disk";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "33";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "monitor";
|
|
||||||
key = "│ └ ";
|
|
||||||
keyColor = "33";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "└──────────────────────────────────────────────────────────────────────────┘";
|
|
||||||
}
|
|
||||||
|
|
||||||
"break"
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "┌─────────────────────────────────Software─────────────────────────────────┐";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "os";
|
|
||||||
key = "│ OS";
|
|
||||||
keyColor = "31";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "command";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "31";
|
|
||||||
text = "echo GarandOS v$" + "{GARANDOS_VERSION}";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "kernel";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "31";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "packages";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "31";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "shell";
|
|
||||||
key = "│ └ ";
|
|
||||||
keyColor = "31";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "wm";
|
|
||||||
key = "│ WM";
|
|
||||||
keyColor = "32";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "wmtheme";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "32";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "icons";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "32";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "cursor";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "32";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "terminal";
|
|
||||||
key = "│ ├ ";
|
|
||||||
keyColor = "32";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "terminalfont";
|
|
||||||
key = "│ └ ";
|
|
||||||
keyColor = "32";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "└──────────────────────────────────────────────────────────────────────────┘";
|
|
||||||
}
|
|
||||||
|
|
||||||
"break"
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "┌───────────────────────────────Age / Uptime───────────────────────────────┐";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "command";
|
|
||||||
key = "│ IN";
|
|
||||||
text =
|
|
||||||
#bash
|
|
||||||
''
|
|
||||||
birth_install=$(stat -c %W /)
|
|
||||||
if [ "$birth_install" -gt 0 ]; then
|
|
||||||
echo "Installed $(date -d @"$birth_install" +"%Y-%m-%d")"
|
|
||||||
else
|
|
||||||
echo "Installation date unknown"
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "command";
|
|
||||||
key = "│ ├ ";
|
|
||||||
text =
|
|
||||||
#bash
|
|
||||||
''
|
|
||||||
birth_install=$(stat -c %W /)
|
|
||||||
current=$(date +%s)
|
|
||||||
delta=$((current - birth_install))
|
|
||||||
delta_days=$((delta / 86400))
|
|
||||||
echo $delta_days days
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "uptime";
|
|
||||||
key = "│ └ ";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "custom";
|
|
||||||
format = "└──────────────────────────────────────────────────────────────────────────┘";
|
|
||||||
}
|
|
||||||
"break"
|
|
||||||
];
|
];
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 96 KiB After Width: | Height: | Size: 31 KiB |
7
modules/home/fastfetch/settings/default.nix
Normal file
7
modules/home/fastfetch/settings/default.nix
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
_: {
|
||||||
|
imports = [
|
||||||
|
./display.nix
|
||||||
|
./logo.nix
|
||||||
|
./modules.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
9
modules/home/fastfetch/settings/display.nix
Normal file
9
modules/home/fastfetch/settings/display.nix
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
_: {
|
||||||
|
programs.fastfetch.settings.display = {
|
||||||
|
color = {
|
||||||
|
keys = "35";
|
||||||
|
output = "90";
|
||||||
|
};
|
||||||
|
separator = " ➜ ";
|
||||||
|
};
|
||||||
|
}
|
||||||
12
modules/home/fastfetch/settings/logo.nix
Normal file
12
modules/home/fastfetch/settings/logo.nix
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
_: {
|
||||||
|
programs.fastfetch.settings.logo = {
|
||||||
|
source = ../garandos.png;
|
||||||
|
type = "kitty-direct";
|
||||||
|
height = 15;
|
||||||
|
width = 30;
|
||||||
|
padding = {
|
||||||
|
top = 3;
|
||||||
|
left = 3;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
159
modules/home/fastfetch/settings/modules.nix
Normal file
159
modules/home/fastfetch/settings/modules.nix
Normal file
@@ -0,0 +1,159 @@
|
|||||||
|
_: {
|
||||||
|
programs.fastfetch.settings.modules = [
|
||||||
|
"break"
|
||||||
|
{
|
||||||
|
type = "custom";
|
||||||
|
format = "┌─────────────────────────────────Hardware────────────────────────────────┐";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "host";
|
||||||
|
format = "{5} {1} Type {2}";
|
||||||
|
key = "│ PC";
|
||||||
|
keyColor = "33";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "cpu";
|
||||||
|
format = "{1} ({3}) @ {7} GHz";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "33";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "gpu";
|
||||||
|
format = "{1} {2} @ {12} GHz";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "33";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "memory";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "33";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "swap";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "33";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "disk";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "33";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "monitor";
|
||||||
|
key = "│ └ ";
|
||||||
|
keyColor = "33";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "custom";
|
||||||
|
format = "└──────────────────────────────────────────────────────────────────────────┘";
|
||||||
|
}
|
||||||
|
|
||||||
|
"break"
|
||||||
|
{
|
||||||
|
type = "custom";
|
||||||
|
format = "┌─────────────────────────────────Software─────────────────────────────────┐";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "os";
|
||||||
|
key = "│ OS";
|
||||||
|
keyColor = "31";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "command";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "31";
|
||||||
|
text = "echo GarandOS v$" + "{GARANDOS_VERSION}";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "kernel";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "31";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "packages";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "31";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "shell";
|
||||||
|
key = "│ └ ";
|
||||||
|
keyColor = "31";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "wm";
|
||||||
|
key = "│ WM";
|
||||||
|
keyColor = "32";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "wmtheme";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "32";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "icons";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "32";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "cursor";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "32";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "terminal";
|
||||||
|
key = "│ ├ ";
|
||||||
|
keyColor = "32";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "terminalfont";
|
||||||
|
key = "│ └ ";
|
||||||
|
keyColor = "32";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "custom";
|
||||||
|
format = "└──────────────────────────────────────────────────────────────────────────┘";
|
||||||
|
}
|
||||||
|
|
||||||
|
"break"
|
||||||
|
{
|
||||||
|
type = "custom";
|
||||||
|
format = "┌───────────────────────────────Age / Uptime───────────────────────────────┐";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "command";
|
||||||
|
key = "│ IN";
|
||||||
|
text =
|
||||||
|
#bash
|
||||||
|
''
|
||||||
|
birth_install=$(stat -c %W /)
|
||||||
|
if [ "$birth_install" -gt 0 ]; then
|
||||||
|
echo "Installed $(date -d @"$birth_install" +"%Y-%m-%d")"
|
||||||
|
else
|
||||||
|
echo "Installation date unknown"
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "command";
|
||||||
|
key = "│ ├ ";
|
||||||
|
text =
|
||||||
|
#bash
|
||||||
|
''
|
||||||
|
birth_install=$(stat -c %W /)
|
||||||
|
current=$(date +%s)
|
||||||
|
delta=$((current - birth_install))
|
||||||
|
delta_days=$((delta / 86400))
|
||||||
|
echo $delta_days days
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "uptime";
|
||||||
|
key = "│ └ ";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "custom";
|
||||||
|
format = "└──────────────────────────────────────────────────────────────────────────┘";
|
||||||
|
}
|
||||||
|
"break"
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -3,13 +3,11 @@
|
|||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
let
|
|
||||||
accent = "#" + config.lib.stylix.colors.base0D;
|
accent = "#" + config.lib.stylix.colors.base0D;
|
||||||
foreground = "#" + config.lib.stylix.colors.base05;
|
foreground = "#" + config.lib.stylix.colors.base05;
|
||||||
muted = "#" + config.lib.stylix.colors.base03;
|
muted = "#" + config.lib.stylix.colors.base03;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
programs.fzf = {
|
programs.fzf = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableBashIntegration = true;
|
enableBashIntegration = true;
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
{ host, ... }:
|
{host, ...}: let
|
||||||
let
|
|
||||||
inherit (import ../../hosts/${host}/variables.nix) gitUsername gitEmail;
|
inherit (import ../../hosts/${host}/variables.nix) gitUsername gitEmail;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|||||||
@@ -1,6 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
|
|
||||||
{
|
|
||||||
gtk = {
|
gtk = {
|
||||||
iconTheme = {
|
iconTheme = {
|
||||||
name = "Papirus-Dark";
|
name = "Papirus-Dark";
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
wayland.windowManager.hyprland.settings = {
|
|
||||||
animations = {
|
|
||||||
enabled = true;
|
|
||||||
bezier = [
|
|
||||||
"wind, -1.05, 0.9, 0.1, 1.05"
|
|
||||||
"winIn, -1.1, 1.1, 0.1, 1.1"
|
|
||||||
"winOut, -1.3, -0.3, 0, 1"
|
|
||||||
"liner, 0, 1, 1, 1"
|
|
||||||
];
|
|
||||||
animation = [
|
|
||||||
"windows, 0, 6, wind, slide"
|
|
||||||
"windowsIn, 0, 6, winIn, slide"
|
|
||||||
"windowsOut, 0, 5, winOut, slide"
|
|
||||||
"windowsMove, 0, 5, wind, slide"
|
|
||||||
"border, 0, 1, liner"
|
|
||||||
"fade, 0, 10, default"
|
|
||||||
"workspaces, 0, 5, wind"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
wayland.windowManager.hyprland.settings = {
|
|
||||||
# name "Dynamic"
|
|
||||||
# credit https://github.com/mylinuxforwork/dotfiles
|
|
||||||
animations = {
|
|
||||||
enabled = true;
|
|
||||||
bezier = [
|
|
||||||
"wind, 0.05, 0.9, 0.1, 1.05"
|
|
||||||
"winIn, 0.1, 1.1, 0.1, 1.1"
|
|
||||||
"winOut, 0.3, -0.3, 0, 1"
|
|
||||||
"liner, 1, 1, 1, 1"
|
|
||||||
];
|
|
||||||
animation = [
|
|
||||||
"windows, 1, 6, wind, slide"
|
|
||||||
"windowsIn, 1, 6, winIn, slide"
|
|
||||||
"windowsOut, 1, 5, winOut, slide"
|
|
||||||
"windowsMove, 1, 5, wind, slide"
|
|
||||||
"border, 1, 1, liner"
|
|
||||||
"borderangle, 1, 30, liner, loop"
|
|
||||||
"fade, 1, 10, default"
|
|
||||||
"workspaces, 1, 5, wind"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
wayland.windowManager.hyprland.settings = {
|
|
||||||
# Name: END-4
|
|
||||||
# Credit: END-4 project https://github.com/end-4/dots-hyprland
|
|
||||||
animations = {
|
|
||||||
enabled = true;
|
|
||||||
bezier = [
|
|
||||||
"linear, 0, 0, 1, 1"
|
|
||||||
"md3_standard, 0.2, 0, 0, 1"
|
|
||||||
"md3_decel, 0.05, 0.7, 0.1, 1"
|
|
||||||
"md3_accel, 0.3, 0, 0.8, 0.15"
|
|
||||||
"overshot, 0.05, 0.9, 0.1, 1.1"
|
|
||||||
"crazyshot, 0.1, 1.5, 0.76, 0.92 "
|
|
||||||
"hyprnostretch, 0.05, 0.9, 0.1, 1.0"
|
|
||||||
"menu_decel, 0.1, 1, 0, 1"
|
|
||||||
"menu_accel, 0.38, 0.04, 1, 0.07"
|
|
||||||
"easeInOutCirc, 0.85, 0, 0.15, 1"
|
|
||||||
"easeOutCirc, 0, 0.55, 0.45, 1"
|
|
||||||
"easeOutExpo, 0.16, 1, 0.3, 1"
|
|
||||||
"softAcDecel, 0.26, 0.26, 0.15, 1"
|
|
||||||
"md2, 0.4, 0, 0.2, 1 # use with .2s duration"
|
|
||||||
];
|
|
||||||
animation = [
|
|
||||||
"windows, 1, 3, md3_decel, popin 60%"
|
|
||||||
"windowsIn, 1, 3, md3_decel, popin 60%"
|
|
||||||
"windowsOut, 1, 3, md3_accel, popin 60%"
|
|
||||||
"border, 1, 10, default"
|
|
||||||
"fade, 1, 3, md3_decel"
|
|
||||||
"layersIn, 1, 3, menu_decel, slide"
|
|
||||||
"layersOut, 1, 1.6, menu_accel"
|
|
||||||
"fadeLayersIn, 1, 2, menu_decel"
|
|
||||||
"fadeLayersOut, 1, 4.5, menu_accel"
|
|
||||||
"workspaces, 1, 7, menu_decel, slide"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
wayland.windowManager.hyprland.settings = {
|
|
||||||
# name "moving"
|
|
||||||
# credit https://github.com/mylinuxforwork/dotfiles
|
|
||||||
animations = {
|
|
||||||
enabled = true;
|
|
||||||
bezier = [
|
|
||||||
"overshot, 0.05, 0.9, 0.1, 1.05"
|
|
||||||
"smoothOut, 0.5, 0, 0.99, 0.99"
|
|
||||||
"smoothIn, 0.5, -0.5, 0.68, 1.5"
|
|
||||||
];
|
|
||||||
animation = [
|
|
||||||
"windows, 1, 5, overshot, slide"
|
|
||||||
"windowsOut, 1, 3, smoothOut"
|
|
||||||
"windowsIn, 1, 3, smoothOut"
|
|
||||||
"windowsMove, 1, 4, smoothIn, slide"
|
|
||||||
"border, 1, 5, default"
|
|
||||||
"fade, 1, 5, smoothIn"
|
|
||||||
"fadeDim, 1, 5, smoothIn"
|
|
||||||
"workspaces, 1, 6, default"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
33
modules/home/hyprland/animations.nix
Normal file
33
modules/home/hyprland/animations.nix
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
_: {
|
||||||
|
wayland.windowManager.hyprland.settings.animations = {
|
||||||
|
enabled = true;
|
||||||
|
bezier = [
|
||||||
|
"linear, 0, 0, 1, 1"
|
||||||
|
"md3_standard, 0.2, 0, 0, 1"
|
||||||
|
"md3_decel, 0.05, 0.7, 0.1, 1"
|
||||||
|
"md3_accel, 0.3, 0, 0.8, 0.15"
|
||||||
|
"overshot, 0.05, 0.9, 0.1, 1.1"
|
||||||
|
"crazyshot, 0.1, 1.5, 0.76, 0.92 "
|
||||||
|
"hyprnostretch, 0.05, 0.9, 0.1, 1.0"
|
||||||
|
"menu_decel, 0.1, 1, 0, 1"
|
||||||
|
"menu_accel, 0.38, 0.04, 1, 0.07"
|
||||||
|
"easeInOutCirc, 0.85, 0, 0.15, 1"
|
||||||
|
"easeOutCirc, 0, 0.55, 0.45, 1"
|
||||||
|
"easeOutExpo, 0.16, 1, 0.3, 1"
|
||||||
|
"softAcDecel, 0.26, 0.26, 0.15, 1"
|
||||||
|
"md2, 0.4, 0, 0.2, 1 # use with .2s duration"
|
||||||
|
];
|
||||||
|
animation = [
|
||||||
|
"windows, 1, 3, md3_decel, popin 60%"
|
||||||
|
"windowsIn, 1, 3, md3_decel, popin 60%"
|
||||||
|
"windowsOut, 1, 3, md3_accel, popin 60%"
|
||||||
|
"border, 1, 10, default"
|
||||||
|
"fade, 1, 3, md3_decel"
|
||||||
|
"layersIn, 1, 3, menu_decel, slide"
|
||||||
|
"layersOut, 1, 1.6, menu_accel"
|
||||||
|
"fadeLayersIn, 1, 2, menu_decel"
|
||||||
|
"fadeLayersOut, 1, 4.5, menu_accel"
|
||||||
|
"workspaces, 1, 7, menu_decel, slide"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,164 +1,164 @@
|
|||||||
{ host, username, ... }:
|
|
||||||
let
|
|
||||||
inherit (import ../../../hosts/${host}/variables.nix) browser terminal;
|
|
||||||
desktopEntriesPath = "/home/${username}/.local/state/home-manager/gcroots/current-home/home-path/share/applications/";
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
wayland.windowManager.hyprland.settings = {
|
lib,
|
||||||
bind = [
|
username,
|
||||||
# =============================================================================
|
...
|
||||||
# APLIKACJE - GŁÓWNE
|
}: let
|
||||||
# =============================================================================
|
desktopEntriesPath = "/home/${username}/.local/state/home-manager/gcroots/current-home/home-path/share/applications/";
|
||||||
"$modifier, A, exec, anki"
|
|
||||||
"$modifier, C, exec, chromium"
|
|
||||||
"$modifier, D, exec, vesktop"
|
|
||||||
"$modifier, I, exec, iotas"
|
|
||||||
"$modifier, M, exec, plexamp"
|
|
||||||
"$modifier, N, exec, dex ${desktopEntriesPath}/garandcloud.desktop"
|
|
||||||
"$modifier, Return, exec, ${terminal}"
|
|
||||||
"$modifier, S, exec, steam"
|
|
||||||
"$modifier, T, exec, thunar"
|
|
||||||
"$modifier, W, exec, ${browser}"
|
|
||||||
"$modifier, Z, exec, zeditor"
|
|
||||||
|
|
||||||
# =============================================================================
|
mainBinds = [
|
||||||
# APLIKACJE - Z SHIFT
|
"SUPER, A, exec, anki #\"Flashcard learning application\""
|
||||||
# =============================================================================
|
"SUPER, B, exec, bitwarden #\"Password manager\""
|
||||||
"$modifier SHIFT, B, exec, blueman-manager"
|
"SUPER, C, exec, chromium #\"Ungoogled Chromium\""
|
||||||
"$modifier SHIFT, C, exec, dex ${desktopEntriesPath}/claude.desktop"
|
"SUPER, D, exec, vesktop #\"Discord client\""
|
||||||
"$modifier SHIFT, G, exec, dex ${desktopEntriesPath}/chatgpt.desktop"
|
"SUPER, E, exec, noctalia-shell ipc call launcher emoji #\"Emoji picker\""
|
||||||
"$modifier SHIFT, M, exec, dex ${desktopEntriesPath}/messenger.desktop"
|
"SUPER, Escape, exec, noctalia-shell ipc call lockScreen lock #\"Lock the screen\""
|
||||||
"$modifier SHIFT, N, exec, nextcloud"
|
"SUPER, G, exec, affinity-v3 #\"Graphics editor\""
|
||||||
"$modifier SHIFT, O, exec, onlyoffice-desktopeditors"
|
"SUPER, I, exec, iotas #\"Note-taking app\""
|
||||||
"$modifier SHIFT, Return, exec, rofi-launcher"
|
"SUPER, J, exec, Jan #\"Local AI chat interface\""
|
||||||
"$modifier SHIFT, T, exec, tutanota-desktop"
|
"SUPER, K, exec, galculator #\"Scientific calculator\""
|
||||||
"$modifier SHIFT, W, exec, web-search"
|
"SUPER, L, exec, logseq #\"Knowledge management tool\""
|
||||||
|
"SUPER, M, exec, plexamp #\"Music player for Plex\""
|
||||||
# =============================================================================
|
"SUPER, N, exec, dex ${desktopEntriesPath}/garandcloud.desktop #\"GarandCloud client\""
|
||||||
# APLIKACJE - Z ALT
|
"SUPER, O, exec, onlyoffice-desktopeditors #\"Office suite\""
|
||||||
# =============================================================================
|
"SUPER, P, exec, plex-desktop #\"Plex media player\""
|
||||||
"$modifier ALT, G, exec, dex ${desktopEntriesPath}/glance.desktop"
|
"SUPER, Return, exec, kitty #\"Kitty terminal\""
|
||||||
"$modifier ALT, M, exec, dex ${desktopEntriesPath}/mastodon.desktop"
|
"SUPER, S, exec, steam #\"Steam Game launcher\""
|
||||||
"$modifier ALT, S, exec, slack"
|
"SUPER, T, exec, thunar #\"File manager\""
|
||||||
"$modifier ALT, T, exec, gnome-text-editor"
|
"SUPER, V, exec, codium #\"VS Codium\""
|
||||||
|
"SUPER, W, exec, librewolf #\"Main Web browser (Librewolf)\""
|
||||||
# =============================================================================
|
"SUPER, Z, exec, zeditor #\"Zed IDE\""
|
||||||
# APLIKACJE - Z CONTROL
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier CONTROL, M, exec, mattermost-desktop"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# NARZĘDZIA SYSTEMOWE
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier, E, exec, emopicker9000"
|
|
||||||
"$modifier, K, exec, galculator"
|
|
||||||
"$modifier, P, exec, hyprpicker -a"
|
|
||||||
"$modifier ALT, W, exec, wallsetter"
|
|
||||||
"$modifier SHIFT, K, exec, list-keybinds"
|
|
||||||
"$modifier SHIFT, P, exec, pavucontrol"
|
|
||||||
"$modifier SHIFT, S, exec, screenshootin"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# ZARZĄDZANIE OKNAMI
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier, Escape, exec, hyprlock"
|
|
||||||
"$modifier, F, fullscreen,"
|
|
||||||
"$modifier, Q, killactive,"
|
|
||||||
"$modifier CONTROL, Escape, exec, wlogout"
|
|
||||||
"$modifier SHIFT, Escape, exit,"
|
|
||||||
"$modifier SHIFT, I, togglesplit,"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# FOKUS OKIEN
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier, down, movefocus, d"
|
|
||||||
"$modifier, left, movefocus, l"
|
|
||||||
"$modifier, right, movefocus, r"
|
|
||||||
"$modifier, up, movefocus, u"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# PRZEMIESZCZANIE OKIEN
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier SHIFT, down, movewindow, d"
|
|
||||||
"$modifier SHIFT, left, movewindow, l"
|
|
||||||
"$modifier SHIFT, right, movewindow, r"
|
|
||||||
"$modifier SHIFT, up, movewindow, u"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# ZAMIANA OKIEN
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier ALT, down, swapwindow, d"
|
|
||||||
"$modifier ALT, left, swapwindow, l"
|
|
||||||
"$modifier ALT, right, swapwindow, r"
|
|
||||||
"$modifier ALT, up, swapwindow, u"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# WORKSPACES - PRZEŁĄCZANIE
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier, 0, workspace, 10"
|
|
||||||
"$modifier, 1, workspace, 1"
|
|
||||||
"$modifier, 2, workspace, 2"
|
|
||||||
"$modifier, 3, workspace, 3"
|
|
||||||
"$modifier, 4, workspace, 4"
|
|
||||||
"$modifier, 5, workspace, 5"
|
|
||||||
"$modifier, 6, workspace, 6"
|
|
||||||
"$modifier, 7, workspace, 7"
|
|
||||||
"$modifier, 8, workspace, 8"
|
|
||||||
"$modifier, 9, workspace, 9"
|
|
||||||
"$modifier CONTROL, left, workspace, e-1"
|
|
||||||
"$modifier CONTROL, right, workspace, e+1"
|
|
||||||
"$modifier, mouse_down, workspace, e+1"
|
|
||||||
"$modifier, mouse_up, workspace, e-1"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# WORKSPACES - PRZENOSZENIE OKIEN
|
|
||||||
# =============================================================================
|
|
||||||
"$modifier SHIFT, 0, movetoworkspace, 10"
|
|
||||||
"$modifier SHIFT, 1, movetoworkspace, 1"
|
|
||||||
"$modifier SHIFT, 2, movetoworkspace, 2"
|
|
||||||
"$modifier SHIFT, 3, movetoworkspace, 3"
|
|
||||||
"$modifier SHIFT, 4, movetoworkspace, 4"
|
|
||||||
"$modifier SHIFT, 5, movetoworkspace, 5"
|
|
||||||
"$modifier SHIFT, 6, movetoworkspace, 6"
|
|
||||||
"$modifier SHIFT, 7, movetoworkspace, 7"
|
|
||||||
"$modifier SHIFT, 8, movetoworkspace, 8"
|
|
||||||
"$modifier SHIFT, 9, movetoworkspace, 9"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# MEDIA I KONTROLKI SYSTEMOWE
|
|
||||||
# =============================================================================
|
|
||||||
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
|
||||||
",XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
|
||||||
",XF86AudioNext, exec, playerctl next"
|
|
||||||
",XF86AudioPause, exec, playerctl play-pause"
|
|
||||||
",XF86AudioPlay, exec, playerctl play-pause"
|
|
||||||
",XF86AudioPrev, exec, playerctl previous"
|
|
||||||
",XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"
|
|
||||||
",XF86MonBrightnessDown, exec, brightnessctl set 5%-"
|
|
||||||
",XF86MonBrightnessUp, exec, brightnessctl set +5%"
|
|
||||||
|
|
||||||
# =============================================================================
|
|
||||||
# NIEUŻYWANE KEYBINDY
|
|
||||||
# =============================================================================
|
|
||||||
# "$modifier, B, exec, bitwarden"
|
|
||||||
# "$modifier, G, exec, affinity-v3"
|
|
||||||
# "$modifier, L, exec, logseq"
|
|
||||||
# "$modifier, O, exec, obs"
|
|
||||||
# "$modifier, V, exec, codium"
|
|
||||||
|
|
||||||
# "$modifier SHIFT, N, exec, swaync-client -rs"
|
|
||||||
# "$modifier, P, pseudo,"
|
|
||||||
# "$modifier SHIFT,F, togglefloating,"
|
|
||||||
# "$modifier ALT,F, workspaceopt, allfloat"
|
|
||||||
# "$modifier SHIFT, SPACE, movetoworkspace, special"
|
|
||||||
# "$modifier, SPACE, togglespecialworkspace"
|
|
||||||
# "ALT,Tab,cyclenext"
|
|
||||||
# "ALT,Tab,bringactivetotop"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
shiftBinds = [
|
||||||
|
"SUPER SHIFT, C, exec, dex ${desktopEntriesPath}/claude.desktop #\"Claude AI chat\""
|
||||||
|
"SUPER SHIFT, G, exec, dex ${desktopEntriesPath}/chatgpt.desktop #\"ChatGPT AI chat\""
|
||||||
|
"SUPER SHIFT, K, exec, noctalia-shell ipc call plugin:keybind-cheatsheet toggle #\"Toggle keybind cheatsheet\""
|
||||||
|
"SUPER SHIFT, M, exec, dex ${desktopEntriesPath}/messenger.desktop #\"Facebook Messenger client\""
|
||||||
|
"SUPER SHIFT, N, exec, nextcloud #\"Nextcloud desktop sync client\""
|
||||||
|
"SUPER SHIFT, O, exec, obs #\"Open Broadcaster Software\""
|
||||||
|
"SUPER SHIFT, P, exec, noctalia-shell ipc call volume togglePanel #\"Toggle volume control panel\""
|
||||||
|
"SUPER SHIFT, R, exec, restart.noctalia #\"Restart Noctalia shell\""
|
||||||
|
"SUPER SHIFT, Return, exec, noctalia-shell ipc call launcher toggle #\"Toggle application launcher\""
|
||||||
|
"SUPER SHIFT, S, exec, screenshootin #\"Take screenshot\""
|
||||||
|
"SUPER SHIFT, T, exec, tutanota-desktop #\"Tutanota encrypted email client\""
|
||||||
|
"SUPER SHIFT, V, exec, noctalia-shell ipc call launcher clipboard #\"Open clipboard manager\""
|
||||||
|
];
|
||||||
|
|
||||||
|
altBinds = [
|
||||||
|
"SUPER ALT, C, exec, noctalia-shell ipc call controlCenter toggle #\"Toggle control center\""
|
||||||
|
"SUPER ALT, G, exec, dex ${desktopEntriesPath}/glance.desktop #\"Glance server panel\""
|
||||||
|
"SUPER ALT, M, exec, dex ${desktopEntriesPath}/mastodon.desktop #\"Mastodon social network client\""
|
||||||
|
"SUPER ALT, P, exec, noctalia-shell ipc call settings toggle #\"Open settings panel\""
|
||||||
|
"SUPER ALT, S, exec, slack #\"Slack team communication tool\""
|
||||||
|
"SUPER ALT, T, exec, gedit #\"GNOME text editor\""
|
||||||
|
"SUPER ALT, W, exec, noctalia-shell ipc call wallpaper toggle #\"Toggle wallpaper\""
|
||||||
|
];
|
||||||
|
|
||||||
|
controlBinds = [
|
||||||
|
"SUPER CONTROL, C, exec, noctalia-shell ipc call powerProfile cycle #\"Cycle through power profiles\""
|
||||||
|
"SUPER CONTROL, G, exec, gimp #\"GNU Image Manipulation Program\""
|
||||||
|
"SUPER CONTROL, M, exec, mattermost-desktop #\"Mattermost team chat client\""
|
||||||
|
"SUPER CONTROL, S, exec, signal-desktop #\"Signal encrypted messaging\""
|
||||||
|
"SUPER CONTROL, P, exec, hyprpicker -a #\"Pick color from screen\""
|
||||||
|
];
|
||||||
|
|
||||||
|
windowManagementBinds = [
|
||||||
|
"SUPER, F, fullscreen, #\"Toggle fullscreen mode\""
|
||||||
|
"SUPER, Q, killactive, #\"Close active window\""
|
||||||
|
"SUPER SHIFT, I, togglesplit, #\"Toggle split layout\""
|
||||||
|
"SUPER SHIFT, F, togglefloating, #\"Toggle floating mode\""
|
||||||
|
];
|
||||||
|
|
||||||
|
windowFocusBinds = [
|
||||||
|
"SUPER, down, movefocus, d #\"Move focus down\""
|
||||||
|
"SUPER, left, movefocus, l #\"Move focus left\""
|
||||||
|
"SUPER, right, movefocus, r #\"Move focus right\""
|
||||||
|
"SUPER, up, movefocus, u #\"Move focus up\""
|
||||||
|
];
|
||||||
|
|
||||||
|
windowMovementBinds = [
|
||||||
|
"SUPER SHIFT, down, movewindow, d #\"Move window down\""
|
||||||
|
"SUPER SHIFT, left, movewindow, l #\"Move window left\""
|
||||||
|
"SUPER SHIFT, right, movewindow, r #\"Move window right\""
|
||||||
|
"SUPER SHIFT, up, movewindow, u #\"Move window up\""
|
||||||
|
];
|
||||||
|
|
||||||
|
windowSwapBinds = [
|
||||||
|
"SUPER ALT, down, swapwindow, d #\"Swap active window with window below\""
|
||||||
|
"SUPER ALT, left, swapwindow, l #\"Swap active window with window on the left\""
|
||||||
|
"SUPER ALT, right, swapwindow, r #\"Swap active window with window on the right\""
|
||||||
|
"SUPER ALT, up, swapwindow, u #\"Swap active window with window above\""
|
||||||
|
];
|
||||||
|
|
||||||
|
workspacesSwitchBinds = [
|
||||||
|
"SUPER, 0, workspace, 10 #\"Switch to workspace 10\""
|
||||||
|
"SUPER, 1, workspace, 1 #\"Switch to workspace 1\""
|
||||||
|
"SUPER, 2, workspace, 2 #\"Switch to workspace 2\""
|
||||||
|
"SUPER, 3, workspace, 3 #\"Switch to workspace 3\""
|
||||||
|
"SUPER, 4, workspace, 4 #\"Switch to workspace 4\""
|
||||||
|
"SUPER, 5, workspace, 5 #\"Switch to workspace 5\""
|
||||||
|
"SUPER, 6, workspace, 6 #\"Switch to workspace 6\""
|
||||||
|
"SUPER, 7, workspace, 7 #\"Switch to workspace 7\""
|
||||||
|
"SUPER, 8, workspace, 8 #\"Switch to workspace 8\""
|
||||||
|
"SUPER, 9, workspace, 9 #\"Switch to workspace 9\""
|
||||||
|
"SUPER CONTROL, left, workspace, e-1 #\"Switch to previous workspace\""
|
||||||
|
"SUPER CONTROL, right, workspace, e+1 #\"Switch to next workspace\""
|
||||||
|
"SUPER, mouse_down, workspace, e+1 #\"Switch to next workspace with mouse\""
|
||||||
|
"SUPER, mouse_up, workspace, e-1 #\"Switch to previous workspace with mouse\""
|
||||||
|
];
|
||||||
|
|
||||||
|
workspacesSwapBinds = [
|
||||||
|
"SUPER SHIFT, 0, movetoworkspace, 10 #\"Move active window to workspace 10\""
|
||||||
|
"SUPER SHIFT, 1, movetoworkspace, 1 #\"Move active window to workspace 1\""
|
||||||
|
"SUPER SHIFT, 2, movetoworkspace, 2 #\"Move active window to workspace 2\""
|
||||||
|
"SUPER SHIFT, 3, movetoworkspace, 3 #\"Move active window to workspace 3\""
|
||||||
|
"SUPER SHIFT, 4, movetoworkspace, 4 #\"Move active window to workspace 4\""
|
||||||
|
"SUPER SHIFT, 5, movetoworkspace, 5 #\"Move active window to workspace 5\""
|
||||||
|
"SUPER SHIFT, 6, movetoworkspace, 6 #\"Move active window to workspace 6\""
|
||||||
|
"SUPER SHIFT, 7, movetoworkspace, 7 #\"Move active window to workspace 7\""
|
||||||
|
"SUPER SHIFT, 8, movetoworkspace, 8 #\"Move active window to workspace 8\""
|
||||||
|
"SUPER SHIFT, 9, movetoworkspace, 9 #\"Move active window to workspace 9\""
|
||||||
|
];
|
||||||
|
|
||||||
|
systemMediaAndControllsBinds = [
|
||||||
|
",XF86AudioLowerVolume, exec, noctalia-shell ipc call volume decrease #\"Lower system volume\""
|
||||||
|
",XF86AudioMute, exec, noctalia-shell ipc call volume muteOutput #\"Mute audio output\""
|
||||||
|
",XF86AudioNext, exec, noctalia-shell ipc call media next #\"Next media track\""
|
||||||
|
",XF86AudioPause, exec, noctalia-shell ipc call media pause #\"Pause media playback\""
|
||||||
|
",XF86AudioPlay, exec, noctalia-shell ipc call media play #\"Play media\""
|
||||||
|
",XF86AudioPrev, exec, noctalia-shell ipc call media previous #\"Previous media track\""
|
||||||
|
",XF86AudioRaiseVolume, exec, noctalia-shell ipc call volume increase #\"Raise system volume\""
|
||||||
|
",XF86MonBrightnessDown, exec, noctalia-shell ipc call brightness decrease #\"Decrease screen brightness\""
|
||||||
|
",XF86MonBrightnessUp, exec, noctalia-shell ipc call brightness increase #\"Increase screen brightness\""
|
||||||
|
];
|
||||||
|
|
||||||
|
mkBlock = header: lines:
|
||||||
|
lib.concatLines (
|
||||||
|
["# ${header}"]
|
||||||
|
++ (map (l: "bind = ${l}") lines)
|
||||||
|
);
|
||||||
|
|
||||||
|
fullConfig = lib.concatLines [
|
||||||
|
""
|
||||||
|
(mkBlock "1. MAIN APPS" mainBinds)
|
||||||
|
(mkBlock "2. SHIFT APPS" shiftBinds)
|
||||||
|
(mkBlock "3. ALT APPS" altBinds)
|
||||||
|
(mkBlock "4. CONTROL APPS" controlBinds)
|
||||||
|
(mkBlock "5. WINDOW MANAGEMENT" windowManagementBinds)
|
||||||
|
(mkBlock "6. WINDOWS FOCUS" windowFocusBinds)
|
||||||
|
(mkBlock "7. WINDOWS MOVEMENT" windowMovementBinds)
|
||||||
|
(mkBlock "8. WINDOWS SWAP" windowSwapBinds)
|
||||||
|
(mkBlock "9. WORKSPACES SWITCH" workspacesSwitchBinds)
|
||||||
|
(mkBlock "10. WORKSPACES SWAP" workspacesSwapBinds)
|
||||||
|
(mkBlock "11. SYSTEM MEDIA & CONTROLS" systemMediaAndControllsBinds)
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
wayland.windowManager.hyprland.settings = {
|
||||||
|
extraConfig = fullConfig;
|
||||||
|
|
||||||
bindm = [
|
bindm = [
|
||||||
"$modifier, mouse:272, movewindow"
|
"SUPER, mouse:272, movewindow"
|
||||||
"$modifier, mouse:273, resizewindow"
|
"SUPER, mouse:273, resizewindow"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,16 +1,11 @@
|
|||||||
{ host, ... }:
|
_: {
|
||||||
let
|
|
||||||
inherit (import ../../../hosts/${host}/variables.nix) animChoice;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
animChoice
|
./animations.nix
|
||||||
./binds.nix
|
./binds.nix
|
||||||
./env.nix
|
./env.nix
|
||||||
./exec-once.nix
|
./exec-once.nix
|
||||||
./hypridle.nix
|
./hypridle.nix
|
||||||
./hyprland.nix
|
./hyprland.nix
|
||||||
./hyprlock.nix
|
|
||||||
./pyprland.nix
|
./pyprland.nix
|
||||||
./windowrules.nix
|
./windowrules.nix
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1,8 +1,5 @@
|
|||||||
{ ... }:
|
_: {
|
||||||
{
|
wayland.windowManager.hyprland.settings.env = [
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
settings = {
|
|
||||||
env = [
|
|
||||||
"NIXOS_OZONE_WL, 1"
|
"NIXOS_OZONE_WL, 1"
|
||||||
"NIXPKGS_ALLOW_UNFREE, 1"
|
"NIXPKGS_ALLOW_UNFREE, 1"
|
||||||
"XDG_CURRENT_DESKTOP, Hyprland"
|
"XDG_CURRENT_DESKTOP, Hyprland"
|
||||||
@@ -25,13 +22,7 @@
|
|||||||
"GDK_SCALE,1"
|
"GDK_SCALE,1"
|
||||||
"QT_SCALE_FACTOR,1"
|
"QT_SCALE_FACTOR,1"
|
||||||
"EDITOR,nano"
|
"EDITOR,nano"
|
||||||
# Set terminal and xdg_terminal_emulator to kitty
|
|
||||||
# To provent yazi from starting xterm when run from rofi menu
|
|
||||||
# You can set to your preferred terminal if you you like
|
|
||||||
# ToDo: Pull default terminal from config
|
|
||||||
"TERMINAL,kitty"
|
"TERMINAL,kitty"
|
||||||
"XDG_TERMINAL_EMULATOR,kitty"
|
"XDG_TERMINAL_EMULATOR,kitty"
|
||||||
];
|
];
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,25 +1,15 @@
|
|||||||
{ host, ... }:
|
_: {
|
||||||
let
|
wayland.windowManager.hyprland.settings.exec-once = [
|
||||||
inherit (import ../../../hosts/${host}/variables.nix)
|
|
||||||
stylixImage
|
|
||||||
;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
wayland.windowManager.hyprland.settings = {
|
|
||||||
exec-once = [
|
|
||||||
"wl-paste --type text --watch cliphist store" # Saves text
|
"wl-paste --type text --watch cliphist store" # Saves text
|
||||||
"wl-paste --type image --watch cliphist store" # Saves images
|
"wl-paste --type image --watch cliphist store" # Saves images
|
||||||
"dbus-update-activation-environment --all --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
"dbus-update-activation-environment --all --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||||
"systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
"systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||||
"systemctl --user start hyprpolkitagent"
|
"systemctl --user start hyprpolkitagent"
|
||||||
|
|
||||||
"killall -q swww;sleep .5 && swww-daemon"
|
# "killall -q waybar"
|
||||||
"killall -q waybar;sleep .5 && waybar"
|
# "pkill waybar"
|
||||||
"killall -q swaync;sleep .5 && swaync"
|
# "killall -q swaync"
|
||||||
"#wallsetter &"
|
# "pkill swaync"
|
||||||
"pypr &"
|
"noctalia-shell &"
|
||||||
"nm-applet --indicator"
|
|
||||||
"sleep 1.0 && swww img ${stylixImage}"
|
|
||||||
];
|
];
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,20 +1,12 @@
|
|||||||
{ ... }:
|
_: {
|
||||||
|
services.hypridle = {
|
||||||
{
|
|
||||||
services = {
|
|
||||||
hypridle = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
general = {
|
general = {
|
||||||
after_sleep_cmd = "hyprctl dispatch dpms on";
|
after_sleep_cmd = "hyprctl dispatch dpms on";
|
||||||
ignore_dbus_inhibit = false;
|
ignore_dbus_inhibit = false;
|
||||||
lock_cmd = "hyprlock";
|
|
||||||
};
|
};
|
||||||
listener = [
|
listener = [
|
||||||
{
|
|
||||||
timeout = 900;
|
|
||||||
on-timeout = "hyprlock";
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
timeout = 1200;
|
timeout = 1200;
|
||||||
on-timeout = "hyprctl dispatch dpms off";
|
on-timeout = "hyprctl dispatch dpms off";
|
||||||
@@ -23,5 +15,4 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,11 +3,9 @@
|
|||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
let
|
|
||||||
inherit (import ../../../hosts/${host}/variables.nix) extraMonitorSettings keyboardLayout;
|
inherit (import ../../../hosts/${host}/variables.nix) extraMonitorSettings keyboardLayout;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
systemd.user.targets.hyprland-session.Unit.Wants = [
|
systemd.user.targets.hyprland-session.Unit.Wants = [
|
||||||
"xdg-desktop-autostart.target"
|
"xdg-desktop-autostart.target"
|
||||||
];
|
];
|
||||||
@@ -26,11 +24,9 @@ in
|
|||||||
systemd = {
|
systemd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableXdgAutostart = true;
|
enableXdgAutostart = true;
|
||||||
variables = [ "--all" ];
|
variables = ["--all"];
|
||||||
};
|
|
||||||
xwayland = {
|
|
||||||
enable = true;
|
|
||||||
};
|
};
|
||||||
|
xwayland.enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
input = {
|
input = {
|
||||||
kb_layout = "${keyboardLayout}";
|
kb_layout = "${keyboardLayout}";
|
||||||
@@ -62,14 +58,12 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
general = {
|
general = {
|
||||||
"$modifier" = "SUPER";
|
|
||||||
layout = "dwindle";
|
layout = "dwindle";
|
||||||
gaps_in = 6;
|
gaps_in = 6;
|
||||||
gaps_out = 8;
|
gaps_out = 8;
|
||||||
border_size = 2;
|
border_size = 2;
|
||||||
resize_on_border = true;
|
resize_on_border = true;
|
||||||
"col.active_border" =
|
"col.active_border" = "rgb(${config.lib.stylix.colors.base08}) rgb(${config.lib.stylix.colors.base0C}) 45deg";
|
||||||
"rgb(${config.lib.stylix.colors.base08}) rgb(${config.lib.stylix.colors.base0C}) 45deg";
|
|
||||||
"col.inactive_border" = "rgb(${config.lib.stylix.colors.base01})";
|
"col.inactive_border" = "rgb(${config.lib.stylix.colors.base01})";
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -100,10 +94,12 @@ in
|
|||||||
|
|
||||||
decoration = {
|
decoration = {
|
||||||
rounding = 10;
|
rounding = 10;
|
||||||
|
rounding_power = 2;
|
||||||
blur = {
|
blur = {
|
||||||
enabled = true;
|
enabled = true;
|
||||||
size = 5;
|
size = 5;
|
||||||
passes = 3;
|
passes = 3;
|
||||||
|
vibrancy = 0.1696;
|
||||||
ignore_opacity = false;
|
ignore_opacity = false;
|
||||||
new_optimizations = true;
|
new_optimizations = true;
|
||||||
};
|
};
|
||||||
@@ -135,9 +131,7 @@ in
|
|||||||
direct_scanout = 0;
|
direct_scanout = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
debug = {
|
debug.full_cm_proto = true;
|
||||||
full_cm_proto = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
master = {
|
master = {
|
||||||
new_status = "master";
|
new_status = "master";
|
||||||
@@ -146,20 +140,14 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
# Ensure Xwayland windows render at integer scale; compositor scales them
|
# Ensure Xwayland windows render at integer scale; compositor scales them
|
||||||
xwayland = {
|
xwayland.force_zero_scaling = true;
|
||||||
force_zero_scaling = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extraConfig = "
|
extraConfig = "
|
||||||
monitor=,preferred,auto,auto
|
monitor=,preferred,auto,auto
|
||||||
monitor=Virtual-1,1920x1080@60,auto,1
|
monitor=Virtual-1,1920x1080@60,auto,1
|
||||||
${
|
${extraMonitorSettings}
|
||||||
extraMonitorSettings
|
layerrule = blur on, blur_popups on, ignore_alpha 0.5, match:namespace noctalia-background-\.*$
|
||||||
}
|
|
||||||
# To enable blur on waybar uncomment the line below
|
|
||||||
# Thanks to SchotjeChrisman
|
|
||||||
#layerrule = blur,waybar
|
|
||||||
";
|
";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,48 +0,0 @@
|
|||||||
{ username, ... }:
|
|
||||||
{
|
|
||||||
programs.hyprlock = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
general = {
|
|
||||||
disable_loading_bar = true;
|
|
||||||
grace = 10;
|
|
||||||
hide_cursor = true;
|
|
||||||
no_fade_in = false;
|
|
||||||
};
|
|
||||||
background = [
|
|
||||||
{
|
|
||||||
path = "/home/${username}/Pictures/Wallpapers/four-elements.jpg";
|
|
||||||
blur_passes = 3;
|
|
||||||
blur_size = 8;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
image = [
|
|
||||||
{
|
|
||||||
path = "/home/${username}/.config/face.jpg";
|
|
||||||
size = 150;
|
|
||||||
border_size = 4;
|
|
||||||
border_color = "rgb(0C96F9)";
|
|
||||||
rounding = -1; # Negative means circle
|
|
||||||
position = "0, 200";
|
|
||||||
halign = "center";
|
|
||||||
valign = "center";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
input-field = [
|
|
||||||
{
|
|
||||||
size = "200, 50";
|
|
||||||
position = "0, -80";
|
|
||||||
monitor = "";
|
|
||||||
dots_center = true;
|
|
||||||
fade_on_empty = false;
|
|
||||||
font_color = "rgb(CFE6F4)";
|
|
||||||
inner_color = "rgb(657DC2)";
|
|
||||||
outer_color = "rgb(0D0E15)";
|
|
||||||
outline_thickness = 5;
|
|
||||||
placeholder_text = "Password...";
|
|
||||||
shadow_passes = 2;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user