mirror of
https://github.com/Ahwxorg/nixos-config.git
synced 2025-12-04 06:50:14 +01:00
Compare commits
12 commits
eecc50d44e
...
972e13ba0c
| Author | SHA1 | Date | |
|---|---|---|---|
| 972e13ba0c | |||
| 7d9c4223d8 | |||
| c8a2c464d9 | |||
| 1ed83ad99f | |||
| 6e74d36d23 | |||
| 8ab7198f3f | |||
| f355b64cb4 | |||
| 53a275cebc | |||
| f64508f439 | |||
| 8657c12609 | |||
| 01c228dbc4 | |||
| c8c1276199 |
10 changed files with 56 additions and 15 deletions
2
flake.lock
generated
2
flake.lock
generated
|
|
@ -883,7 +883,7 @@
|
||||||
"oisd": {
|
"oisd": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"narHash": "sha256-BimlCciIYi63B1KGZzUzlpduFmj0jtjASH+QORYWoww=",
|
"narHash": "sha256-g4tRuibVyOwPMAhJ1RLCBLkuSRo0eWC0HSe227NMd4E=",
|
||||||
"type": "file",
|
"type": "file",
|
||||||
"url": "https://big.oisd.nl/domainswild"
|
"url": "https://big.oisd.nl/domainswild"
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -16,9 +16,10 @@ in
|
||||||
./../../modules/services/tailscale.nix
|
./../../modules/services/tailscale.nix
|
||||||
./../../modules/services/mpd.nix
|
./../../modules/services/mpd.nix
|
||||||
./../../modules/services/smart-monitoring.nix
|
./../../modules/services/smart-monitoring.nix
|
||||||
|
./../../modules/services/mullvad.nix
|
||||||
inputs.nixos-hardware.nixosModules.framework-13-7040-amd
|
inputs.nixos-hardware.nixosModules.framework-13-7040-amd
|
||||||
./../../modules/security/dnscrypt.nix
|
./../../modules/home/steam.nix
|
||||||
./../../modules/security/syslogd.nix
|
# ./../../modules/services/automount.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
# install some system-utilities; set hosts to be editable by the user.
|
# install some system-utilities; set hosts to be editable by the user.
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,7 @@
|
||||||
"systemMailerPassword" = { };
|
"systemMailerPassword" = { };
|
||||||
"dandelionSyncthingId" = { };
|
"dandelionSyncthingId" = { };
|
||||||
"sakuraSyncthingId" = { };
|
"sakuraSyncthingId" = { };
|
||||||
|
"homeExternalIPv4" = { };
|
||||||
}
|
}
|
||||||
else if (host == "dandelion") then
|
else if (host == "dandelion") then
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -317,6 +317,12 @@
|
||||||
"idleinhibit focus, class:^(mpv)$"
|
"idleinhibit focus, class:^(mpv)$"
|
||||||
"idleinhibit fullscreen, class:^(librewolf)$"
|
"idleinhibit fullscreen, class:^(librewolf)$"
|
||||||
"float,class:^(pavucontrol-qt)$"
|
"float,class:^(pavucontrol-qt)$"
|
||||||
|
"fullscreen,class:Nsxiv"
|
||||||
|
"fullscreen,title:^(*nsxiv*)$"
|
||||||
|
"fullscreen,title:^(nsxiv)$"
|
||||||
|
"fullscreen,class:swiv"
|
||||||
|
"fullscreen,title:^(*swiv*)$"
|
||||||
|
"fullscreen,title:^(swiv)$"
|
||||||
"float,class:^(pavucontrol)$"
|
"float,class:^(pavucontrol)$"
|
||||||
"float,class:^(SoundWireServer)$"
|
"float,class:^(SoundWireServer)$"
|
||||||
"float,class:^(.sameboy-wrapped)$"
|
"float,class:^(.sameboy-wrapped)$"
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@
|
||||||
gcc
|
gcc
|
||||||
gnumake
|
gnumake
|
||||||
python3
|
python3
|
||||||
|
nautilus
|
||||||
|
|
||||||
# CLI shit
|
# CLI shit
|
||||||
bitwarden-cli
|
bitwarden-cli
|
||||||
|
|
|
||||||
|
|
@ -27,11 +27,11 @@
|
||||||
"position": "top",
|
"position": "top",
|
||||||
|
|
||||||
"modules-left": [
|
"modules-left": [
|
||||||
|
"custom/devices",
|
||||||
"privacy",
|
"privacy",
|
||||||
"network",
|
"network",
|
||||||
"custom/music",
|
"custom/music",
|
||||||
"custom/vpn",
|
"custom/vpn",
|
||||||
"custom/devices",
|
|
||||||
"sway/mode",
|
"sway/mode",
|
||||||
"tray",
|
"tray",
|
||||||
],
|
],
|
||||||
|
|
@ -98,12 +98,14 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
"custom/vpn": {
|
"custom/vpn": {
|
||||||
"format": "{icon}",
|
"format": "<span color='#aaaaaa'>VPN:</span> {text}", // <span color='#aaaaaa'>({location})</span>",
|
||||||
"tooltip-format": "{text}",
|
// "format": "{text}",
|
||||||
"format-icons": [ "","" ],
|
// "format-icons": [ "","" ],
|
||||||
|
// "tooltip": true,
|
||||||
|
// "tooltip-format": "{node}",
|
||||||
"return-type": "json",
|
"return-type": "json",
|
||||||
"exec": "~/.local/bin/waybar-vpn",
|
"exec": "~/.local/bin/waybar-mullvad",
|
||||||
"interval": 30
|
"interval": 10
|
||||||
},
|
},
|
||||||
|
|
||||||
"custom/music": {
|
"custom/music": {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,13 @@
|
||||||
{ pkgs, username, ... }:
|
{
|
||||||
|
pkgs,
|
||||||
|
username,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
# homeExternalIPv4 = "${pkgs.coreutils}/bin/cat ${config.sops.secrets.homeExternalIPv4.path}";
|
||||||
|
homeExternalIPv4 = "92.118.0.69";
|
||||||
|
in
|
||||||
{
|
{
|
||||||
home.file = {
|
home.file = {
|
||||||
"/home/${username}/.local/bin/waybar-yubikey" = {
|
"/home/${username}/.local/bin/waybar-yubikey" = {
|
||||||
|
|
@ -213,6 +221,7 @@
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"/home/${username}/.local/bin/waybar-vpn" = {
|
"/home/${username}/.local/bin/waybar-vpn" = {
|
||||||
|
# unused nowadays
|
||||||
executable = true;
|
executable = true;
|
||||||
text = ''
|
text = ''
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
@ -222,6 +231,23 @@
|
||||||
|| echo '{"text":"Disconnected","class":"disconnected","percentage":0}'
|
|| echo '{"text":"Disconnected","class":"disconnected","percentage":0}'
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
"/home/${username}/.local/bin/waybar-mullvad" = {
|
||||||
|
executable = true;
|
||||||
|
text = ''
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
STATUS="$(mullvad status | grep -Eio 'connected|connecting|disconnected' | tr '[:upper:]' '[:lower:]')"
|
||||||
|
NODE="$(mullvad status | grep -Ei 'relay' | awk '{print $2}' | tr '[:upper:]' '[:lower:]')"
|
||||||
|
LOCATION="$(mullvad status | grep -Ei 'location' | cut -d':' -f2 | cut -d'.' -f1 | sed 's/ //g')"
|
||||||
|
IPV4="$(mullvad status | grep 'IPv4' | cut -d':' -f3 | sed 's/ //g')"
|
||||||
|
echo "$IPV4" | grep -q "${homeExternalIPv4}" && LOCATION="home"
|
||||||
|
|
||||||
|
echo "$STATUS" | grep -Eioq 'connected|connecting' && TEXT="{\"text\":\"$STATUS ($LOCATION)\",\"location\":\"$LOCATION\",\"node\":\"$NODE\"}" # || ip address show tailscale0 | grep "global tailscale0" && TEXT="{\"text\":\"tailscale ($LOCATION)\",\"location\":\"$LOCATION\",\"node\":\"$NODE\"}"
|
||||||
|
echo "$STATUS" | grep -Eioq 'disconnected' && TEXT="{\"text\":\"$STATUS\",\"location\":\"$LOCATION\",\"node\":\"$NODE\"}"
|
||||||
|
|
||||||
|
echo "$TEXT"
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
wf-recorder
|
wf-recorder
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ in
|
||||||
"https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/public-resolvers.md"
|
"https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/public-resolvers.md"
|
||||||
"https://download.dnscrypt.info/resolvers-list/v3/public-resolvers.md"
|
"https://download.dnscrypt.info/resolvers-list/v3/public-resolvers.md"
|
||||||
];
|
];
|
||||||
minisign_key = "sha256-LRw8acNa39MUv7XmA0GuheugECcejbN8+GJl2Ra7lpg="; # See https://github.com/DNSCrypt/dnscrypt-resolvers/blob/master/v3/public-resolvers.md
|
minisign_key = "sha256-g4tRuibVyOwPMAhJ1RLCBLkuSRo0eWC0HSe227NMd4E="; # See https://github.com/DNSCrypt/dnscrypt-resolvers/blob/master/v3/public-resolvers.md
|
||||||
cache_file = "/var/lib/dnscrypt/public-resolvers.md";
|
cache_file = "/var/lib/dnscrypt/public-resolvers.md";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
3
modules/services/mullvad.nix
Normal file
3
modules/services/mullvad.nix
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
services.mullvad-vpn.enable = true;
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
systemMailerPassword: ENC[AES256_GCM,data:fdCLxxQOPw00kSGrddcr/ZsYWJ9xYPkfxUeS52jA+MNM4dNNfeQ2rhvWKLYpH/6D3/J7CND0UNUVuRLtPdEnU8ct8jkAmYX5nGDm9HAnVScDvbn5dMvaNxg+0o34Fz7E0XbmRM3B6zpzL4T6Odmmd2iRh/cRiz7WBwmKUpcCV3Q=,iv:ddPxnK6f1wEH+xxQLLADO5SdG8YZkbSVlNfan+AA4vs=,tag:WLrQzVsok6dtxSSQH3HHsw==,type:str]
|
systemMailerPassword: ENC[AES256_GCM,data:fdCLxxQOPw00kSGrddcr/ZsYWJ9xYPkfxUeS52jA+MNM4dNNfeQ2rhvWKLYpH/6D3/J7CND0UNUVuRLtPdEnU8ct8jkAmYX5nGDm9HAnVScDvbn5dMvaNxg+0o34Fz7E0XbmRM3B6zpzL4T6Odmmd2iRh/cRiz7WBwmKUpcCV3Q=,iv:ddPxnK6f1wEH+xxQLLADO5SdG8YZkbSVlNfan+AA4vs=,tag:WLrQzVsok6dtxSSQH3HHsw==,type:str]
|
||||||
dandelionSyncthingId: ENC[AES256_GCM,data:crzT7Ph2gDYm/LAyEM2yw/THzu+Dv5SBrw17NF42j2jCvGMLaDgdlMAhkJlr7bonnpjII+9/TLjEXtcEIhcd,iv:6e94tT8rCLFxwDWLNj2T/Fx+0yAuhfS2AdjAKJKt/k0=,tag:Ai44ZvRZps4lQ4gLBbfUDw==,type:str]
|
dandelionSyncthingId: ENC[AES256_GCM,data:crzT7Ph2gDYm/LAyEM2yw/THzu+Dv5SBrw17NF42j2jCvGMLaDgdlMAhkJlr7bonnpjII+9/TLjEXtcEIhcd,iv:6e94tT8rCLFxwDWLNj2T/Fx+0yAuhfS2AdjAKJKt/k0=,tag:Ai44ZvRZps4lQ4gLBbfUDw==,type:str]
|
||||||
sakuraSyncthingId: ENC[AES256_GCM,data:/4MQEcCYVsw2ad2WmUn8Y2f/9mUcyjU9l7Z7PorexQfwaIucmfNH1+Z/FF+0wRj4uaUQLqpR29bRl3EQr/ve,iv:FsiLQYuLZ9YvkfqyF3mAV6jW7csZ5+yXx0sN8f768BE=,tag:U/OTuSnjkOeVT6Vdz96bOw==,type:str]
|
sakuraSyncthingId: ENC[AES256_GCM,data:/4MQEcCYVsw2ad2WmUn8Y2f/9mUcyjU9l7Z7PorexQfwaIucmfNH1+Z/FF+0wRj4uaUQLqpR29bRl3EQr/ve,iv:FsiLQYuLZ9YvkfqyF3mAV6jW7csZ5+yXx0sN8f768BE=,tag:U/OTuSnjkOeVT6Vdz96bOw==,type:str]
|
||||||
|
homeExternalIPv4: ENC[AES256_GCM,data:dn9FTTAUBB23N58=,iv:ktRZexN+P2jDUngN+5hlGB14SgiR/DxQ8ybqFiRTYbo=,tag:d6q9OsBl0218YPvuLMHGyA==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
- recipient: age1yzapmznelujajfyrpw5mxmy86ckg377494w5ap4yej39jatewursfxls9w
|
- recipient: age1yzapmznelujajfyrpw5mxmy86ckg377494w5ap4yej39jatewursfxls9w
|
||||||
|
|
@ -12,7 +13,7 @@ sops:
|
||||||
bjBJd2RtdDhkSFlaUzVRTkQyTVpVSDgKoZ7S/izFqmPw3qHT37ws8m2Cmmb8prC/
|
bjBJd2RtdDhkSFlaUzVRTkQyTVpVSDgKoZ7S/izFqmPw3qHT37ws8m2Cmmb8prC/
|
||||||
JaVn8U57G4aRgp1BqXQvpnKA98HT3BwEsMce5LeNvX7kAtdqkU5eRQ==
|
JaVn8U57G4aRgp1BqXQvpnKA98HT3BwEsMce5LeNvX7kAtdqkU5eRQ==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2025-08-04T12:32:56Z"
|
lastmodified: "2025-12-01T13:34:49Z"
|
||||||
mac: ENC[AES256_GCM,data:so7buQVx6nUTRYBfCPdITDccVWOjEmfPslkG8+Z0RKkDgIgwH4Aa/GnTkX0WxmB2bbI6/GQ1PhILE4UXTo8O7W0OO10+PWV2AWwngMcog+ggbH7qpd1395Tw0A8KiiXdPXwxFBEZqrYkKmYVyw314H02+h5+Qd3irH0bWqmpGOg=,iv:Sy4wR3GdSJCR1tlAxV2lau7cpLox/CoiGTC5eZoNVos=,tag:W2pv//unvIE0HBuJ0v35GA==,type:str]
|
mac: ENC[AES256_GCM,data:XldUv7jmveRET1kM2YEFztQeRqyy533YbR80NpLDUkWBOvU03zaFxdkDlbWmReSASdDc/0W/e06IKz8tlR67Fo+yQFTvf8Uie46xMGLFBtsx9gZIPMZr6Kqvn2JyZO4m/O8y6tYDgans5MlHlJH/Hm4LpDKXmKSp8fQLHIpFJuM=,iv:hyovgfW11kLA1/pkg//q4AJBi7U6k06J1AnvVUMFn1Q=,tag:oCKy73zRgYAtk9pf6O4HWQ==,type:str]
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.10.2
|
version: 3.11.0
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue