Compare commits
243
Commits
9b0b088ecc
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
76168f8b05 | ||
|
|
673284c227 | ||
|
|
9eadcbf6a7 | ||
|
|
ba42268e49 | ||
|
|
01e8bed0fc | ||
|
|
5210fb36a0 | ||
|
|
cf553889d6 | ||
|
|
0aa11e118c | ||
|
|
8aafd5c9b9 | ||
|
|
37bcd81e39 | ||
|
|
19ec68c058 | ||
|
|
c48368b501 | ||
|
|
eb69b51756 | ||
|
|
63404da10f | ||
|
|
ad1b6da6cf | ||
|
|
8c7e72d18c | ||
|
|
1ec7ef8ccd | ||
|
|
ffac8ef90a | ||
|
|
10d3cb4dbe | ||
|
|
42bd0e2cac | ||
|
|
f495530a86 | ||
|
|
067e656a05 | ||
|
|
d980e233e4 | ||
|
|
5a79c1cf68 | ||
|
|
70299a152e | ||
|
|
50bab47767 | ||
|
|
a65672e1bf | ||
|
|
e21894da75 | ||
|
|
5b116bfe53 | ||
|
|
cb978aae73 | ||
|
|
af11b7eddf | ||
|
|
bf89c7cfaf | ||
|
|
55f2f5e6f8 | ||
|
|
2e7ba8e8ba | ||
|
|
ca39e1f8c4 | ||
|
|
f85aad4f95 | ||
|
|
14b36f71bf | ||
|
|
44df22fef4 | ||
|
|
892e5681a1 | ||
|
|
91c03b7751 | ||
|
|
c7762fdebd | ||
|
|
a6da384ba0 | ||
|
|
a8ad063d7a | ||
|
|
4f6d2e0350 | ||
|
|
664c5a332a | ||
|
|
fbf381f476 | ||
|
|
764967bd53 | ||
|
|
7f1eccf9e8 | ||
|
|
6d245ab923 | ||
|
|
20413934e4 | ||
|
|
b73a6f488b | ||
|
|
f929dd3e20 | ||
|
|
07c5d42539 | ||
|
|
b24fc7bd16 | ||
|
|
fd8e52d6d6 | ||
|
|
8956d1790e | ||
|
|
e8c1bb2b2d | ||
|
|
f37c47818a | ||
|
|
1f0756b051 | ||
|
|
87046167e1 | ||
|
|
bf97f9bddf | ||
|
|
75f60590ad | ||
|
|
5ce68a33b6 | ||
|
|
058f8318e5 | ||
|
|
3dac11f8d9 | ||
|
|
f97a86c7bd | ||
|
|
199e90e1f8 | ||
|
|
8c7713c8bc | ||
|
|
9f9d69577e | ||
|
|
8043192d6b | ||
|
|
3585f6dd9c | ||
|
|
39a2171cb1 | ||
|
|
b5c5a2bfef | ||
|
|
7564cff2a9 | ||
|
|
9d0b8aa3c2 | ||
|
|
91ff1c9b59 | ||
|
|
682d15a98d | ||
|
|
8b9a0673a6 | ||
|
|
2ba484163e | ||
|
|
6ea77befc9 | ||
|
|
3be4071e9f | ||
|
|
e55a047241 | ||
|
|
3bdcaa3d53 | ||
|
|
e76974c83c | ||
|
|
aa22dca424 | ||
|
|
b01c562f3a | ||
|
|
d54bad1c90 | ||
|
|
4475bc7129 | ||
|
|
83143b1a05 | ||
|
|
33ef812e07 | ||
|
|
00fa7a3c36 | ||
|
|
cd9d91e189 | ||
|
|
b4c7a4371c | ||
|
|
3566c46ac5 | ||
|
|
afcc0dadfe | ||
|
|
861b58ffe6 | ||
|
|
0210a58bf5 | ||
|
|
526618f959 | ||
|
|
a710b74b92 | ||
|
|
09080f9847 | ||
|
|
fe2b8afda2 | ||
|
|
631c57933a | ||
|
|
42e50ad6f3 | ||
|
|
5f417add31 | ||
|
|
5b5de445e9 | ||
|
|
fec12375cf | ||
|
|
9b6de54e34 | ||
|
|
5551b13801 | ||
|
|
fede2f5799 | ||
|
|
c4cf3d1ba8 | ||
|
|
548b791539 | ||
|
|
b67b4f9202 | ||
|
|
e069aecc8e | ||
|
|
c41e4cd6e9 | ||
|
|
56c920d58e | ||
|
|
e1daf39fb5 | ||
|
|
2535c0966b | ||
|
|
684e083884 | ||
|
|
589bb177d5 | ||
|
|
99accbec6b | ||
|
|
513ca78544 | ||
|
|
228a3eb0d6 | ||
|
|
4ba4eaa831 | ||
|
|
cce705e664 | ||
|
|
34775227e9 | ||
|
|
d1329448d8 | ||
|
|
74218acbf3 | ||
|
|
f2f589884d | ||
|
|
2b7c1d4a64 | ||
|
|
66d9b83dc8 | ||
|
|
d341c0c3f1 | ||
|
|
e776e94484 | ||
|
|
6d43bd1968 | ||
|
|
a5f63ee766 | ||
|
|
7d294ac8b1 | ||
|
|
0f6af3cf48 | ||
|
|
6e49715a28 | ||
|
|
230315f0f6 | ||
|
|
cda218d254 | ||
|
|
48c09ce5ae | ||
|
|
c8082d5b87 | ||
|
|
6b003a8648 | ||
|
|
f7306e8760 | ||
|
|
0ec6a7dbbe | ||
|
|
1a51b5a9c2 | ||
|
|
9f7f9aac84 | ||
|
|
87a7013d51 | ||
|
|
9c1ba99c88 | ||
|
|
26b49e8a8d | ||
|
|
0a43a381cc | ||
|
|
d3f7fe76d8 | ||
|
|
38c4e7a674 | ||
|
|
924395d64e | ||
|
|
8f12835e33 | ||
|
|
f776ca11b8 | ||
|
|
1532be3e5e | ||
|
|
78769733a2 | ||
|
|
669b93bd4a | ||
|
|
9d9c3f5e64 | ||
|
|
e630fd5097 | ||
|
|
e5f57c30da | ||
|
|
14d81a36d3 | ||
|
|
478487d1b9 | ||
|
|
a6aea5e01b | ||
|
|
5a95c0cd66 | ||
|
|
c97a14d603 | ||
|
|
7ffe9399e7 | ||
|
|
fe057f88e5 | ||
|
|
6d70290289 | ||
|
|
ecdfd5867e | ||
|
|
1c4c356479 | ||
|
|
9037f01470 | ||
|
|
325a193a38 | ||
|
|
0b6e55da82 | ||
|
|
f9c605dcf7 | ||
|
|
e3ecdaa1da | ||
|
|
ffec6e9b29 | ||
|
|
65ffb35fd0 | ||
|
|
b6a4563d95 | ||
|
|
f1259be78c | ||
|
|
ab35d54e05 | ||
|
|
7ed89d05ed | ||
|
|
0ce0d549ba | ||
|
|
771a2b88a7 | ||
|
|
6488e6b203 | ||
|
|
32a46708fb | ||
|
|
0275bf10c1 | ||
|
|
d429fbd1d6 | ||
|
|
6624ebeff3 | ||
|
|
91240b2a50 | ||
|
|
858a4a1bf1 | ||
|
|
5ae50d488f | ||
|
|
8814466d57 | ||
|
|
a8a5ae780c | ||
|
|
fb7213dfb6 | ||
|
|
170cf22a58 | ||
|
|
fb8207c1c9 | ||
|
|
ade07ccd6f | ||
|
|
8676253432 | ||
|
|
a5cf020c70 | ||
|
|
46c9281a62 | ||
|
|
ff32a25403 | ||
|
|
1df5c12921 | ||
|
|
fec9e18710 | ||
|
|
cacd136ca9 | ||
|
|
5798a8bcb2 | ||
|
|
6f2936f567 | ||
|
|
f9fae2f75a | ||
|
|
ca3c77768d | ||
|
|
23f407b824 | ||
|
|
1e8525927c | ||
|
|
923232aed9 | ||
|
|
852d9a2baa | ||
|
|
1f6904cbc9 | ||
|
|
6c094967e3 | ||
|
|
1635d78674 | ||
|
|
27bc4cf9a4 | ||
|
|
12b0f8e27a | ||
|
|
614a10248f | ||
|
|
f48152ff7a | ||
|
|
b5a63b3cbd | ||
|
|
39ab82ae47 | ||
|
|
6d83bd12d9 | ||
|
|
e95fd7de47 | ||
|
|
092579af98 | ||
|
|
8ce74dd7bf | ||
|
|
412ce8623a | ||
|
|
72e91c49fb | ||
|
|
7fc040a279 | ||
|
|
e5394dde16 | ||
|
|
1585912162 | ||
|
|
c5ef752a66 | ||
|
|
40546f121f | ||
|
|
a5f666c221 | ||
|
|
64a83c51ed | ||
|
|
d4d2f6d51c | ||
|
|
2dc084b0ea | ||
|
|
923e6f4bee | ||
|
|
7868336d5b | ||
|
|
c44c480e61 | ||
|
|
85f0b82334 | ||
|
|
763cd548f4 | ||
|
|
b100324fba |
@@ -1,19 +0,0 @@
|
|||||||
name: nix flake show
|
|
||||||
run-name: ${{ gitea.actor }} pushed to repo. Checking config syntax.
|
|
||||||
on: [push]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
show-flake:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout repo
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Install Nix
|
|
||||||
uses: cachix/install-nix-action@v31
|
|
||||||
|
|
||||||
- name: Run nix flake show
|
|
||||||
run: |
|
|
||||||
echo "Running nix flake show..."
|
|
||||||
nix flake show --show-trace
|
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
name: nixos config pipeline
|
||||||
|
|
||||||
|
on: [push]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
show-flake:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
check-success: ${{ steps.check.outcome == 'success' }}
|
||||||
|
steps:
|
||||||
|
- name: checkout repo
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: install nix
|
||||||
|
uses: cachix/install-nix-action@v31
|
||||||
|
- id: check
|
||||||
|
name: run nix flake show
|
||||||
|
run: nix flake show --show-trace
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
needs: show-flake
|
||||||
|
if: needs.show-flake.result == 'success'
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: ssh to server1 and rebuild
|
||||||
|
uses: appleboy/ssh-action@v1.2.0
|
||||||
|
with:
|
||||||
|
host: ${{ secrets.SERVER1_HOST }}
|
||||||
|
username: root
|
||||||
|
key: ${{ secrets.SERVER1_KEY }}
|
||||||
|
script: |
|
||||||
|
set -e
|
||||||
|
cd /home/smayzy/nix-config
|
||||||
|
sudo -u smayzy git pull
|
||||||
|
old_gen="$(readlink /run/current-system)"
|
||||||
|
if nixos-rebuild switch --flake git+https://gitea.smayzy.ovh/Smayzy/nix-config#server1; then
|
||||||
|
echo "Deployment successful"
|
||||||
|
else
|
||||||
|
new_gen="$(readlink /run/current-system)"
|
||||||
|
if [ "$new_gen" != "$old_gen" ]; then
|
||||||
|
nixos-rebuild switch --rollback
|
||||||
|
fi
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
@@ -2,13 +2,12 @@
|
|||||||
# Smayzy's nixos config
|
# Smayzy's nixos config
|
||||||
|
|
||||||
This repo is Smayzy's nixos config repo you are free to use anything you need.
|
This repo is Smayzy's nixos config repo you are free to use anything you need.
|
||||||
I should still mention that this is nowhere near production ready use it at your own risk. I'm just making my config public for my friends. I'm no expert on nixos. The layout is pretty straight forward. If you see a error or a simple improvement you can write feel free to make a pull request but if you just want to customize it to your need just fork it.
|
If you see a error or a simple improvement you can write feel free to make a pull request but if you just want to customize it to your need just fork it.
|
||||||
|
|
||||||
## Author
|
## Author
|
||||||
|
|
||||||
- [@smayzy](https://gitea.smayzy.ovh/Smayzy)
|
- [@smayzy](https://gitea.smayzy.ovh/Smayzy)
|
||||||
|
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
- See the modules description for more info
|
- See the modules description for more info
|
||||||
@@ -23,12 +22,8 @@ I should still mention that this is nowhere near production ready use it at your
|
|||||||
## Deployment
|
## Deployment
|
||||||
|
|
||||||
To deploy the config run
|
To deploy the config run
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://gitea.smayzy.ovh/Smayzy/nix-config.git
|
nixos-rebuild switch --flake git+https://gitea.smayzy.ovh/Smayzy/nix-config#hostname
|
||||||
```
|
|
||||||
```bash
|
|
||||||
nixos-rebuild switch --flake ./nix-config/#hostname
|
|
||||||
```
|
```
|
||||||
To update changes run
|
To update changes run
|
||||||
```bash
|
```bash
|
||||||
@@ -38,9 +33,6 @@ To upgrade run
|
|||||||
```bash
|
```bash
|
||||||
nh os switch -u --ask
|
nh os switch -u --ask
|
||||||
```
|
```
|
||||||
## Demo
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
@@ -53,11 +45,6 @@ TODO
|
|||||||
|
|
||||||
Absolutly NOT it's just my config
|
Absolutly NOT it's just my config
|
||||||
|
|
||||||
#### Why is the repo not active rn ?
|
|
||||||
|
|
||||||
I'm a student so I can only work on the config when I have free time
|
|
||||||
and I only work on it if I need something I don't already have or I have time to clean. It's only the reflection of my needs
|
|
||||||
|
|
||||||
## Feedback
|
## Feedback
|
||||||
|
|
||||||
If you have any feedback, please reach out to us at smayzy@smayzy.ovh
|
If you have any feedback, please reach out to us at smayzy@smayzy.ovh
|
||||||
@@ -65,4 +52,3 @@ If you have any feedback, please reach out to us at smayzy@smayzy.ovh
|
|||||||
|
|
||||||
## 🚀 About Me
|
## 🚀 About Me
|
||||||
I'm a student that loves pentesting and tinkering with things
|
I'm a student that loves pentesting and tinkering with things
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
convert hyprland config to nix
|
||||||
|
simplify the config
|
||||||
|
remove useless modules
|
||||||
|
move things from groups to configs
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
---------------
|
||||||
|
--- SOURCES ---
|
||||||
|
---------------
|
||||||
|
|
||||||
|
-- MONITORS
|
||||||
|
require("source/monitors")
|
||||||
|
-- BINDS
|
||||||
|
require("source/binds")
|
||||||
|
-- AUTOSTART
|
||||||
|
require("source/autostart")
|
||||||
|
-- ENVIRONMENT VARIABLES
|
||||||
|
require("source/ev")
|
||||||
|
-- LOOK AND FEEL
|
||||||
|
require("source/look")
|
||||||
|
-- INPUT
|
||||||
|
require("source/input")
|
||||||
|
-- WINDOWS AND WORKSPACES
|
||||||
|
require("source/winandwork")
|
||||||
@@ -1,7 +1,11 @@
|
|||||||
#preload the wallpapers
|
wallpaper {
|
||||||
preload = ~/wallpaper/itachi-uchiha-sharingan-crow-akatsuki-4k-wallpaper-uhdpaper.com-294@2@a.jpg
|
monitor = DP-1
|
||||||
preload = ~/wallpaper/eren-attack-on-titan-final-season-part-3-4k-wallpaper-uhdpaper.com-917@1@j.jpg
|
path = ~/wallpaper/itachi-uchiha-sharingan-crow-akatsuki-4k-wallpaper-uhdpaper.com-294@2@a.jpg
|
||||||
|
fit_mode = cover
|
||||||
#set the wallpaper
|
}
|
||||||
wallpaper = DP-1,~/wallpaper/itachi-uchiha-sharingan-crow-akatsuki-4k-wallpaper-uhdpaper.com-294@2@a.jpg
|
wallpaper {
|
||||||
wallpaper = DP-2,~/wallpaper/eren-attack-on-titan-final-season-part-3-4k-wallpaper-uhdpaper.com-917@1@j.jpg
|
monitor = DP-2
|
||||||
|
path = ~/wallpaper/eren-attack-on-titan-final-season-part-3-4k-wallpaper-uhdpaper.com-917@1@j.jpg
|
||||||
|
fit_mode = cover
|
||||||
|
}
|
||||||
|
splash = false
|
||||||
|
|||||||
@@ -7,5 +7,4 @@ exec-once = wl-paste --type image --watch cliphist store
|
|||||||
exec-once = systemctl --user start hyprpolkitagent
|
exec-once = systemctl --user start hyprpolkitagent
|
||||||
exec-once = mako
|
exec-once = mako
|
||||||
# APPs
|
# APPs
|
||||||
exec-once = [workspace 11 silent] webcord
|
|
||||||
exec-once = [workspace 10 silent] thunderbird
|
exec-once = [workspace 10 silent] thunderbird
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
-- Autostarts here
|
||||||
|
|
||||||
|
-- exec_once
|
||||||
|
hl.on("hyprland.start", function ()
|
||||||
|
hl.exec_cmd("waybar")
|
||||||
|
hl.exec_cmd("hyprpaper")
|
||||||
|
hl.exec_cmd("wl-paste --type text --watch cliphist store")
|
||||||
|
hl.exec_cmd("wl-paste --type image --watch cliphist store")
|
||||||
|
hl.exec_cmd("systemctl --user start hyprpolkitagent")
|
||||||
|
hl.exec_cmd("mako")
|
||||||
|
hl.exec_cmd("thunderbird", {workspace = "10 silent"})
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- exec at each reload
|
||||||
|
hl.on("config.reloaded", function ()
|
||||||
|
hl.exec_cmd("killall waybar && waybar")
|
||||||
|
hl.exec_cmd("killall hyprpaper && hyprpaper")
|
||||||
|
end)
|
||||||
@@ -20,7 +20,7 @@ bind = $mainMod, comma, exit,
|
|||||||
bind = $mainMod, E, exec, $fileManager
|
bind = $mainMod, E, exec, $fileManager
|
||||||
bind = $mainMod, R, exec, $menu
|
bind = $mainMod, R, exec, $menu
|
||||||
bind = $mainMod, W, exec, wlogout
|
bind = $mainMod, W, exec, wlogout
|
||||||
bind = $mainMod, A, exec, qutebrowser
|
bind = $mainMod, A, exec, alacritty
|
||||||
bind = $mainMod, F, fullscreen
|
bind = $mainMod, F, fullscreen
|
||||||
bind = $mainMod, T, togglefloating
|
bind = $mainMod, T, togglefloating
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,103 @@
|
|||||||
|
------------------------------------
|
||||||
|
--- USE WEV TO GET THE KEYS CODE ---
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
--------------------
|
||||||
|
--- KEYBINDINGSS ---
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
-- MainMod
|
||||||
|
mainMod = "SUPER"
|
||||||
|
|
||||||
|
-- exec
|
||||||
|
hl.bind(mainMod .. " + comma", hl.dsp.exit())
|
||||||
|
hl.bind(mainMod .. " + F", hl.dsp.window.fullscreen())
|
||||||
|
hl.bind(mainMod .. " + T", hl.dsp.window.float())
|
||||||
|
hl.bind(mainMod .. " + C", hl.dsp.window.close())
|
||||||
|
hl.bind(mainMod .. " + Q", hl.dsp.exec_cmd("kitty"))
|
||||||
|
hl.bind(mainMod .. " + A", hl.dsp.exec_cmd("alacritty"))
|
||||||
|
hl.bind(mainMod .. " + E", hl.dsp.exec_cmd("dolphin"))
|
||||||
|
hl.bind(mainMod .. " + R", hl.dsp.exec_cmd("wofi --show drun"))
|
||||||
|
hl.bind(mainMod .. " + W", hl.dsp.exec_cmd("wlogout"))
|
||||||
|
|
||||||
|
-- Quick
|
||||||
|
hl.bind("XF86AudioMute", hl.dsp.exec_cmd("obsidian"))
|
||||||
|
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("virt-manager"))
|
||||||
|
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("virt-manager"))
|
||||||
|
|
||||||
|
-- Reload waybar
|
||||||
|
hl.bind(mainMod .. " + SHIFT + B", hl.dsp.exec_cmd("pkill waybar && waybar"))
|
||||||
|
|
||||||
|
-- Hide waybar
|
||||||
|
hl.bind(mainMod .. " + X", hl.dsp.exec_cmd("pkill waybar || waybar"))
|
||||||
|
|
||||||
|
-- Clipboard history
|
||||||
|
hl.bind(mainMod .. " + V", hl.dsp.exec_cmd("cliphist list | wofi -dmenu | cliphist decode | wl-copy"))
|
||||||
|
|
||||||
|
-- Screenshot to clipboard
|
||||||
|
hl.bind(mainMod .. " + SHIFT + S", hl.dsp.exec_cmd("grim -g \"$(slurp -d)\" - | wl-copy"))
|
||||||
|
|
||||||
|
-- Move focus with mainMod + arrow keys
|
||||||
|
hl.bind(mainMod .. " + h", hl.dsp.focus({direction = "left"}))
|
||||||
|
hl.bind(mainMod .. " + l", hl.dsp.focus({direction = "right"}))
|
||||||
|
hl.bind(mainMod .. " + k", hl.dsp.focus({direction = "up"}))
|
||||||
|
hl.bind(mainMod .. " + j", hl.dsp.focus({direction = "down"}))
|
||||||
|
|
||||||
|
-- Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
hl.bind(mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
|
||||||
|
hl.bind(mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true })
|
||||||
|
|
||||||
|
-- Resize Windows
|
||||||
|
hl.bind(mainMod .. " + CTRL + h", hl.dsp.window.resize({ x = -20 , y = 0 , relative = true }))
|
||||||
|
hl.bind(mainMod .. " + CTRL + l", hl.dsp.window.resize({ x = 20 , y = 0 , relative = true }))
|
||||||
|
hl.bind(mainMod .. " + CTRL + k", hl.dsp.window.resize({ x = 0 , y = -20 , relative = true }))
|
||||||
|
hl.bind(mainMod .. " + CTRL + j", hl.dsp.window.resize({ x = 0 , y = 20 , relative = true }))
|
||||||
|
|
||||||
|
-- Set default workspace
|
||||||
|
hl.workspace_rule({workspace = "1", monitor = "DP-1", default = true})
|
||||||
|
hl.workspace_rule({workspace = "2", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "3", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "4", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "5", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "6", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "7", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "8", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "9", monitor = "DP-1"})
|
||||||
|
hl.workspace_rule({workspace = "10", monitor = "DP-1"})
|
||||||
|
|
||||||
|
hl.workspace_rule({workspace = "11", monitor = "DP-2", default = true})
|
||||||
|
hl.workspace_rule({workspace = "12", monitor = "DP-2"})
|
||||||
|
hl.workspace_rule({workspace = "13", monitor = "DP-2"})
|
||||||
|
hl.workspace_rule({workspace = "14", monitor = "DP-2"})
|
||||||
|
|
||||||
|
-- Switch workspaces
|
||||||
|
hl.bind(mainMod .. " + ampersand", hl.dsp.focus({ workspace = "1"}))
|
||||||
|
hl.bind(mainMod .. " + eacute", hl.dsp.focus({ workspace = "2"}))
|
||||||
|
hl.bind(mainMod .. " + quotedbl", hl.dsp.focus({ workspace = "3"}))
|
||||||
|
hl.bind(mainMod .. " + apostrophe", hl.dsp.focus({ workspace = "4"}))
|
||||||
|
hl.bind(mainMod .. " + parenleft", hl.dsp.focus({ workspace = "5"}))
|
||||||
|
hl.bind(mainMod .. " + minus", hl.dsp.focus({ workspace = "6"}))
|
||||||
|
hl.bind(mainMod .. " + egrave", hl.dsp.focus({ workspace = "7"}))
|
||||||
|
hl.bind(mainMod .. " + underscore", hl.dsp.focus({ workspace = "8"}))
|
||||||
|
hl.bind(mainMod .. " + ccedilla", hl.dsp.focus({ workspace = "9"}))
|
||||||
|
hl.bind(mainMod .. " + agrave", hl.dsp.focus({ workspace = "10"}))
|
||||||
|
hl.bind(mainMod .. " + dead_circumflex", hl.dsp.focus({ workspace = "11"}))
|
||||||
|
hl.bind(mainMod .. " + dollar", hl.dsp.focus({ workspace = "12"}))
|
||||||
|
hl.bind(mainMod .. " + ugrave", hl.dsp.focus({ workspace = "13"}))
|
||||||
|
hl.bind(mainMod .. " + asterisk", hl.dsp.focus({ workspace = "14"}))
|
||||||
|
|
||||||
|
-- Move active window to a workspace
|
||||||
|
hl.bind(mainMod .. " + SHIFT + ampersand", hl.dsp.window.move({ workspace = "1"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + eacute", hl.dsp.window.move({ workspace = "2"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + quotedbl", hl.dsp.window.move({ workspace = "3"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + apostrophe", hl.dsp.window.move({ workspace = "4"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + parenleft", hl.dsp.window.move({ workspace = "5"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + minus", hl.dsp.window.move({ workspace = "6"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + egrave", hl.dsp.window.move({ workspace = "7"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + underscore", hl.dsp.window.move({ workspace = "8"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + ccedilla", hl.dsp.window.move({ workspace = "9"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + agrave", hl.dsp.window.move({ workspace = "10"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + dead_circumflex", hl.dsp.window.move({ workspace = "11"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + dollar", hl.dsp.window.move({ workspace = "12"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + ugrave", hl.dsp.window.move({ workspace = "13"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + asterisk", hl.dsp.window.move({ workspace = "14"}))
|
||||||
@@ -5,8 +5,6 @@ env = LIBVA_DRIVER_NAME,nvidia
|
|||||||
env = XDG_SESSION_TYPE,wayland
|
env = XDG_SESSION_TYPE,wayland
|
||||||
env = GBM_BACKEND,nvidia-drm
|
env = GBM_BACKEND,nvidia-drm
|
||||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||||
env = GTK_THEME, Adwaita-dark
|
|
||||||
|
|
||||||
|
|
||||||
cursor {
|
cursor {
|
||||||
no_hardware_cursors = true
|
no_hardware_cursors = true
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
-- Set env here
|
||||||
|
hl.env("XCURSOR_SIZE", "24")
|
||||||
|
hl.env("HYPRCURSOR_SIZE", "24")
|
||||||
|
hl.env("LIBVA_DRIVER_NAME", "nvidia")
|
||||||
|
hl.env("XDG_SESSION_TYPE", "wayland")
|
||||||
|
hl.env("GBM_BACKEND", "nvidia-drm")
|
||||||
|
hl.env("__GLX_VENDOR_LIBRARY_NAME", "nvidia")
|
||||||
|
hl.env("HYPRLAND_NO_SD_VARS", "1")
|
||||||
|
hl.env("LD_LIBRARY_PATH", "/nix/store/p5c2hfgw9pipp2vd0xvxjmly99nbsdki-pipewire-1.6.8-jack/lib/")
|
||||||
@@ -14,8 +14,3 @@ input {
|
|||||||
natural_scroll = false
|
natural_scroll = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gestures {
|
|
||||||
workspace_swipe = false
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
--Set inputs here
|
||||||
|
|
||||||
|
hl.config({
|
||||||
|
input = {
|
||||||
|
kb_layout = "fr",
|
||||||
|
kb_variant = "",
|
||||||
|
kb_model = "",
|
||||||
|
kb_options = "",
|
||||||
|
kb_rules = "",
|
||||||
|
|
||||||
|
follow_mouse = 1,
|
||||||
|
|
||||||
|
sensitivity = 0,
|
||||||
|
|
||||||
|
touchpad = {
|
||||||
|
natural_scroll = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
cursor = {
|
||||||
|
no_hardware_cursors = 0,
|
||||||
|
min_refresh_rate = 165
|
||||||
|
}
|
||||||
|
})
|
||||||
@@ -59,7 +59,6 @@ animations {
|
|||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||||
dwindle {
|
dwindle {
|
||||||
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
|
||||||
preserve_split = true # You probably want this
|
preserve_split = true # You probably want this
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -71,3 +70,8 @@ misc {
|
|||||||
force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
|
force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||||
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
|
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ecosystem {
|
||||||
|
no_update_news = true
|
||||||
|
no_donation_nag = true
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,61 @@
|
|||||||
|
--Set look and feel here
|
||||||
|
|
||||||
|
hl.config({
|
||||||
|
general = {
|
||||||
|
layout = "dwindle",
|
||||||
|
gaps_in = 3,
|
||||||
|
gaps_out = 5,
|
||||||
|
border_size = 1,
|
||||||
|
col = {
|
||||||
|
active_border = { colors = {"rgba(33ccffee)", "rgba(00ff99ee)"}, angle = 45 },
|
||||||
|
inactive_border = "rgba(595959aa)",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
decoration = {
|
||||||
|
rounding = 6,
|
||||||
|
rounding_power = 2,
|
||||||
|
|
||||||
|
active_opacity = 1.0,
|
||||||
|
inactive_opacity = 1.0,
|
||||||
|
|
||||||
|
shadow = {
|
||||||
|
enabled = false
|
||||||
|
},
|
||||||
|
|
||||||
|
blur = {
|
||||||
|
enabled = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
animations = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
dwindle = {
|
||||||
|
preserve_split = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
master = {
|
||||||
|
new_status = "master",
|
||||||
|
},
|
||||||
|
|
||||||
|
misc = {
|
||||||
|
force_default_wallpaper = 0,
|
||||||
|
disable_hyprland_logo = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
ecosystem = {
|
||||||
|
no_update_news = true,
|
||||||
|
no_donation_nag = true,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
hl.curve( "mybezier", { type = "bezier", points = { {0.05, 0.9}, {0.1, 1.05} } })
|
||||||
|
|
||||||
|
hl.animation({ leaf = "windows", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "windowsOut", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "border", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "borderangle", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "fade", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "workspaces", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
-- Set monitors here
|
||||||
|
hl.monitor({
|
||||||
|
output = "DP-1",
|
||||||
|
mode = "1920x1080@165",
|
||||||
|
position = "0x0",
|
||||||
|
scale = 1
|
||||||
|
})
|
||||||
|
|
||||||
|
hl.monitor({
|
||||||
|
output = "DP-2",
|
||||||
|
mode = "1920x1080@165",
|
||||||
|
position = "-1080x-520",
|
||||||
|
transform = 1,
|
||||||
|
scale = 1
|
||||||
|
})
|
||||||
@@ -1,9 +1,16 @@
|
|||||||
#Set windows ans workspaces rules here
|
windowrule {
|
||||||
# Ignore maximize requests from apps. You'll probably like this.
|
name = windowrule-1
|
||||||
windowrulev2 = suppressevent maximize, class:.*
|
suppress_event = maximize
|
||||||
|
match:class = .*
|
||||||
|
}
|
||||||
|
|
||||||
# Fix some dragging issues with XWayland
|
windowrule {
|
||||||
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
name = windowrule-2
|
||||||
|
no_focus = on
|
||||||
# Set default fullscreen for webcord
|
match:class = ^$
|
||||||
windowrulev2 = fullscreen, class:^(WebCord)$
|
match:title = ^$
|
||||||
|
match:xwayland = 1
|
||||||
|
match:float = 1
|
||||||
|
match:fullscreen = 0
|
||||||
|
match:pin = 0
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
hl.window_rule({
|
||||||
|
name = "suppress-maximize-events",
|
||||||
|
match = {class = ".*"},
|
||||||
|
suppress_event = "maximize"
|
||||||
|
})
|
||||||
|
|
||||||
|
hl.window_rule({
|
||||||
|
name = "fix-xwayland-drags",
|
||||||
|
match = {
|
||||||
|
class = "^$",
|
||||||
|
title = "^$",
|
||||||
|
xwayland = true,
|
||||||
|
float = true,
|
||||||
|
fullscreen = false,
|
||||||
|
pin = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
no_focus = true,
|
||||||
|
})
|
||||||
@@ -21,11 +21,14 @@ bind = $mainMod, comma, exit,
|
|||||||
bind = $mainMod, E, exec, $fileManager
|
bind = $mainMod, E, exec, $fileManager
|
||||||
bind = $mainMod, R, exec, $menu
|
bind = $mainMod, R, exec, $menu
|
||||||
bind = $mainMod, W, exec, wlogout
|
bind = $mainMod, W, exec, wlogout
|
||||||
bind = $mainMod, A, exec, qutebrowser
|
bind = $mainMod, A, exec, alacritty
|
||||||
bind = $mainMod, F, fullscreen
|
bind = $mainMod, F, fullscreen
|
||||||
bind = $mainMod, T, togglefloating
|
bind = $mainMod, T, togglefloating
|
||||||
bind = , XF86Calculator, exec, $calc
|
bind = , XF86Calculator, exec, $calc
|
||||||
|
|
||||||
|
# Clipboard history
|
||||||
|
bind = $mainMod, V, exec, cliphist list | wofi -dmenu | cliphist decode | wl-copy
|
||||||
|
|
||||||
# Change Wallpaper
|
# Change Wallpaper
|
||||||
bind = $mainMod SHIFT, W, exec, echo trigger > /tmp/wallpaper-trigger
|
bind = $mainMod SHIFT, W, exec, echo trigger > /tmp/wallpaper-trigger
|
||||||
|
|
||||||
|
|||||||
@@ -18,11 +18,6 @@ monitor=,preferred,auto,1
|
|||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
|
||||||
# Set programs that you use
|
|
||||||
$terminal = kitty
|
|
||||||
$fileManager = dolphin
|
|
||||||
$menu = wofi --show drun
|
|
||||||
|
|
||||||
|
|
||||||
#################
|
#################
|
||||||
### AUTOSTART ###
|
### AUTOSTART ###
|
||||||
@@ -38,6 +33,8 @@ exec = killall waybar && waybar
|
|||||||
exec-once = mako
|
exec-once = mako
|
||||||
exec-once = systemctl --user start hyprpolkitagent
|
exec-once = systemctl --user start hyprpolkitagent
|
||||||
exec-once = [workspace 10 silent] thunderbird
|
exec-once = [workspace 10 silent] thunderbird
|
||||||
|
exec-once = wl-paste --type text --watch cliphist store
|
||||||
|
exec-once = wl-paste --type image --watch cliphist store
|
||||||
|
|
||||||
|
|
||||||
#############################
|
#############################
|
||||||
@@ -112,7 +109,6 @@ animations {
|
|||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||||
dwindle {
|
dwindle {
|
||||||
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
|
||||||
preserve_split = true # You probably want this
|
preserve_split = true # You probably want this
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -149,11 +145,6 @@ input {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
|
||||||
gestures {
|
|
||||||
workspace_swipe = false
|
|
||||||
}
|
|
||||||
|
|
||||||
# Example per-device config
|
# Example per-device config
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
||||||
device {
|
device {
|
||||||
@@ -175,4 +166,19 @@ device {
|
|||||||
# Example windowrule v2
|
# Example windowrule v2
|
||||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||||
|
|
||||||
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
|
windowrule {
|
||||||
|
name = windowrule-1
|
||||||
|
suppress_event = maximize
|
||||||
|
match:class = .*
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = windowrule-2
|
||||||
|
opacity = 0.70 0.70
|
||||||
|
match:class = ^(Alacritty)$
|
||||||
|
}
|
||||||
|
|
||||||
|
ecosystem {
|
||||||
|
no_update_news = true
|
||||||
|
no_donation_nag = true
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
---------------
|
||||||
|
--- SOURCES ---
|
||||||
|
---------------
|
||||||
|
|
||||||
|
-- MONITORS
|
||||||
|
require("source/monitors")
|
||||||
|
-- BINDS
|
||||||
|
require("source/binds")
|
||||||
|
-- AUTOSTART
|
||||||
|
require("source/autostart")
|
||||||
|
-- ENVIRONMENT VARIABLES
|
||||||
|
require("source/ev")
|
||||||
|
-- LOOK AND FEEL
|
||||||
|
require("source/look")
|
||||||
|
-- INPUT
|
||||||
|
require("source/input")
|
||||||
|
-- WINDOWS AND WORKSPACES
|
||||||
|
require("source/winandwork")
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
-- exec_once
|
||||||
|
hl.on("hyprland.start", function ()
|
||||||
|
hl.exec_cmd("waybar")
|
||||||
|
hl.exec_cmd("/home/smayzy/.config/hypr/battery.sh")
|
||||||
|
hl.exec_cmd("systemctl --user start hypr-wallpaper.service")
|
||||||
|
hl.exec_cmd("wl-paste --type text --watch cliphist store")
|
||||||
|
hl.exec_cmd("wl-paste --type image --watch cliphist store")
|
||||||
|
hl.exec_cmd("systemctl --user start hyprpolkitagent")
|
||||||
|
hl.exec_cmd("mako")
|
||||||
|
hl.exec_cmd("thunderbird", {workspace = "10 silent"})
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- exec at each reload
|
||||||
|
hl.on("config.reloaded", function ()
|
||||||
|
hl.exec_cmd("killall waybar && waybar")
|
||||||
|
end)
|
||||||
@@ -0,0 +1,94 @@
|
|||||||
|
------------------------------------
|
||||||
|
--- USE WEV TO GET THE KEYS CODE ---
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
--------------------
|
||||||
|
--- KEYBINDINGSS ---
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
-- MainMod
|
||||||
|
mainMod = "SUPER"
|
||||||
|
|
||||||
|
-- exec
|
||||||
|
hl.bind(mainMod .. " + comma", hl.dsp.exit())
|
||||||
|
hl.bind(mainMod .. " + F", hl.dsp.window.fullscreen())
|
||||||
|
hl.bind(mainMod .. " + T", hl.dsp.window.float())
|
||||||
|
hl.bind(mainMod .. " + C", hl.dsp.window.close())
|
||||||
|
hl.bind(mainMod .. " + Q", hl.dsp.exec_cmd("kitty"))
|
||||||
|
hl.bind(mainMod .. " + A", hl.dsp.exec_cmd("alacritty"))
|
||||||
|
hl.bind(mainMod .. " + E", hl.dsp.exec_cmd("dolphin"))
|
||||||
|
hl.bind(mainMod .. " + R", hl.dsp.exec_cmd("wofi --show drun"))
|
||||||
|
hl.bind(mainMod .. " + W", hl.dsp.exec_cmd("wlogout"))
|
||||||
|
hl.bind("XF86Calculator", hl.dsp.exec_cmd("qalculate-gtk"))
|
||||||
|
|
||||||
|
-- Volume
|
||||||
|
hl.bind("XF86AudioMute" , hl.dsp.exec_cmd("pactl set-sink-volume @DEFAULT_SINK@ 0%"))
|
||||||
|
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("pactl set-sink-volume @DEFAULT_SINK@ +5%"))
|
||||||
|
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("pactl set-sink-volume @DEFAULT_SINK@ -5%"))
|
||||||
|
|
||||||
|
-- Brightness
|
||||||
|
hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd("brightnessctl set 5%-"))
|
||||||
|
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd("brightnessctl set 5%+"))
|
||||||
|
|
||||||
|
-- Change wallpaper
|
||||||
|
hl.bind(mainMod .. " + SHIFT + W", hl.dsp.exec_cmd("echo trigger > /tmp/wallpaper-trigger"))
|
||||||
|
|
||||||
|
-- Reload waybar
|
||||||
|
hl.bind(mainMod .. " + SHIFT + B", hl.dsp.exec_cmd("pkill waybar && waybar"))
|
||||||
|
|
||||||
|
-- Hide waybar
|
||||||
|
hl.bind(mainMod .. " + X", hl.dsp.exec_cmd("pkill waybar || waybar"))
|
||||||
|
|
||||||
|
-- Clipboard history
|
||||||
|
hl.bind(mainMod .. " + V", hl.dsp.exec_cmd("cliphist list | wofi -dmenu | cliphist decode | wl-copy"))
|
||||||
|
|
||||||
|
-- Screenshot to clipboard
|
||||||
|
hl.bind(mainMod .. " + SHIFT + S", hl.dsp.exec_cmd("grim -g \"$(slurp -d)\" - | wl-copy"))
|
||||||
|
|
||||||
|
-- Move focus with mainMod + arrow keys
|
||||||
|
hl.bind(mainMod .. " + h", hl.dsp.focus({direction = "left"}))
|
||||||
|
hl.bind(mainMod .. " + l", hl.dsp.focus({direction = "right"}))
|
||||||
|
hl.bind(mainMod .. " + k", hl.dsp.focus({direction = "up"}))
|
||||||
|
hl.bind(mainMod .. " + j", hl.dsp.focus({direction = "down"}))
|
||||||
|
|
||||||
|
-- Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
hl.bind(mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
|
||||||
|
hl.bind(mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true })
|
||||||
|
|
||||||
|
-- Resize Windows
|
||||||
|
hl.bind(mainMod .. " + CTRL + h", hl.dsp.window.resize({ x = -20 , y = 0 , relative = true }))
|
||||||
|
hl.bind(mainMod .. " + CTRL + l", hl.dsp.window.resize({ x = 20 , y = 0 , relative = true }))
|
||||||
|
hl.bind(mainMod .. " + CTRL + k", hl.dsp.window.resize({ x = 0 , y = -20 , relative = true }))
|
||||||
|
hl.bind(mainMod .. " + CTRL + j", hl.dsp.window.resize({ x = 0 , y = 20 , relative = true }))
|
||||||
|
|
||||||
|
-- Switch workspaces
|
||||||
|
hl.bind(mainMod .. " + ampersand", hl.dsp.focus({ workspace = "1"}))
|
||||||
|
hl.bind(mainMod .. " + eacute", hl.dsp.focus({ workspace = "2"}))
|
||||||
|
hl.bind(mainMod .. " + quotedbl", hl.dsp.focus({ workspace = "3"}))
|
||||||
|
hl.bind(mainMod .. " + apostrophe", hl.dsp.focus({ workspace = "4"}))
|
||||||
|
hl.bind(mainMod .. " + parenleft", hl.dsp.focus({ workspace = "5"}))
|
||||||
|
hl.bind(mainMod .. " + minus", hl.dsp.focus({ workspace = "6"}))
|
||||||
|
hl.bind(mainMod .. " + egrave", hl.dsp.focus({ workspace = "7"}))
|
||||||
|
hl.bind(mainMod .. " + underscore", hl.dsp.focus({ workspace = "8"}))
|
||||||
|
hl.bind(mainMod .. " + ccedilla", hl.dsp.focus({ workspace = "9"}))
|
||||||
|
hl.bind(mainMod .. " + agrave", hl.dsp.focus({ workspace = "10"}))
|
||||||
|
hl.bind(mainMod .. " + dead_circumflex", hl.dsp.focus({ workspace = "11"}))
|
||||||
|
hl.bind(mainMod .. " + dollar", hl.dsp.focus({ workspace = "12"}))
|
||||||
|
hl.bind(mainMod .. " + ugrave", hl.dsp.focus({ workspace = "13"}))
|
||||||
|
hl.bind(mainMod .. " + asterisk", hl.dsp.focus({ workspace = "14"}))
|
||||||
|
|
||||||
|
-- Move active window to a workspace
|
||||||
|
hl.bind(mainMod .. " + SHIFT + ampersand", hl.dsp.window.move({ workspace = "1"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + eacute", hl.dsp.window.move({ workspace = "2"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + quotedbl", hl.dsp.window.move({ workspace = "3"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + apostrophe", hl.dsp.window.move({ workspace = "4"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + parenleft", hl.dsp.window.move({ workspace = "5"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + minus", hl.dsp.window.move({ workspace = "6"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + egrave", hl.dsp.window.move({ workspace = "7"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + underscore", hl.dsp.window.move({ workspace = "8"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + ccedilla", hl.dsp.window.move({ workspace = "9"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + agrave", hl.dsp.window.move({ workspace = "10"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + dead_circumflex", hl.dsp.window.move({ workspace = "11"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + dollar", hl.dsp.window.move({ workspace = "12"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + ugrave", hl.dsp.window.move({ workspace = "13"}))
|
||||||
|
hl.bind(mainMod .. " + SHIFT + asterisk", hl.dsp.window.move({ workspace = "14"}))
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
-- Set env here
|
||||||
|
hl.env("XCURSOR_SIZE", "24")
|
||||||
|
hl.env("HYPRCURSOR_SIZE", "24")
|
||||||
|
hl.env("XDG_SESSION_TYPE", "wayland")
|
||||||
|
hl.env("HYPRLAND_NO_SD_VARS", "1")
|
||||||
|
hl.env("LD_LIBRARY_PATH", "/nix/store/p5c2hfgw9pipp2vd0xvxjmly99nbsdki-pipewire-1.6.8-jack/lib/")
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
--Set inputs here
|
||||||
|
|
||||||
|
hl.config({
|
||||||
|
input = {
|
||||||
|
kb_layout = "fr",
|
||||||
|
kb_variant = "",
|
||||||
|
kb_model = "pc105",
|
||||||
|
kb_options = "terminate:ctrl_alt_bksp",
|
||||||
|
kb_rules = "",
|
||||||
|
|
||||||
|
follow_mouse = 1,
|
||||||
|
|
||||||
|
sensitivity = 0,
|
||||||
|
|
||||||
|
touchpad = {
|
||||||
|
natural_scroll = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
cursor = {
|
||||||
|
no_hardware_cursors = 0,
|
||||||
|
}
|
||||||
|
})
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
--Set look and feel here
|
||||||
|
|
||||||
|
hl.config({
|
||||||
|
general = {
|
||||||
|
layout = "dwindle",
|
||||||
|
gaps_in = 3,
|
||||||
|
gaps_out = 5,
|
||||||
|
border_size = 1,
|
||||||
|
col = {
|
||||||
|
active_border = { colors = {"rgba(33ccffee)", "rgba(00ff99ee)"}, angle = 45 },
|
||||||
|
inactive_border = "rgba(595959aa)",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
decoration = {
|
||||||
|
rounding = 6,
|
||||||
|
rounding_power = 2,
|
||||||
|
|
||||||
|
active_opacity = 1.0,
|
||||||
|
inactive_opacity = 1.0,
|
||||||
|
|
||||||
|
shadow = {
|
||||||
|
enabled = false
|
||||||
|
},
|
||||||
|
|
||||||
|
blur = {
|
||||||
|
enabled = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
animations = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
dwindle = {
|
||||||
|
preserve_split = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
master = {
|
||||||
|
new_status = "master",
|
||||||
|
},
|
||||||
|
|
||||||
|
misc = {
|
||||||
|
force_default_wallpaper = 0,
|
||||||
|
disable_hyprland_logo = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
ecosystem = {
|
||||||
|
no_update_news = true,
|
||||||
|
no_donation_nag = true,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
hl.curve( "mybezier", { type = "bezier", points = { {0.05, 0.9}, {0.1, 1.05} } })
|
||||||
|
|
||||||
|
hl.animation({ leaf = "windows", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "windowsOut", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "border", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "borderangle", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "fade", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
|
hl.animation({ leaf = "workspaces", enabled = true, speed = 7, bezier = "mybezier" })
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
hl.monitor({
|
||||||
|
output = "",
|
||||||
|
mode = "preferred",
|
||||||
|
position = "auto",
|
||||||
|
scale = 1
|
||||||
|
})
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
hl.window_rule({
|
||||||
|
name = "suppress-maximize-events",
|
||||||
|
match = {class = ".*"},
|
||||||
|
suppress_event = "maximize"
|
||||||
|
})
|
||||||
|
|
||||||
|
hl.window_rule({
|
||||||
|
name = "fix-xwayland-drags",
|
||||||
|
match = {
|
||||||
|
class = "^$",
|
||||||
|
title = "^$",
|
||||||
|
xwayland = true,
|
||||||
|
float = true,
|
||||||
|
fullscreen = false,
|
||||||
|
pin = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
no_focus = true,
|
||||||
|
})
|
||||||
@@ -9,9 +9,14 @@ TRIGGER_PIPE="/tmp/wallpaper-trigger"
|
|||||||
set_wallpaper() {
|
set_wallpaper() {
|
||||||
local Wallpaper=$(find -L "$Wallpaper_DIR" -type f| shuf -n 1)
|
local Wallpaper=$(find -L "$Wallpaper_DIR" -type f| shuf -n 1)
|
||||||
|
|
||||||
> /home/smayzy/.config/hypr/hyprpaper.conf
|
cat > "/home/smayzy/.config/hypr/hyprpaper.conf" <<EOF
|
||||||
echo "preload = $Wallpaper" >> /home/smayzy/.config/hypr/hyprpaper.conf
|
wallpaper {
|
||||||
echo "wallpaper = $MONITOR,$Wallpaper" >> /home/smayzy/.config/hypr/hyprpaper.conf
|
monitor = $MONITOR
|
||||||
|
path = $Wallpaper
|
||||||
|
fit_mode = cover
|
||||||
|
}
|
||||||
|
splash = false
|
||||||
|
EOF
|
||||||
|
|
||||||
pkill hyprpaper 2>/dev/null
|
pkill hyprpaper 2>/dev/null
|
||||||
hyprpaper &
|
hyprpaper &
|
||||||
|
|||||||
@@ -0,0 +1,38 @@
|
|||||||
|
IMAPStore smayzy-remote
|
||||||
|
Host mail.smayzy.ovh
|
||||||
|
User smayzy@smayzy.ovh
|
||||||
|
PassCmd "pass mail/smayzy"
|
||||||
|
TLSType IMAPS
|
||||||
|
|
||||||
|
MaildirStore smayzy-local
|
||||||
|
Path ~/Mail/smayzy/
|
||||||
|
Inbox ~/Mail/smayzy/INBOX
|
||||||
|
SubFolders Verbatim
|
||||||
|
|
||||||
|
Channel smayzy
|
||||||
|
Far :smayzy-remote:
|
||||||
|
Near :smayzy-local:
|
||||||
|
Create Both
|
||||||
|
Expunge Both
|
||||||
|
Patterns *
|
||||||
|
SyncState *
|
||||||
|
|
||||||
|
|
||||||
|
IMAPStore baptiste.maylin-remote
|
||||||
|
Host mail.smayzy.ovh
|
||||||
|
User baptiste.maylin@smayzy.ovh
|
||||||
|
PassCmd "pass mail/baptiste.maylin"
|
||||||
|
TLSType IMAPS
|
||||||
|
|
||||||
|
MaildirStore baptiste.maylin-local
|
||||||
|
Path ~/Mail/baptiste.maylin/
|
||||||
|
Inbox ~/Mail/baptiste.maylin/INBOX
|
||||||
|
SubFolders Verbatim
|
||||||
|
|
||||||
|
Channel baptiste.maylin
|
||||||
|
Far :baptiste.maylin-remote:
|
||||||
|
Near :baptiste.maylin-local:
|
||||||
|
Create Both
|
||||||
|
Expunge Both
|
||||||
|
Patterns *
|
||||||
|
SyncState *
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
font=JetBrainsMono 10
|
|
||||||
background-color=#282828
|
|
||||||
text-color=#ebdbb2
|
|
||||||
border-color=#98971a
|
|
||||||
border-size=2
|
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
defaults
|
||||||
|
tls on
|
||||||
|
tls_starttls off
|
||||||
|
auth on
|
||||||
|
logfile ~/.msmtp.log
|
||||||
|
timeout 60
|
||||||
|
|
||||||
|
account smayzy
|
||||||
|
host mail.smayzy.ovh
|
||||||
|
port 465
|
||||||
|
domain smayzy.ovh
|
||||||
|
from smayzy@smayzy.ovh
|
||||||
|
user smayzy@smayzy.ovh
|
||||||
|
passwordeval pass mail/smayzy
|
||||||
|
|
||||||
|
account baptiste.maylin
|
||||||
|
host mail.smayzy.ovh
|
||||||
|
port 465
|
||||||
|
domain smayzy.ovh
|
||||||
|
from baptiste.maylin@smayzy.ovh
|
||||||
|
user baptiste.maylin@smayzy.ovh
|
||||||
|
passwordeval pass mail/baptiste.maylin
|
||||||
|
|
||||||
|
|
||||||
|
account default : smayzy
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
# vim: syntax=neomuttrc
|
||||||
|
bind index,pager \Ck sidebar-prev
|
||||||
|
bind index,pager \Cj sidebar-next
|
||||||
|
bind index,pager \Ce sidebar-open
|
||||||
|
bind index,pager V sidebar-toggle-visible
|
||||||
|
|
||||||
|
|
||||||
|
bind index,pager j next-entry
|
||||||
|
bind index,pager k previous-entry
|
||||||
|
bind index,pager J next-page
|
||||||
|
bind index,pager K previous-page
|
||||||
|
|
||||||
|
bind editor \C_ bol
|
||||||
|
bind editor \Cd kill-line
|
||||||
|
bind editor \Cr history-search
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
# vim: filetype=neomuttrc
|
||||||
|
# Default index colors:
|
||||||
|
color index yellow default '.*'
|
||||||
|
color index_author red default '.*'
|
||||||
|
color index_number blue default
|
||||||
|
color index_subject cyan default '.*'
|
||||||
|
|
||||||
|
# For new mail:
|
||||||
|
color index brightyellow black "~N"
|
||||||
|
color index_author brightred black "~N"
|
||||||
|
color index_subject brightcyan black "~N"
|
||||||
|
|
||||||
|
# Header colors:
|
||||||
|
color header blue default ".*"
|
||||||
|
color header brightmagenta default "^(From)"
|
||||||
|
color header brightcyan default "^(Subject)"
|
||||||
|
color header brightwhite default "^(CC|BCC)"
|
||||||
|
|
||||||
|
mono bold bold
|
||||||
|
mono underline underline
|
||||||
|
mono indicator reverse
|
||||||
|
mono error bold
|
||||||
|
color normal default default
|
||||||
|
color indicator brightblack white
|
||||||
|
color sidebar_highlight red default
|
||||||
|
color sidebar_divider brightblack black
|
||||||
|
color sidebar_flagged red black
|
||||||
|
color sidebar_new green black
|
||||||
|
color normal brightyellow default
|
||||||
|
color error red default
|
||||||
|
color tilde black default
|
||||||
|
color message cyan default
|
||||||
|
color markers red white
|
||||||
|
color attachment white default
|
||||||
|
color search brightmagenta default
|
||||||
|
color status brightyellow black
|
||||||
|
color hdrdefault brightgreen default
|
||||||
|
color quoted green default
|
||||||
|
color quoted1 blue default
|
||||||
|
color quoted2 cyan default
|
||||||
|
color quoted3 yellow default
|
||||||
|
color quoted4 red default
|
||||||
|
color quoted5 brightred default
|
||||||
|
color signature brightgreen default
|
||||||
|
color bold black default
|
||||||
|
color underline black default
|
||||||
|
color normal default default
|
||||||
|
|
||||||
|
color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses
|
||||||
|
color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL
|
||||||
|
color body green default "\`[^\`]*\`" # Green text between ` and `
|
||||||
|
color body brightblue default "^# \.*" # Headings as bold blue
|
||||||
|
color body brightcyan default "^## \.*" # Subheadings as bold cyan
|
||||||
|
color body brightgreen default "^### \.*" # Subsubheadings as bold green
|
||||||
|
color body yellow default "^(\t| )*(-|\\*) \.*" # List items as yellow
|
||||||
|
color body brightcyan default "[;:][-o][)/(|]" # emoticons
|
||||||
|
color body brightcyan default "[;:][)(|]" # emoticons
|
||||||
|
color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon?
|
||||||
|
color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon?
|
||||||
|
color body red default "(BAD signature)"
|
||||||
|
color body cyan default "(Good signature)"
|
||||||
|
color body brightblack default "^gpg: Good signature .*"
|
||||||
|
color body brightyellow default "^gpg: "
|
||||||
|
color body brightyellow red "^gpg: BAD signature from.*"
|
||||||
|
mono body bold "^gpg: Good signature"
|
||||||
|
mono body bold "^gpg: BAD signature from.*"
|
||||||
|
color body red default "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]"
|
||||||
|
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
# vim: syntax=neomuttrc
|
||||||
|
set editor = "vim"
|
||||||
|
|
||||||
|
source color.muttrc
|
||||||
|
source bind.muttrc
|
||||||
|
|
||||||
|
set ssl_force_tls = yes
|
||||||
|
set mail_check_stats
|
||||||
|
|
||||||
|
set sidebar_visible = yes
|
||||||
|
set sidebar_width = 40
|
||||||
|
set sidebar_short_path = yes
|
||||||
|
set sidebar_delim_chars = '/'
|
||||||
|
set sidebar_on_right = yes
|
||||||
|
set sidebar_format = '%B%<F? [%F]>%* %<N?%N/>%S'
|
||||||
|
|
||||||
|
set spoolfile = "~/Mail/smayzy/INBOX"
|
||||||
|
set folder = "~/Mail/smayzy"
|
||||||
|
|
||||||
|
mailboxes `for u in smayzy baptiste.maylin; do echo "$HOME/Mail/placeholder/------$u------"; find ~/Mail/$u -type d -name cur | xargs dirname; done | xargs`
|
||||||
|
|
||||||
|
folder-hook ~/Mail/smayzy/.* "\
|
||||||
|
set from='smayzy@smayzy.ovh';\
|
||||||
|
set realname='Smayzy';\
|
||||||
|
set folder='~/Mail/smayzy';\
|
||||||
|
set spoolfile='+INBOX';\
|
||||||
|
set record='+Sent';\
|
||||||
|
set postponed='+Drafts';\
|
||||||
|
set trash='+Trash';\
|
||||||
|
set sendmail='msmtp -a smayzy'"
|
||||||
|
|
||||||
|
folder-hook ~/Mail/baptiste.maylin/.* "\
|
||||||
|
set from='baptiste.maylin@smayzy.ovh';\
|
||||||
|
set realname='Baptiste Maylin';\
|
||||||
|
set folder='~/Mail/baptiste.maylin';\
|
||||||
|
set spoolfile='+INBOX';\
|
||||||
|
set record='+Sent';\
|
||||||
|
set postponed='+Drafts';\
|
||||||
|
set trash='+Trash';\
|
||||||
|
set sendmail='msmtp -a baptiste.maylin'"
|
||||||
@@ -95,7 +95,7 @@
|
|||||||
},
|
},
|
||||||
"cpu": {
|
"cpu": {
|
||||||
"interval": 5,
|
"interval": 5,
|
||||||
"format": "{usage:2}%"
|
"format": " {usage:2}%"
|
||||||
},
|
},
|
||||||
"disk": {
|
"disk": {
|
||||||
"interval": 5,
|
"interval": 5,
|
||||||
|
|||||||
Generated
+120
-342
@@ -1,196 +1,97 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"base16": {
|
"agenix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"fromYaml": "fromYaml"
|
"darwin": "darwin",
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746562888,
|
"lastModified": 1770165109,
|
||||||
"narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=",
|
"narHash": "sha256-9VnK6Oqai65puVJ4WYtCTvlJeXxMzAp/69HhQuTdl/I=",
|
||||||
"owner": "SenchoPens",
|
"owner": "ryantm",
|
||||||
"repo": "base16.nix",
|
"repo": "agenix",
|
||||||
"rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89",
|
"rev": "b027ee29d959fda4b60b57566d64c98a202e0feb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "SenchoPens",
|
"owner": "ryantm",
|
||||||
"repo": "base16.nix",
|
"repo": "agenix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"base16-fish": {
|
"darwin": {
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1622559957,
|
|
||||||
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
|
|
||||||
"owner": "tomyun",
|
|
||||||
"repo": "base16-fish",
|
|
||||||
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tomyun",
|
|
||||||
"repo": "base16-fish",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"base16-helix": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1748408240,
|
|
||||||
"narHash": "sha256-9M2b1rMyMzJK0eusea0x3lyh3mu5nMeEDSc4RZkGm+g=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-helix",
|
|
||||||
"rev": "6c711ab1a9db6f51e2f6887cc3345530b33e152e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-helix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"base16-vim": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1732806396,
|
|
||||||
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-vim",
|
|
||||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-vim",
|
|
||||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"firefox-gnome-theme": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1748383148,
|
|
||||||
"narHash": "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=",
|
|
||||||
"owner": "rafaelmardojai",
|
|
||||||
"repo": "firefox-gnome-theme",
|
|
||||||
"rev": "4eb2714fbed2b80e234312611a947d6cb7d70caf",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "rafaelmardojai",
|
|
||||||
"repo": "firefox-gnome-theme",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-parts": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs": [
|
||||||
"nvf",
|
"agenix",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749398372,
|
"lastModified": 1744478979,
|
||||||
"narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
|
"narHash": "sha256-dyN+teG9G82G+m+PX/aSAagkC+vUv0SgUw3XkPhQodQ=",
|
||||||
"owner": "hercules-ci",
|
"owner": "lnl7",
|
||||||
"repo": "flake-parts",
|
"repo": "nix-darwin",
|
||||||
"rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
|
"rev": "43975d782b418ebf4969e9ccba82466728c2851b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "hercules-ci",
|
"owner": "lnl7",
|
||||||
"repo": "flake-parts",
|
"ref": "master",
|
||||||
|
"repo": "nix-darwin",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_2": {
|
"flake-compat": {
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": [
|
|
||||||
"stylix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1751413152,
|
|
||||||
"narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "77826244401ea9de6e3bac47c2db46005e1f30b5",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": [
|
|
||||||
"nvf",
|
|
||||||
"systems"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1731533236,
|
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"fromYaml": {
|
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731966426,
|
"lastModified": 1777699697,
|
||||||
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
"narHash": "sha256-Eg9b/rq/ECYwNwEXs5i9wHyhxNI0JrYx2srdI2uZMaQ=",
|
||||||
"owner": "SenchoPens",
|
"ref": "refs/heads/main",
|
||||||
"repo": "fromYaml",
|
"rev": "382052b74656a369c5408822af3f2501e9b1af81",
|
||||||
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
"revCount": 94,
|
||||||
"type": "github"
|
"type": "git",
|
||||||
|
"url": "https://git.lix.systems/lix-project/flake-compat.git"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "SenchoPens",
|
"type": "git",
|
||||||
"repo": "fromYaml",
|
"url": "https://git.lix.systems/lix-project/flake-compat.git"
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"gnome-shell": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1748186689,
|
|
||||||
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
|
|
||||||
"owner": "GNOME",
|
|
||||||
"repo": "gnome-shell",
|
|
||||||
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "GNOME",
|
|
||||||
"ref": "48.2",
|
|
||||||
"repo": "gnome-shell",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"agenix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1745494811,
|
||||||
|
"narHash": "sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "abfad3d2958c9e6300a883bd443512c55dfeb1be",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752603129,
|
"lastModified": 1785531816,
|
||||||
"narHash": "sha256-S+wmHhwNQ5Ru689L2Gu8n1OD6s9eU9n9mD827JNR+kw=",
|
"narHash": "sha256-vkMnV0JIyw+g/NmcfoajlGaAO+9a0ezia+FZohQJrik=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "e8c19a3cec2814c754f031ab3ae7316b64da085b",
|
"rev": "bf9ce9fec78f95f374e8dd3b503863a3ec128ebe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -201,11 +102,11 @@
|
|||||||
},
|
},
|
||||||
"mnw": {
|
"mnw": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748710831,
|
"lastModified": 1780772958,
|
||||||
"narHash": "sha256-eZu2yH3Y2eA9DD3naKWy/sTxYS5rPK2hO7vj8tvUCSU=",
|
"narHash": "sha256-VKKe8r4pwCGWZ3Yr9CPN129R4S3CKLSrlYqdYz3vKpM=",
|
||||||
"owner": "Gerg-L",
|
"owner": "Gerg-L",
|
||||||
"repo": "mnw",
|
"repo": "mnw",
|
||||||
"rev": "cff958a4e050f8d917a6ff3a5624bc4681c6187d",
|
"rev": "0871dbf63a53610c95db04439ed8ea4d6ec9c160",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -216,11 +117,11 @@
|
|||||||
},
|
},
|
||||||
"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": {
|
||||||
@@ -230,13 +131,49 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-index-database": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785650611,
|
||||||
|
"narHash": "sha256-q4kR7g+pCcz6NASvoVPYu+CWWUurX03wogtBqGmR4h0=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-index-database",
|
||||||
|
"rev": "dbc756c9d7287de19b3e0e38c928c47510d42c3e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-index-database",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752480373,
|
"lastModified": 1754028485,
|
||||||
"narHash": "sha256-JHQbm+OcGp32wAsXTE/FLYGNpb+4GLi5oTvCxwSoBOA=",
|
"narHash": "sha256-IiiXB3BDTi6UqzAZcf2S797hWEPCRZOwyNThJIYhUfk=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "59e69648d345d6e8fef86158c555730fa12af9de",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-25.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785571196,
|
||||||
|
"narHash": "sha256-KoTsyMQqnXQZq8deCEnu4QkyldkwH/bpMMhUcfMdGIw=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "62e0f05ede1da0d54515d4ea8ce9c733f12d9f08",
|
"rev": "148bab9c1c3c53136ecb44a6ea356a0ed5b39b06",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -246,61 +183,31 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1750215678,
|
"lastModified": 1784796856,
|
||||||
"narHash": "sha256-Rc/ytpamXRf6z8UA2SGa4aaWxUXRbX2MAWIu2C8M+ok=",
|
"narHash": "sha256-vwxWgF+Gj276WznzGb1LxGsK/39HaQwgQXiU3EkC844=",
|
||||||
"owner": "nixos",
|
"rev": "e2587caef70cea85dd97d7daab492899902dbf5d",
|
||||||
"repo": "nixpkgs",
|
"type": "tarball",
|
||||||
"rev": "5395fb3ab3f97b9b7abca147249fa2e8ed27b192",
|
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1040357.e2587caef70c/nixexprs.tar.xz"
|
||||||
"type": "github"
|
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"type": "tarball",
|
||||||
"ref": "nixpkgs-unstable",
|
"url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nur": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-parts": [
|
|
||||||
"stylix",
|
|
||||||
"flake-parts"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"stylix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1751906969,
|
|
||||||
"narHash": "sha256-BSQAOdPnzdpOuCdAGSJmefSDlqmStFNScEnrWzSqKPw=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "NUR",
|
|
||||||
"rev": "ddb679f4131e819efe3bbc6457ba19d7ad116f25",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "NUR",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nvf": {
|
"nvf": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-compat": "flake-compat",
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"mnw": "mnw",
|
"mnw": "mnw",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_3"
|
||||||
"systems": "systems"
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752417534,
|
"lastModified": 1785632973,
|
||||||
"narHash": "sha256-06CASFKAxc81QycTSsTw26EJOKi6VgMie6wp0ZUnvqE=",
|
"narHash": "sha256-j4NzdhN4dgpvORbKdteIcw8M2WJyKrIgalBxT/CNk+c=",
|
||||||
"owner": "notashelf",
|
"owner": "notashelf",
|
||||||
"repo": "nvf",
|
"repo": "nvf",
|
||||||
"rev": "5e2df2dd5b83c07bad3d5e17dc056b52541ecb9c",
|
"rev": "c82d4e47cc1baab21d4954760db49941aaa39b49",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -311,45 +218,12 @@
|
|||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"agenix": "agenix",
|
||||||
|
"home-manager": "home-manager_2",
|
||||||
"nix-flatpak": "nix-flatpak",
|
"nix-flatpak": "nix-flatpak",
|
||||||
"nixpkgs": "nixpkgs",
|
"nix-index-database": "nix-index-database",
|
||||||
"nvf": "nvf",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"stylix": "stylix"
|
"nvf": "nvf"
|
||||||
}
|
|
||||||
},
|
|
||||||
"stylix": {
|
|
||||||
"inputs": {
|
|
||||||
"base16": "base16",
|
|
||||||
"base16-fish": "base16-fish",
|
|
||||||
"base16-helix": "base16-helix",
|
|
||||||
"base16-vim": "base16-vim",
|
|
||||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
|
||||||
"flake-parts": "flake-parts_2",
|
|
||||||
"gnome-shell": "gnome-shell",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nur": "nur",
|
|
||||||
"systems": "systems_2",
|
|
||||||
"tinted-foot": "tinted-foot",
|
|
||||||
"tinted-kitty": "tinted-kitty",
|
|
||||||
"tinted-schemes": "tinted-schemes",
|
|
||||||
"tinted-tmux": "tinted-tmux",
|
|
||||||
"tinted-zed": "tinted-zed"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1752598315,
|
|
||||||
"narHash": "sha256-pSm1BqcA6wido27VeNAi86SjpurpL84+ciAXQmrtSzk=",
|
|
||||||
"owner": "danth",
|
|
||||||
"repo": "stylix",
|
|
||||||
"rev": "45749a791efd692c04dee4702b86a31535ed30d2",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "danth",
|
|
||||||
"repo": "stylix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
@@ -366,102 +240,6 @@
|
|||||||
"repo": "default",
|
"repo": "default",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"systems_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-foot": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1726913040,
|
|
||||||
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-foot",
|
|
||||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-foot",
|
|
||||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-kitty": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1735730497,
|
|
||||||
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-kitty",
|
|
||||||
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-kitty",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-schemes": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1750770351,
|
|
||||||
"narHash": "sha256-LI+BnRoFNRa2ffbe3dcuIRYAUcGklBx0+EcFxlHj0SY=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "schemes",
|
|
||||||
"rev": "5a775c6ffd6e6125947b393872cde95867d85a2a",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "schemes",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-tmux": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1751159871,
|
|
||||||
"narHash": "sha256-UOHBN1fgHIEzvPmdNMHaDvdRMgLmEJh2hNmDrp3d3LE=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-tmux",
|
|
||||||
"rev": "bded5e24407cec9d01bd47a317d15b9223a1546c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-tmux",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-zed": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1751158968,
|
|
||||||
"narHash": "sha256-ksOyv7D3SRRtebpXxgpG4TK8gZSKFc4TIZpR+C98jX8=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-zed",
|
|
||||||
"rev": "86a470d94204f7652b906ab0d378e4231a5b3384",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-zed",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|||||||
@@ -8,43 +8,57 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest";
|
agenix.url = "github:ryantm/agenix";
|
||||||
|
|
||||||
stylix = {
|
nix-index-database = {
|
||||||
url = "github:danth/stylix";
|
url = "github:nix-community/nix-index-database";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest";
|
||||||
|
|
||||||
nvf.url = "github:notashelf/nvf";
|
nvf.url = "github:notashelf/nvf";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, nix-flatpak, nvf, ... } @ inputs:
|
outputs =
|
||||||
|
{
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
agenix,
|
||||||
|
...
|
||||||
|
}@inputs:
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
overlays = builtins.attrValues (import ./overlays);
|
overlays = builtins.attrValues (import ./overlays);
|
||||||
|
|
||||||
|
sharedModules = [
|
||||||
|
inputs.nix-flatpak.nixosModules.nix-flatpak
|
||||||
|
inputs.nvf.nixosModules.default
|
||||||
|
inputs.agenix.nixosModules.default
|
||||||
|
inputs.nix-index-database.nixosModules.default
|
||||||
|
];
|
||||||
|
|
||||||
|
mkHost =
|
||||||
|
hostConfig:
|
||||||
|
nixpkgs.lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit
|
||||||
|
inputs
|
||||||
|
system
|
||||||
|
overlays
|
||||||
|
agenix
|
||||||
|
;
|
||||||
|
};
|
||||||
|
modules = [ hostConfig ] ++ sharedModules;
|
||||||
|
};
|
||||||
in
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
desktop1 = nixpkgs.lib.nixosSystem {
|
desktop1 = mkHost ./hosts/desktop1/configuration.nix;
|
||||||
specialArgs = { inherit inputs system overlays; };
|
server1 = mkHost ./hosts/server1/configuration.nix;
|
||||||
modules = [
|
laptop1 = mkHost ./hosts/laptop1/configuration.nix;
|
||||||
./hosts/desktop1/configuration.nix
|
laptop2 = mkHost ./hosts/laptop2/configuration.nix;
|
||||||
nix-flatpak.nixosModules.nix-flatpak
|
|
||||||
inputs.stylix.nixosModules.stylix
|
|
||||||
nvf.nixosModules.default
|
|
||||||
];
|
|
||||||
};
|
|
||||||
laptop1 = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = { inherit inputs system overlays; };
|
|
||||||
modules = [
|
|
||||||
./hosts/laptop1/configuration.nix
|
|
||||||
nix-flatpak.nixosModules.nix-flatpak
|
|
||||||
inputs.stylix.nixosModules.stylix
|
|
||||||
nvf.nixosModules.default
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
+17
-15
@@ -1,33 +1,35 @@
|
|||||||
{ inputs, config, pkgs, lib, overlays, ... }:
|
{
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
overlays,
|
||||||
|
...
|
||||||
|
}:
|
||||||
{
|
{
|
||||||
|
|
||||||
imports =
|
imports = [
|
||||||
[
|
|
||||||
inputs.home-manager.nixosModules.home-manager
|
inputs.home-manager.nixosModules.home-manager
|
||||||
../../modules/nix/default.nix
|
../../modules/nix/default.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
nixpkgs.overlays = overlays;
|
nixpkgs.overlays = overlays;
|
||||||
|
|
||||||
|
boot.supportedFilesystems = [ "nfs" ];
|
||||||
|
|
||||||
users.users.smayzy = {
|
users.users.smayzy = {
|
||||||
|
homeMode = "710";
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "smayzy";
|
description = "smayzy";
|
||||||
extraGroups = [ "networkmanager" "wheel" ];
|
extraGroups = [
|
||||||
packages = with pkgs; [];
|
"networkmanager"
|
||||||
|
"wheel"
|
||||||
|
"wireshark"
|
||||||
|
"dialout"
|
||||||
|
"audio"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
home-manager
|
home-manager
|
||||||
lf
|
|
||||||
arduino-ide
|
|
||||||
calibre
|
|
||||||
tor
|
|
||||||
tshark
|
|
||||||
freecad-wayland
|
|
||||||
aegisub
|
|
||||||
mpv
|
|
||||||
fritzing
|
|
||||||
sl
|
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+21
-46
@@ -1,50 +1,23 @@
|
|||||||
{ config, pkgs, inputs, ... }:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[
|
|
||||||
../../modules/home-manager/default.nix
|
../../modules/home-manager/default.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
smayzy.webapps.enable = true;
|
|
||||||
|
|
||||||
smayzy.lf.enable = true;
|
|
||||||
|
|
||||||
smayzy.kitty.enable = true;
|
|
||||||
|
|
||||||
home.username = "smayzy";
|
home.username = "smayzy";
|
||||||
home.homeDirectory = "/home/smayzy";
|
home.homeDirectory = "/home/smayzy";
|
||||||
home.stateVersion = "25.05";
|
home.stateVersion = "25.05";
|
||||||
|
|
||||||
home.packages = [
|
home.packages = with pkgs; [
|
||||||
|
sl
|
||||||
];
|
];
|
||||||
|
|
||||||
home.file = {
|
|
||||||
".config/fastfetch" = {
|
|
||||||
source = builtins.toPath ../../dotfiles/fastfetch;
|
|
||||||
recursive = true;
|
|
||||||
force = true;
|
|
||||||
};
|
|
||||||
"wallpaper" = {
|
|
||||||
source = builtins.toPath ../../wallpapers;
|
|
||||||
recursive = true;
|
|
||||||
force = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "vim";
|
EDITOR = "vim";
|
||||||
GTK_THEME = "Adwaita:dark";
|
|
||||||
MANPAGER = "nvim +Man!";
|
MANPAGER = "nvim +Man!";
|
||||||
};
|
};
|
||||||
|
|
||||||
dconf.settings = {
|
|
||||||
"org/virt-manager/virt-manager/connections" = {
|
|
||||||
autoconnect = ["qemu:///system"];
|
|
||||||
uris = ["qemu:///system"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableCompletion = true;
|
enableCompletion = true;
|
||||||
@@ -60,24 +33,26 @@
|
|||||||
|
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "smayzy";
|
settings = {
|
||||||
userEmail = "smayzy@smayzy.ovh";
|
core = {
|
||||||
extraConfig = {
|
autocrlf = "input";
|
||||||
core.editor = "vim";
|
editor = "vim";
|
||||||
core.autocrlf = "input";
|
};
|
||||||
credential.helper = "store";
|
credential = {
|
||||||
pull.rebase = "true";
|
helper = "store";
|
||||||
|
};
|
||||||
|
pull = {
|
||||||
|
rebase = "true";
|
||||||
|
};
|
||||||
|
user = {
|
||||||
|
email = "smayzy@smayzy.ovh";
|
||||||
|
name = "smayzy";
|
||||||
|
};
|
||||||
|
init = {
|
||||||
|
defaultBranch = "main";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.firefox = {
|
|
||||||
enable = true;
|
|
||||||
policies = {
|
|
||||||
OverridePostfix = "no-gtk-theme";
|
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
stylix.autoEnable = false;
|
|
||||||
|
|
||||||
programs.zoxide.enable = true;
|
programs.zoxide.enable = true;
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +1,111 @@
|
|||||||
{ inputs, config, pkgs, lib, ... }:
|
{ inputs, config, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[
|
|
||||||
../common/common.nix
|
../common/common.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "desktop1";
|
networking.hostName = "desktop1";
|
||||||
|
|
||||||
|
networking.bridges.br0.interfaces = [ "enp4s0" ];
|
||||||
|
networking.interfaces.br0.ipv4.addresses = [
|
||||||
|
{
|
||||||
|
address = "192.168.1.146";
|
||||||
|
prefixLength = 24;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
networking.defaultGateway = "192.168.1.254";
|
||||||
|
networking.nameservers = [
|
||||||
|
"192.168.1.202"
|
||||||
|
"192.168.1.137"
|
||||||
|
"192.168.1.49"
|
||||||
|
];
|
||||||
|
networking.useDHCP = false;
|
||||||
|
networking.enableIPv6 = false;
|
||||||
|
|
||||||
|
age.identityPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];
|
||||||
|
|
||||||
|
fileSystems."/home/smayzy/Main" = {
|
||||||
|
device = "nfs-srv1.internal.smayzy.ovh:/srv/NFS/Main";
|
||||||
|
fsType = "nfs";
|
||||||
|
options = [
|
||||||
|
"x-systemd.automount"
|
||||||
|
"nofail"
|
||||||
|
"noauto"
|
||||||
|
"nfsvers=4"
|
||||||
|
"soft"
|
||||||
|
"timeo=50"
|
||||||
|
];
|
||||||
|
depends = [ "/home" ];
|
||||||
|
};
|
||||||
|
fileSystems."/home/smayzy/ISO" = {
|
||||||
|
device = "nfs-srv1.internal.smayzy.ovh:/srv/NFS/ISO";
|
||||||
|
fsType = "nfs";
|
||||||
|
options = [
|
||||||
|
"x-systemd.automount"
|
||||||
|
"nofail"
|
||||||
|
"noauto"
|
||||||
|
"nfsvers=4"
|
||||||
|
"soft"
|
||||||
|
"timeo=50"
|
||||||
|
];
|
||||||
|
depends = [ "/home" ];
|
||||||
|
};
|
||||||
|
fileSystems."/home/smayzy/Vault" = {
|
||||||
|
device = "nfs-srv1.internal.smayzy.ovh:/srv/NFS/Vault";
|
||||||
|
fsType = "nfs";
|
||||||
|
options = [
|
||||||
|
"x-systemd.automount"
|
||||||
|
"nofail"
|
||||||
|
"noauto"
|
||||||
|
"nfsvers=4"
|
||||||
|
"soft"
|
||||||
|
"timeo=50"
|
||||||
|
];
|
||||||
|
depends = [ "/home" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
security.pam.loginLimits = [
|
||||||
|
{
|
||||||
|
domain = "@audio";
|
||||||
|
type = "-";
|
||||||
|
item = "memlock";
|
||||||
|
value = "unlimited";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
smayzy = {
|
smayzy = {
|
||||||
desktop.enable = true;
|
desktop.enable = true;
|
||||||
nvidia.enable = true;
|
nvidia.enable = true;
|
||||||
virt.enable = true;
|
virt.enable = true;
|
||||||
hyprland.enable = true;
|
hyprland.enable = true;
|
||||||
kde.enable = true;
|
kde.enable = true;
|
||||||
|
docker.enable = true;
|
||||||
|
steam.enable = true;
|
||||||
|
office.enable = true;
|
||||||
|
mullvad.enable = true;
|
||||||
|
alacritty.enable = true;
|
||||||
|
ardour.enable = true;
|
||||||
|
mail.enable = true;
|
||||||
|
supertuxkart.enable = true;
|
||||||
|
flatpak = {
|
||||||
|
enable = true;
|
||||||
|
media.enable = true;
|
||||||
|
dev.enable = true;
|
||||||
|
gaming.enable = true;
|
||||||
|
};
|
||||||
|
containers = {
|
||||||
|
nixos = {
|
||||||
|
};
|
||||||
|
docker = {
|
||||||
|
};
|
||||||
|
networking = {
|
||||||
|
bridge = "br0";
|
||||||
|
dns = [ "192.168.1.202" ];
|
||||||
|
gateway = "192.168.1.254";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
@@ -31,14 +122,20 @@
|
|||||||
system.stateVersion = "24.11";
|
system.stateVersion = "24.11";
|
||||||
|
|
||||||
boot.loader.grub.extraEntries = ''
|
boot.loader.grub.extraEntries = ''
|
||||||
menuentry "Archlinux" {
|
menuentry "Arch" {
|
||||||
insmod part_gpt
|
insmod part_gpt
|
||||||
insmod fat
|
insmod ext2
|
||||||
search --no-floppy --fs-uuid --set=root 07CA-4966
|
search --no-floppy --fs-uuid --set=root f64bf53c-c989-4e38-9a97-aaadcb36d428
|
||||||
chainloader /EFI/BOOT/BOOTX64.EFI
|
linux /boot/vmlinuz-linux root=UUID=f64bf53c-c989-4e38-9a97-aaadcb36d428
|
||||||
|
initrd /boot/initramfs-linux.img
|
||||||
|
}
|
||||||
|
menuentry "Gentoo" {
|
||||||
|
insmod part_gpt
|
||||||
|
insmod ext2
|
||||||
|
search --no-floppy --fs-uuid --set=root ad8fa502-d3dc-4999-abce-17a09a9cb779
|
||||||
|
linux /boot/vmlinuz-6.12.47-gentoo-dist root=UUID=ad8fa502-d3dc-4999-abce-17a09a9cb779
|
||||||
|
initrd /boot/initramfs-6.12.47-gentoo-dist.img
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,29 +1,63 @@
|
|||||||
{ config, lib, pkgs, modulesPath, ... }:
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" ];
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"xhci_pci"
|
||||||
|
"ahci"
|
||||||
|
"nvme"
|
||||||
|
"usb_storage"
|
||||||
|
"usbhid"
|
||||||
|
"sd_mod"
|
||||||
|
];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" = {
|
||||||
{ device = "/dev/disk/by-uuid/976bcf9c-3b56-4aa6-98f8-1c899af2b0f8";
|
device = "/dev/disk/by-uuid/05e716ac-e6a2-407d-9941-5ad95db74698";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/8E7F-2417";
|
device = "/dev/disk/by-uuid/A238-B4BF";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
options = [ "fmask=0077" "dmask=0077" ];
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [ ];
|
fileSystems."/home" = {
|
||||||
|
device = "/dev/disk/by-uuid/e5e8d23d-b613-40c2-b190-ee8d40fbf2f1";
|
||||||
|
fsType = "ext4";
|
||||||
|
neededForBoot = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{ device = "/dev/disk/by-uuid/5113afb8-f391-4e0d-bffc-bc6168974ce9"; }
|
||||||
|
];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
networking.useDHCP = lib.mkDefault true;
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.enp4s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
|||||||
+2
-10
@@ -1,15 +1,7 @@
|
|||||||
{ config, pkgs, inputs, ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[
|
|
||||||
../common/home.nix
|
../common/home.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = [
|
|
||||||
];
|
|
||||||
|
|
||||||
home.file = {
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
{ inputs, config, pkgs, lib, ... }:
|
{ inputs, config, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[
|
|
||||||
../common/common.nix
|
../common/common.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
@@ -11,6 +10,7 @@
|
|||||||
laptop.enable = true;
|
laptop.enable = true;
|
||||||
hyprland.enable = true;
|
hyprland.enable = true;
|
||||||
kde.enable = true;
|
kde.enable = true;
|
||||||
|
grub-on-lap.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
@@ -27,8 +27,4 @@
|
|||||||
system.stateVersion = "24.11";
|
system.stateVersion = "24.11";
|
||||||
|
|
||||||
networking.hostName = "laptop1";
|
networking.hostName = "laptop1";
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,31 +1,47 @@
|
|||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
# and may be overwritten by future invocations. Please make changes
|
# and may be overwritten by future invocations. Please make changes
|
||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" ];
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"xhci_pci"
|
||||||
|
"nvme"
|
||||||
|
"usb_storage"
|
||||||
|
"sd_mod"
|
||||||
|
];
|
||||||
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/fa4f1a61-338b-4f1e-9f6c-2b2f2cd12f38";
|
device = "/dev/disk/by-uuid/fa4f1a61-338b-4f1e-9f6c-2b2f2cd12f38";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" = {
|
||||||
{ device = "/dev/disk/by-uuid/8E15-A6E3";
|
device = "/dev/disk/by-uuid/8E15-A6E3";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
options = [ "fmask=0077" "dmask=0077" ];
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices =
|
swapDevices = [
|
||||||
[ { device = "/dev/disk/by-uuid/b451db56-e0a5-4799-88a1-34a31ffe3b08"; }
|
{ device = "/dev/disk/by-uuid/b451db56-e0a5-4799-88a1-34a31ffe3b08"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
# 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
|
||||||
|
|||||||
@@ -1,14 +1,7 @@
|
|||||||
{ config, pkgs, inputs, ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[
|
|
||||||
../common/home.nix
|
../common/home.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = [
|
|
||||||
];
|
|
||||||
|
|
||||||
home.file = {
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
{ inputs, config, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../common/common.nix
|
||||||
|
./hardware-configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
smayzy = {
|
||||||
|
laptop.enable = true;
|
||||||
|
hyprland.enable = true;
|
||||||
|
kde.enable = true;
|
||||||
|
ardour.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit inputs;
|
||||||
|
smayzy = config.smayzy;
|
||||||
|
};
|
||||||
|
users = {
|
||||||
|
smayzy = import ./home.nix;
|
||||||
|
};
|
||||||
|
backupFileExtension = "backup";
|
||||||
|
};
|
||||||
|
|
||||||
|
system.stateVersion = "24.11";
|
||||||
|
|
||||||
|
networking.hostName = "laptop2";
|
||||||
|
}
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"xhci_pci"
|
||||||
|
"nvme"
|
||||||
|
"usb_storage"
|
||||||
|
"sd_mod"
|
||||||
|
];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-uuid/ceed0ac4-72b3-4050-b8a3-0b91aa845da0";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/65F0-BF7E";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{ device = "/dev/disk/by-uuid/3567a75d-12cc-4c3e-a37d-9b99708cbfea"; }
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../common/home.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
{ inputs, config, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../common/common.nix
|
||||||
|
./hardware-configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
networking.hostName = "server1";
|
||||||
|
|
||||||
|
networking.bridges.br0.interfaces = [ "ens18" ];
|
||||||
|
networking.interfaces.br0.ipv4.addresses = [
|
||||||
|
{
|
||||||
|
address = "192.168.1.197";
|
||||||
|
prefixLength = 24;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
networking.defaultGateway = "192.168.1.254";
|
||||||
|
networking.nameservers = [
|
||||||
|
"192.168.1.202"
|
||||||
|
"192.168.1.137"
|
||||||
|
"192.168.1.49"
|
||||||
|
];
|
||||||
|
|
||||||
|
age.identityPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];
|
||||||
|
|
||||||
|
smayzy = {
|
||||||
|
server.enable = true;
|
||||||
|
containers = {
|
||||||
|
networking = {
|
||||||
|
bridge = "br0";
|
||||||
|
dns = [ "192.168.1.202" ];
|
||||||
|
gateway = "192.168.1.254";
|
||||||
|
};
|
||||||
|
nixos = {
|
||||||
|
unbound = {
|
||||||
|
enable = true;
|
||||||
|
ip = "192.168.1.202/24";
|
||||||
|
};
|
||||||
|
traefik = {
|
||||||
|
enable = true;
|
||||||
|
ip = "192.168.1.203/24";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
docker = {
|
||||||
|
cyberchef = {
|
||||||
|
enable = true;
|
||||||
|
port = 6900;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit inputs;
|
||||||
|
smayzy = config.smayzy;
|
||||||
|
};
|
||||||
|
users = {
|
||||||
|
smayzy = import ./home.nix;
|
||||||
|
};
|
||||||
|
backupFileExtension = "backup";
|
||||||
|
};
|
||||||
|
|
||||||
|
system.stateVersion = "24.11";
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/profiles/qemu-guest.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"uhci_hcd"
|
||||||
|
"ehci_pci"
|
||||||
|
"ahci"
|
||||||
|
"virtio_pci"
|
||||||
|
"virtio_scsi"
|
||||||
|
"sd_mod"
|
||||||
|
"sr_mod"
|
||||||
|
];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-uuid/72df93fc-6794-42d1-b611-8660b32a9cfa";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/F5B8-A39C";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.enp6s18.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../common/home.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./fastfetch.nix
|
||||||
|
./mail.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
{ lib, smayzy, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
config = mkIf smayzy.base-cli-pkgs.enable {
|
||||||
|
home.file = {
|
||||||
|
".config/fastfetch" = {
|
||||||
|
source = builtins.toPath ./fastfetch;
|
||||||
|
recursive = true;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
Before Width: | Height: | Size: 1.9 MiB After Width: | Height: | Size: 1.9 MiB |
@@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
smayzy,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
mkIf = lib.mkIf;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
config = mkIf smayzy.mail.enable {
|
||||||
|
home.file = {
|
||||||
|
".config/neomutt" = {
|
||||||
|
source = builtins.toPath ../../../dotfiles/neomutt;
|
||||||
|
recursive = true;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
".config/isyncrc" = {
|
||||||
|
source = builtins.toPath ../../../dotfiles/isyncrc;
|
||||||
|
recursive = true;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
".config/msmtp" = {
|
||||||
|
source = builtins.toPath ../../../dotfiles/msmtp;
|
||||||
|
recursive = true;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,9 +1,11 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./wm/hyprland.nix
|
./cli
|
||||||
./terminal
|
|
||||||
./lf
|
./lf
|
||||||
./webapps.nix
|
./notif
|
||||||
|
./terminal
|
||||||
|
./virt
|
||||||
|
./wm/hyprland.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./lf.nix
|
./lf.nix
|
||||||
|
|||||||
@@ -1,23 +1,21 @@
|
|||||||
{ pkgs, lib, config, ... }:
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
smayzy,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkOption types;
|
inherit (lib) mkIf;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.smayzy.lf.enable = mkOption {
|
config = mkIf smayzy.base-cli-pkgs.enable {
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "set to true if you want to use a nvidia GC";
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.lf.enable {
|
|
||||||
xdg.configFile."lf/icons".source = ./icons;
|
xdg.configFile."lf/icons".source = ./icons;
|
||||||
|
|
||||||
programs.lf = {
|
programs.lf = {
|
||||||
enable = true;
|
enable = true;
|
||||||
commands = {
|
commands = {
|
||||||
dragon-out = ''%${pkgs.xdragon}/bin/xdragon -a -x "$fx"'';
|
dragon-out = ''%${pkgs.dragon-drop}/bin/xdragon -a -x "$fx"'';
|
||||||
editor-open = ''$$EDITOR $f'';
|
editor-open = "$$EDITOR $f";
|
||||||
mkdir = ''
|
mkdir = ''
|
||||||
''${{
|
''${{
|
||||||
printf "Directory Name: "
|
printf "Directory Name: "
|
||||||
@@ -58,8 +56,7 @@ in
|
|||||||
|
|
||||||
extraConfig =
|
extraConfig =
|
||||||
let
|
let
|
||||||
previewer =
|
previewer = pkgs.writeShellScriptBin "pv.sh" ''
|
||||||
pkgs.writeShellScriptBin "pv.sh" ''
|
|
||||||
file=$1
|
file=$1
|
||||||
w=$2
|
w=$2
|
||||||
h=$3
|
h=$3
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./mako.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
{ lib, smayzy, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
config = mkIf smayzy.hyprland.enable {
|
||||||
|
services.mako = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
font = "JetBrainsMono 10";
|
||||||
|
background-color = "#282828";
|
||||||
|
text-color = "#ebdbb2";
|
||||||
|
border-color = "#98971a";
|
||||||
|
border-size = 2;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
{ smayzy, lib, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.alacritty.enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "alacritty config";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf smayzy.alacritty.enable {
|
||||||
|
programs.alacritty = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
window = {
|
||||||
|
padding = {
|
||||||
|
x = 5;
|
||||||
|
y = 5;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
font = {
|
||||||
|
normal = {
|
||||||
|
family = "JetBrainsMono Nerd Font";
|
||||||
|
style = "Medium";
|
||||||
|
};
|
||||||
|
bold = {
|
||||||
|
family = "JetBrainsMono Nerd Font";
|
||||||
|
style = "Bold";
|
||||||
|
};
|
||||||
|
italic = {
|
||||||
|
family = "JetBrainsMono Nerd Font";
|
||||||
|
style = "MediumItalic";
|
||||||
|
};
|
||||||
|
bold_italic = {
|
||||||
|
family = "JetBrainsMono Nerd Font";
|
||||||
|
style = "BoldItalic";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
cursor = {
|
||||||
|
style = "Underline";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
./alacritty.nix
|
||||||
./kitty.nix
|
./kitty.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,19 +1,14 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{ smayzy, lib, ... }:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkOption types;
|
inherit (lib) mkIf;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.smayzy.kitty.enable = mkOption {
|
config = mkIf smayzy.kitty.enable {
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "kitty config";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.kitty.enable {
|
|
||||||
programs.kitty = {
|
programs.kitty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
cursor = "#c7c7c7";
|
cursor = "#c7c7c7";
|
||||||
|
cursor_trail = 3;
|
||||||
cursor_text_color = "#feffff";
|
cursor_text_color = "#feffff";
|
||||||
selection_foreground = "#3e3e3e";
|
selection_foreground = "#3e3e3e";
|
||||||
selection_background = "#c1ddff";
|
selection_background = "#c1ddff";
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./qemu.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
{ lib, smayzy, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
config = mkIf smayzy.virt.enable {
|
||||||
|
dconf.settings = {
|
||||||
|
"org/virt-manager/virt-manager/connections" = {
|
||||||
|
autoconnect = [ "qemu:///system" ];
|
||||||
|
uris = [ "qemu:///system" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{ lib, pkgs, config, ... }:
|
|
||||||
let
|
|
||||||
browser = lib.getExe pkgs.firefox;
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.webapps.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "jellyfin webapp";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.webapps.enable {
|
|
||||||
xdg.desktopEntries.jellyfin = {
|
|
||||||
name = "Jellyfin";
|
|
||||||
exec = "${browser} --no-remote -P jellyfin --new-window --kiosk https://jellyfin.smayzy.ovh";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hyprland.nix
|
./hyprland.nix
|
||||||
|
|||||||
@@ -1,4 +1,9 @@
|
|||||||
{ lib, config, pkgs, smayzy, ... }:
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
smayzy,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
mkIf = lib.mkIf;
|
mkIf = lib.mkIf;
|
||||||
in
|
in
|
||||||
@@ -7,15 +12,16 @@ in
|
|||||||
|
|
||||||
home.file = lib.mkMerge [
|
home.file = lib.mkMerge [
|
||||||
{
|
{
|
||||||
".config/mako/config" = {
|
|
||||||
source = builtins.toPath ../../../dotfiles/mako/config;
|
|
||||||
force = true;
|
|
||||||
};
|
|
||||||
".config/wofi" = {
|
".config/wofi" = {
|
||||||
source = builtins.toPath ../../../dotfiles/wofi;
|
source = builtins.toPath ../../../dotfiles/wofi;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
force = true;
|
force = true;
|
||||||
};
|
};
|
||||||
|
"wallpaper" = {
|
||||||
|
source = builtins.toPath ../../../wallpapers;
|
||||||
|
recursive = true;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
(mkIf smayzy.desktop.enable {
|
(mkIf smayzy.desktop.enable {
|
||||||
@@ -69,4 +75,3 @@ in
|
|||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.ardour.enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "ardour suite";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf config.smayzy.ardour.enable {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
ardour
|
||||||
|
guitarix
|
||||||
|
tuxguitar
|
||||||
|
caps
|
||||||
|
lsp-plugins
|
||||||
|
calf
|
||||||
|
dragonfly-reverb
|
||||||
|
tap-plugins
|
||||||
|
hydrogen
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./pipewire.nix
|
./pipewire.nix
|
||||||
|
./ardour.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,6 +17,16 @@ in
|
|||||||
alsa.enable = true;
|
alsa.enable = true;
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
|
jack.enable = true;
|
||||||
|
extraConfig.pipewire."92-low-latency" = {
|
||||||
|
"context.properties" = {
|
||||||
|
"default.clock.rate" = 48000;
|
||||||
|
"default.clock.quantum" = 128;
|
||||||
|
"default.clock.min-quantum" = 128;
|
||||||
|
"default.clock.max-quantum" = 128;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
environment.systemPackages = with pkgs; [ pulseaudioFull ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
./fzf.nix
|
||||||
./nh.nix
|
./nh.nix
|
||||||
./nvf.nix
|
./nvf.nix
|
||||||
./fzf.nix
|
|
||||||
./pkgs.nix
|
./pkgs.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,9 @@
|
|||||||
{ config, lib, pkgs, ...}:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkOption types;
|
inherit (lib) mkIf mkOption types;
|
||||||
in
|
in
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, pkgs, ...}:
|
{ config, lib, ... }:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkOption types;
|
inherit (lib) mkIf mkOption types;
|
||||||
in
|
in
|
||||||
@@ -12,7 +12,7 @@ in
|
|||||||
config = mkIf config.smayzy.nh.enable {
|
config = mkIf config.smayzy.nh.enable {
|
||||||
programs.nh = {
|
programs.nh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
clean= {
|
clean = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraArgs = "--keep 10";
|
extraArgs = "--keep 10";
|
||||||
dates = "hourly";
|
dates = "hourly";
|
||||||
|
|||||||
@@ -1,4 +1,9 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkOption types;
|
inherit (lib) mkIf mkOption types;
|
||||||
in
|
in
|
||||||
@@ -18,16 +23,22 @@ in
|
|||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
servers.nil.enable = true;
|
servers.nil = {
|
||||||
|
enable = true;
|
||||||
|
settings.nil.nix.autoArchive = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
languages = {
|
languages = {
|
||||||
nix.enable = true;
|
nix.enable = true;
|
||||||
clang.enable = true;
|
clang.enable = true;
|
||||||
rust.enable = true;
|
rust.enable = true;
|
||||||
|
arduino.enable = true;
|
||||||
|
bash.enable = true;
|
||||||
|
lua.enable = true;
|
||||||
};
|
};
|
||||||
theme = {
|
theme = {
|
||||||
enable = true;
|
enable = true;
|
||||||
name = lib.mkDefault "dracula";
|
name = lib.mkForce "dracula";
|
||||||
};
|
};
|
||||||
treesitter.enable = true;
|
treesitter.enable = true;
|
||||||
statusline.lualine.enable = true;
|
statusline.lualine.enable = true;
|
||||||
|
|||||||
@@ -1,4 +1,10 @@
|
|||||||
{ config, lib, pkgs, ...}:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
agenix,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkOption types;
|
inherit (lib) mkIf mkOption types;
|
||||||
in
|
in
|
||||||
@@ -18,7 +24,22 @@ in
|
|||||||
btop
|
btop
|
||||||
file
|
file
|
||||||
vim
|
vim
|
||||||
|
man-pages
|
||||||
|
man-pages-posix
|
||||||
fastfetch
|
fastfetch
|
||||||
|
lf
|
||||||
|
tshark
|
||||||
|
nixfmt
|
||||||
|
usbutils
|
||||||
|
git
|
||||||
|
unzip
|
||||||
|
nixfmt-tree
|
||||||
|
efibootmgr
|
||||||
|
nfs-utils
|
||||||
|
nmap
|
||||||
|
agenix.packages.${stdenv.hostPlatform.system}.default
|
||||||
|
nixpkgs-review
|
||||||
];
|
];
|
||||||
|
programs.nix-index-database.comma.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.base = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.base {
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./base.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./firefox.nix
|
|
||||||
./floorp.nix
|
|
||||||
./librewolf.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.firefox.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "firefox";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.firefox.enable {
|
|
||||||
programs.firefox.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.floorp.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "floorp";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.floorp.enable {
|
|
||||||
environment.systemPackages = with pkgs; [ floorp ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.librewolf.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "librewolf";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.librewolf.enable {
|
|
||||||
environment.systemPackages = with pkgs; [ librewolf ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./element.nix
|
|
||||||
./webcord.nix
|
|
||||||
./thunderbird.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.element.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "element";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.element.enable {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
element-desktop
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.thunderbird.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "thunderbird";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.thunderbird.enable {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
thunderbird
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
inherit (lib) mkIf mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.smayzy.webcord.enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "webcord";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.smayzy.webcord.enable {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
webcord
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./nixos
|
||||||
|
./nixos.nix
|
||||||
|
./docker
|
||||||
|
./docker.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.docker.enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "enable docker";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf config.smayzy.docker.enable {
|
||||||
|
virtualisation.docker.enable = true;
|
||||||
|
users.extraGroups.docker.members = [ "smayzy" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
cfg = config.smayzy.containers.docker.cyberchef;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.containers.docker.cyberchef = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "cyberchef docker ct";
|
||||||
|
};
|
||||||
|
port = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 80;
|
||||||
|
description = "cyberchef's port";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
virtualisation.oci-containers.containers = {
|
||||||
|
cyberchef = {
|
||||||
|
image = "ghcr.io/gchq/cyberchef";
|
||||||
|
ports = [ "${toString cfg.port}:80" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./cyberchef.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (lib) mkOption types;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.containers.networking = {
|
||||||
|
bridge = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "the bridge to use e.g. (br0)";
|
||||||
|
};
|
||||||
|
dns = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
description = "the dns servers to use e.g. [ 1.1.1.1 8.8.8.8 ]";
|
||||||
|
};
|
||||||
|
gateway = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "the gateway to use e.g. (10.10.10.255)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./httpd.nix
|
||||||
|
./traefik.nix
|
||||||
|
./unbound.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
cfg = config.smayzy.containers.nixos.httpd;
|
||||||
|
net = config.smayzy.containers.networking;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.containers.nixos.httpd = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "httpd nixos ct";
|
||||||
|
};
|
||||||
|
ip = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "ip addr e.g. (192.168.1.20)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
containers.httpd = {
|
||||||
|
autoStart = true;
|
||||||
|
privateNetwork = true;
|
||||||
|
hostBridge = net.bridge;
|
||||||
|
localAddress = cfg.ip;
|
||||||
|
config =
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
system.stateVersion = "25.11";
|
||||||
|
|
||||||
|
services.httpd = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
networking.defaultGateway = net.gateway;
|
||||||
|
networking.nameservers = net.dns;
|
||||||
|
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,441 @@
|
|||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
cfg = config.smayzy.containers.nixos.traefik;
|
||||||
|
net = config.smayzy.containers.networking;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.containers.nixos.traefik = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "traefik nixos ct";
|
||||||
|
};
|
||||||
|
ip = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "ip addr e.g. (192.168.1.20)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
age.secrets = {
|
||||||
|
traefik-cf-tk = {
|
||||||
|
file = ../../../../secrets/traefik-cf-tk.age;
|
||||||
|
owner = "root";
|
||||||
|
group = "root";
|
||||||
|
mode = "0400";
|
||||||
|
};
|
||||||
|
traefik-dashboard-auth = {
|
||||||
|
file = ../../../../secrets/traefik-dashboard-auth.age;
|
||||||
|
mode = "0444";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
containers.traefik = {
|
||||||
|
bindMounts = {
|
||||||
|
"/run/secrets/traefik-cf-tk" = {
|
||||||
|
hostPath = config.age.secrets.traefik-cf-tk.path;
|
||||||
|
isReadOnly = true;
|
||||||
|
};
|
||||||
|
"/run/secrets/traefik-dashboard-auth" = {
|
||||||
|
hostPath = config.age.secrets.traefik-dashboard-auth.path;
|
||||||
|
isReadOnly = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
autoStart = true;
|
||||||
|
privateNetwork = true;
|
||||||
|
hostBridge = net.bridge;
|
||||||
|
localAddress = cfg.ip;
|
||||||
|
config =
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
system.stateVersion = "25.11";
|
||||||
|
|
||||||
|
networking.defaultGateway = net.gateway;
|
||||||
|
networking.nameservers = net.dns;
|
||||||
|
networking.firewall.allowedTCPPorts = [
|
||||||
|
80
|
||||||
|
443
|
||||||
|
880
|
||||||
|
4443
|
||||||
|
];
|
||||||
|
|
||||||
|
systemd.services.traefik.serviceConfig.EnvironmentFile = [
|
||||||
|
"/run/secrets/traefik-cf-tk"
|
||||||
|
];
|
||||||
|
|
||||||
|
services.traefik = {
|
||||||
|
enable = true;
|
||||||
|
staticConfigOptions = {
|
||||||
|
global = {
|
||||||
|
checkNewVersion = false;
|
||||||
|
sendAnonymousUsage = false;
|
||||||
|
};
|
||||||
|
log = {
|
||||||
|
level = "WARN";
|
||||||
|
};
|
||||||
|
api = {
|
||||||
|
dashboard = true;
|
||||||
|
disabledashboardad = true;
|
||||||
|
};
|
||||||
|
entryPoints = {
|
||||||
|
local = {
|
||||||
|
address = ":80";
|
||||||
|
};
|
||||||
|
localSec = {
|
||||||
|
address = ":443";
|
||||||
|
};
|
||||||
|
ext = {
|
||||||
|
address = ":880";
|
||||||
|
};
|
||||||
|
extSec = {
|
||||||
|
address = ":4443";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
certificatesResolvers = {
|
||||||
|
cloudflare = {
|
||||||
|
acme = {
|
||||||
|
email = "smayzy@smayzy.ovh";
|
||||||
|
storage = "/var/lib/traefik/acme.json";
|
||||||
|
dnsChallenge = {
|
||||||
|
provider = "cloudflare";
|
||||||
|
resolvers = [ "192.168.1.202" ];
|
||||||
|
propagation.delayBeforeChecks = 15;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
dynamicConfigOptions = {
|
||||||
|
http = {
|
||||||
|
routers = {
|
||||||
|
traefik = {
|
||||||
|
rule = "Host(`traefik.internal.smayzy.ovh`) && (PathPrefix(`/api`) || PathPrefix(`/dashboard`))";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "api@internal";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
middlewares = [ "dashboard-auth" ];
|
||||||
|
};
|
||||||
|
bazarr-anime = {
|
||||||
|
rule = "Host(`bazarr-anime.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "bazarr-anime";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
bazarr = {
|
||||||
|
rule = "Host(`bazarr.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "bazarr";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
lidarr = {
|
||||||
|
rule = "Host(`lidarr.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "lidarr";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
nzbget = {
|
||||||
|
rule = "Host(`nzbget.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "nzbget";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
prowlarr = {
|
||||||
|
rule = "Host(`prowlarr.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "prowlarr";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
qbittorrent = {
|
||||||
|
rule = "Host(`qbittorrent.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "qbittorrent";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
radarr = {
|
||||||
|
rule = "Host(`radarr.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "radarr";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
sonarr-anime = {
|
||||||
|
rule = "Host(`sonarr-anime.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "sonarr-anime";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
sonarr = {
|
||||||
|
rule = "Host(`sonarr.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "sonarr";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
srv1-proxmox = {
|
||||||
|
rule = "Host(`srv1-proxmox.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "srv1-proxmox";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
srv2-proxmox = {
|
||||||
|
rule = "Host(`srv2-proxmox.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "srv2-proxmox";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
srv1-pbs = {
|
||||||
|
rule = "Host(`srv1-pbs.internal.smayzy.ovh`)";
|
||||||
|
entryPoints = [ "localSec" ];
|
||||||
|
service = "srv1-pbs";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
|
||||||
|
chat = {
|
||||||
|
rule = "Host(`chat.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "chat";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
crafty = {
|
||||||
|
rule = "Host(`crafty.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "crafty";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
cyberchef = {
|
||||||
|
rule = "Host(`cyberchef.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "cyberchef";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
gitea = {
|
||||||
|
rule = "Host(`gitea.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "gitea";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
jellyfin = {
|
||||||
|
rule = "Host(`jellyfin.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "jellyfin";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
kuma = {
|
||||||
|
rule = "Host(`kuma.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "kuma";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
kutt = {
|
||||||
|
rule = "Host(`kutt.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "kutt";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
matrix = {
|
||||||
|
rule = "Host(`matrix.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "matrix";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
mirror = {
|
||||||
|
rule = "Host(`mirror.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "mirror";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
ombi-anime = {
|
||||||
|
rule = "Host(`ombi-anime.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "ombi-anime";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
ombi = {
|
||||||
|
rule = "Host(`ombi.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "ombi";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
share = {
|
||||||
|
rule = "Host(`share.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "share";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
vault = {
|
||||||
|
rule = "Host(`vault.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "vault";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
wordpress = {
|
||||||
|
rule = "Host(`wordpress.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "wordpress";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
mail = {
|
||||||
|
rule = "Host(`autoconfig.smayzy.ovh`) || Host(`autodiscover.smayzy.ovh`) || Host(`mail.smayzy.ovh`) || Host(`mta-sts.mail.smayzy.ovh`) || Host(`mta-sts.smayzy.ovh`) || Host(`smayzy.ovh`) || Host(`www.smayzy.ovh`)";
|
||||||
|
entryPoints = [
|
||||||
|
"ext"
|
||||||
|
"extSec"
|
||||||
|
];
|
||||||
|
service = "mail";
|
||||||
|
tls.certResolver = "cloudflare";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
services = {
|
||||||
|
"bazarr-anime".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:6768"; } ];
|
||||||
|
};
|
||||||
|
"bazarr".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:6767"; } ];
|
||||||
|
};
|
||||||
|
"lidarr".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:8686"; } ];
|
||||||
|
};
|
||||||
|
"nzbget".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:6789"; } ];
|
||||||
|
};
|
||||||
|
"prowlarr".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:9696"; } ];
|
||||||
|
};
|
||||||
|
"qbittorrent".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:8080"; } ];
|
||||||
|
};
|
||||||
|
"radarr".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:7878"; } ];
|
||||||
|
};
|
||||||
|
"sonarr-anime".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:8988"; } ];
|
||||||
|
};
|
||||||
|
"sonarr".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:8989"; } ];
|
||||||
|
};
|
||||||
|
"srv1-proxmox".loadBalancer = {
|
||||||
|
servers = [ { url = "https://192.168.1.193:8006"; } ];
|
||||||
|
serversTransport = "srv1-proxmox";
|
||||||
|
};
|
||||||
|
"srv2-proxmox".loadBalancer = {
|
||||||
|
servers = [ { url = "https://192.168.1.113:8006"; } ];
|
||||||
|
serversTransport = "srv2-proxmox";
|
||||||
|
};
|
||||||
|
"srv1-pbs".loadBalancer = {
|
||||||
|
servers = [ { url = "https://192.168.1.79:8007"; } ];
|
||||||
|
serversTransport = "srv1-pbs";
|
||||||
|
};
|
||||||
|
|
||||||
|
"chat".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.114:80"; } ];
|
||||||
|
};
|
||||||
|
"crafty".loadBalancer = {
|
||||||
|
servers = [ { url = "https://192.168.1.34:8443"; } ];
|
||||||
|
};
|
||||||
|
"cyberchef".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.197:6900"; } ];
|
||||||
|
};
|
||||||
|
"gitea".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.28:3000"; } ];
|
||||||
|
};
|
||||||
|
"jellyfin".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:8096"; } ];
|
||||||
|
};
|
||||||
|
"kuma".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.176:80"; } ];
|
||||||
|
};
|
||||||
|
"kutt".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.132:80"; } ];
|
||||||
|
};
|
||||||
|
"matrix".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.114:80"; } ];
|
||||||
|
};
|
||||||
|
"mirror".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.185:80"; } ];
|
||||||
|
};
|
||||||
|
"ombi-anime".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:3580"; } ];
|
||||||
|
};
|
||||||
|
"ombi".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.147:3579"; } ];
|
||||||
|
};
|
||||||
|
"share".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.98:80"; } ];
|
||||||
|
};
|
||||||
|
"vault".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.160:80"; } ];
|
||||||
|
};
|
||||||
|
"wordpress".loadBalancer = {
|
||||||
|
servers = [ { url = "http://192.168.1.16:80"; } ];
|
||||||
|
};
|
||||||
|
"mail".loadBalancer = {
|
||||||
|
servers = [ { url = "https://192.168.1.128:443"; } ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
serversTransports = {
|
||||||
|
srv1-proxmox = {
|
||||||
|
serverName = "srv1-proxmox.internal.smayzy.ovh";
|
||||||
|
};
|
||||||
|
srv2-proxmox = {
|
||||||
|
serverName = "srv2-proxmox.internal.smayzy.ovh";
|
||||||
|
};
|
||||||
|
srv1-pbs = {
|
||||||
|
serverName = "srv1-pbs.internal.smayzy.ovh";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
middlewares = {
|
||||||
|
dashboard-auth = {
|
||||||
|
basicAuth = {
|
||||||
|
usersFile = "/run/secrets/traefik-dashboard-auth";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}; # http
|
||||||
|
}; # dyna config
|
||||||
|
}; # services.traefik
|
||||||
|
}; # config
|
||||||
|
}; # ct traefik
|
||||||
|
}; # config
|
||||||
|
}
|
||||||
@@ -0,0 +1,74 @@
|
|||||||
|
{ lib, config, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf mkOption types;
|
||||||
|
cfg = config.smayzy.containers.nixos.unbound;
|
||||||
|
net = config.smayzy.containers.networking;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.smayzy.containers.nixos.unbound = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "unbound nixos ct";
|
||||||
|
};
|
||||||
|
ip = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "ip addr e.g. (192.168.1.20)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
containers.unbound = {
|
||||||
|
autoStart = true;
|
||||||
|
privateNetwork = true;
|
||||||
|
hostBridge = net.bridge;
|
||||||
|
localAddress = cfg.ip;
|
||||||
|
config =
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
system.stateVersion = "25.11";
|
||||||
|
|
||||||
|
services.unbound = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
server = {
|
||||||
|
interface = [ "0.0.0.0" ];
|
||||||
|
qname-minimisation = "yes";
|
||||||
|
minimal-responses = "no";
|
||||||
|
access-control = [
|
||||||
|
"127.0.0.0/8 allow"
|
||||||
|
"192.168.0.0/16 allow"
|
||||||
|
];
|
||||||
|
private-domain = [ "internal.smayzy.ovh" ];
|
||||||
|
local-zone = [ "internal.smayzy.ovh. static" ];
|
||||||
|
local-data = [
|
||||||
|
''"npm-local.internal.smayzy.ovh. A 192.168.1.181"''
|
||||||
|
''"npm.internal.smayzy.ovh. A 192.168.1.181"''
|
||||||
|
''"nfs-srv1.internal.smayzy.ovh. A 192.168.1.48"''
|
||||||
|
''"traefik.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
|
||||||
|
''"bazarr-anime.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"bazarr.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"lidarr.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"nzbget.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"prowlarr.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"qbittorrent.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"radarr.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"sonarr-anime.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"sonarr.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"srv1-proxmox.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"srv2-proxmox.internal.smayzy.ovh. A 192.168.1.203"''
|
||||||
|
''"srv1-pbs.internal.smayzy.ovh. A 192.168.1.79"''
|
||||||
|
''"srv2-pbs.internal.smayzy.ovh. A 192.168.1.80"''
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networking.defaultGateway = net.gateway;
|
||||||
|
networking.nameservers = net.dns;
|
||||||
|
networking.firewall.allowedTCPPorts = [ 53 ];
|
||||||
|
networking.firewall.allowedUDPPorts = [ 53 ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./kde.nix
|
./kde.nix
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ lib, config, pkgs, ... }:
|
{ lib, config, ... }:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf mkOption types;
|
inherit (lib) mkIf mkOption types;
|
||||||
in
|
in
|
||||||
@@ -11,5 +11,6 @@ in
|
|||||||
|
|
||||||
config = mkIf config.smayzy.kde.enable {
|
config = mkIf config.smayzy.kde.enable {
|
||||||
services.desktopManager.plasma6.enable = true;
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
services.xserver.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user