Compare commits
18
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7351194fee
|
||
|
|
6aa799c05d
|
||
|
|
ddb6d43b0c
|
||
|
|
8af0ecbf39
|
||
|
|
ce60b83151
|
||
|
|
23609e180e
|
||
|
|
0a566d99b1
|
||
|
|
ff3e201261
|
||
|
|
87c5a25123
|
||
|
|
fd4bc1eaee
|
||
|
|
378ba963b4
|
||
|
|
0e8d8122ef
|
||
|
|
ee9efb8054
|
||
|
|
37769c788a
|
||
|
|
ff1c55e812
|
||
|
|
b6830e1a45
|
||
|
|
71cb76700f | ||
|
|
7aa16dd35e
|
Generated
+34
-60
@@ -2,11 +2,11 @@
|
|||||||
"nodes": {
|
"nodes": {
|
||||||
"crane": {
|
"crane": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1754269165,
|
"lastModified": 1781825982,
|
||||||
"narHash": "sha256-0tcS8FHd4QjbCVoxN9jI+PjHgA4vc/IjkUSp+N3zy0U=",
|
"narHash": "sha256-SlXKwIRIhrOSAcTjCB3ftPLzJWZStQIPS7J1FlZPnKk=",
|
||||||
"owner": "ipetkov",
|
"owner": "ipetkov",
|
||||||
"repo": "crane",
|
"repo": "crane",
|
||||||
"rev": "444e81206df3f7d92780680e45858e31d2f07a08",
|
"rev": "469fd08d0bcf6926321fa973c6777fbc87785dd7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -18,45 +18,24 @@
|
|||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747046372,
|
"lastModified": 1767039857,
|
||||||
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
||||||
"owner": "edolstra",
|
"owner": "NixOS",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "edolstra",
|
"owner": "NixOS",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": [
|
|
||||||
"lanzaboote",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1754091436,
|
|
||||||
"narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"gitignore": {
|
"gitignore": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"lanzaboote",
|
"lanzaboote",
|
||||||
"pre-commit-hooks-nix",
|
"pre-commit",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -81,11 +60,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771102945,
|
"lastModified": 1791642191,
|
||||||
"narHash": "sha256-e5NfW8NhC3qChR8bHVni/asrig/ZFzd1wzpq+cEE/tg=",
|
"narHash": "sha256-0bK0A59rVUn1SRZzo4cNi4VSqAe7vR1gL2/MZl53Frw=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "ff5e5d882c51f9a032479595cbab40fd04f56399",
|
"rev": "c58f54c733a7894d84fa2fdff26cc12088c4b78c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -97,25 +76,23 @@
|
|||||||
"lanzaboote": {
|
"lanzaboote": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
"flake-compat": "flake-compat",
|
|
||||||
"flake-parts": "flake-parts",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
"pre-commit": "pre-commit",
|
||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1762205063,
|
"lastModified": 1782141370,
|
||||||
"narHash": "sha256-If6vQ+KvtKs3ARBO9G3l+4wFSCYtRBrwX1z+I+B61wQ=",
|
"narHash": "sha256-hqijVSEETttmo8Okql9/LG0Ua34hdciKW1a5zzlj8mU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "lanzaboote",
|
"repo": "lanzaboote",
|
||||||
"rev": "88b8a563ff5704f4e8d8e5118fb911fa2110ca05",
|
"rev": "7c9a54a7f87b4539ddbd8bda09a8a5f5f9361aa9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "v0.4.3",
|
"ref": "v1.1.0",
|
||||||
"repo": "lanzaboote",
|
"repo": "lanzaboote",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -158,11 +135,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771008912,
|
"lastModified": 1791594108,
|
||||||
"narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=",
|
"narHash": "sha256-XK4KceonkwD8LuMAt/vNrz982mXJM5jeHAxMwsUXXAQ=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a82ccc39b39b621151d6732718e3e250109076fa",
|
"rev": "6510408d147d8c5e6d76043e899e9251756f6a75",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -182,11 +159,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1770766818,
|
"lastModified": 1785762349,
|
||||||
"narHash": "sha256-12RCFLyAedyMOdenUi7cN3ioJPEGjA/ZG1BLjugfUVs=",
|
"narHash": "sha256-jZhZkzAwc7f3exzcTDJWP2WCAchCv0iNC3UF/QsahdQ=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "plasma-manager",
|
"repo": "plasma-manager",
|
||||||
"rev": "44b928068359b7d2310a34de39555c63c93a2c90",
|
"rev": "a19a2a029fa180911bd89c554dca1616e10f4c1d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -195,12 +172,9 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"pre-commit-hooks-nix": {
|
"pre-commit": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": "flake-compat",
|
||||||
"lanzaboote",
|
|
||||||
"flake-compat"
|
|
||||||
],
|
|
||||||
"gitignore": "gitignore",
|
"gitignore": "gitignore",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"lanzaboote",
|
"lanzaboote",
|
||||||
@@ -208,11 +182,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1750779888,
|
"lastModified": 1781733627,
|
||||||
"narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
|
"narHash": "sha256-U3yTuGBnmXvXoQI3qkpfEDsn9RovQPAjN7ndRco+3u0=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "pre-commit-hooks.nix",
|
"repo": "pre-commit-hooks.nix",
|
||||||
"rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
|
"rev": "3bbec39bc90eadfa031e6f3b77272f3f60803e39",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -239,11 +213,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761791894,
|
"lastModified": 1782012058,
|
||||||
"narHash": "sha256-myRIDh+PxaREz+z9LzbqBJF+SnTFJwkthKDX9zMyddY=",
|
"narHash": "sha256-9mWUnReOUXfKjZuJAL/bAFH3LUyECTRtXgSNVjRw3UY=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "59c45eb69d9222a4362673141e00ff77842cd219",
|
"rev": "8534567325bd8a8d2928e6afd81e0a87d19efd3c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -259,11 +233,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763929380,
|
"lastModified": 1787124737,
|
||||||
"narHash": "sha256-Yc7gZME/lcHoJH6bMPCG7CyjKWhOLJPqLI8MXtyKPHo=",
|
"narHash": "sha256-EnQcFCdcQs1agb8U/h3kn7+A3c3uorANCPP2WakZjAk=",
|
||||||
"owner": "Platonic-Systems",
|
"owner": "Platonic-Systems",
|
||||||
"repo": "secrix",
|
"repo": "secrix",
|
||||||
"rev": "c6e3ca7af47c329dcf442a3d017ae171eee5612f",
|
"rev": "9c0a7db4e355c28fe67643656821b06161b4df61",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
lanzaboote = {
|
lanzaboote = {
|
||||||
url = "github:nix-community/lanzaboote/v0.4.3";
|
url = "github:nix-community/lanzaboote/v1.1.0";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,11 +5,11 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
shellInit = "set fish_greeting";
|
shellInit = "set fish_greeting";
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
# Replace ls with exa
|
# Replace ls with eza
|
||||||
ls = "exa -al --color=always --group-directories-first --icons"; # preferred listing
|
ls = "eza -al --color=always --group-directories-first --icons=always"; # preferred listing
|
||||||
la = "exa -a --color=always --group-directories-first --icons"; # all files and dirs
|
la = "eza -a --color=always --group-directories-first --icons=always"; # all files and dirs
|
||||||
ll = "exa -l --color=always --group-directories-first --icons"; # long format
|
ll = "eza -l --color=always --group-directories-first --icons=always"; # long format
|
||||||
lt = "exa -aT --color=always --group-directories-first --icons"; # tree listing
|
lt = "eza -aT --color=always --group-directories-first --icons=always"; # tree listing
|
||||||
"l." = "exa -a | rg '^\.'"; # show only dotfiles
|
"l." = "exa -a | rg '^\.'"; # show only dotfiles
|
||||||
|
|
||||||
# Replace cat with bat
|
# Replace cat with bat
|
||||||
|
|||||||
@@ -31,6 +31,10 @@
|
|||||||
intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
||||||
];
|
];
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
lmstudio
|
||||||
|
];
|
||||||
|
|
||||||
networking.hostName = "Yura-PC"; # Define your hostname.
|
networking.hostName = "Yura-PC"; # Define your hostname.
|
||||||
networking.hostId = "110a2814"; # Required for ZFS.
|
networking.hostId = "110a2814"; # Required for ZFS.
|
||||||
|
|
||||||
|
|||||||
+24
-11
@@ -7,7 +7,7 @@
|
|||||||
"sysrq_always_enabled=1"
|
"sysrq_always_enabled=1"
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_18;
|
boot.kernelPackages = pkgs.linuxKernel.packages.linux_7_2;
|
||||||
boot.loader = {
|
boot.loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
timeout = 3;
|
timeout = 3;
|
||||||
@@ -38,8 +38,7 @@
|
|||||||
services.xserver.enable = false;
|
services.xserver.enable = false;
|
||||||
|
|
||||||
# Enable the KDE Plasma Desktop Environment.
|
# Enable the KDE Plasma Desktop Environment.
|
||||||
services.displayManager.sddm.enable = true;
|
services.displayManager.plasma-login-manager.enable = true;
|
||||||
services.displayManager.sddm.wayland.enable = true;
|
|
||||||
services.desktopManager.plasma6.enable = true;
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
|
||||||
# Enable CUPS to print documents.
|
# Enable CUPS to print documents.
|
||||||
@@ -74,16 +73,15 @@
|
|||||||
programs.bat.enable = true;
|
programs.bat.enable = true;
|
||||||
programs.htop.enable = true;
|
programs.htop.enable = true;
|
||||||
programs.nix-ld.enable = true;
|
programs.nix-ld.enable = true;
|
||||||
|
# programs.steam.enable = true;
|
||||||
|
|
||||||
# https://nixos.wiki/wiki/Docker
|
# https://nixos.wiki/wiki/Docker
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
virtualisation.docker.enableOnBoot = false;
|
virtualisation.docker.enableOnBoot = false;
|
||||||
virtualisation.docker.package = pkgs.docker_28;
|
|
||||||
|
|
||||||
# https://github.com/flatpak/flatpak/issues/2861
|
# https://github.com/flatpak/flatpak/issues/2861
|
||||||
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||||
|
|
||||||
workarounds.flatpak.enable = true;
|
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
fantasque-sans-mono
|
fantasque-sans-mono
|
||||||
nerd-fonts.fantasque-sans-mono
|
nerd-fonts.fantasque-sans-mono
|
||||||
@@ -119,10 +117,10 @@
|
|||||||
powertop
|
powertop
|
||||||
rbw
|
rbw
|
||||||
restic
|
restic
|
||||||
resticprofile
|
|
||||||
rclone
|
rclone
|
||||||
ripgrep-all
|
ripgrep-all
|
||||||
rustscan
|
rustscan
|
||||||
|
unrar
|
||||||
whois
|
whois
|
||||||
wireguard-tools
|
wireguard-tools
|
||||||
yt-dlp
|
yt-dlp
|
||||||
@@ -142,24 +140,31 @@
|
|||||||
];
|
];
|
||||||
})
|
})
|
||||||
nextcloud-client
|
nextcloud-client
|
||||||
lutris
|
# lutris
|
||||||
lxqt.pavucontrol-qt
|
lxqt.pavucontrol-qt
|
||||||
pinentry-all
|
pinentry-all
|
||||||
tela-circle-icon-theme
|
tela-circle-icon-theme
|
||||||
|
typst
|
||||||
virt-viewer
|
virt-viewer
|
||||||
waypipe
|
waypipe
|
||||||
] ++ [
|
] ++ [
|
||||||
# jetbrains.rust-rover
|
# jetbrains.rust-rover
|
||||||
# jetbrains.goland
|
# jetbrains.goland
|
||||||
jetbrains.clion
|
jetbrains.clion
|
||||||
jetbrains.idea
|
# jetbrains.idea
|
||||||
jetbrains.pycharm
|
jetbrains.pycharm
|
||||||
jetbrains.webstorm
|
jetbrains.webstorm
|
||||||
android-studio
|
android-studio
|
||||||
rustup
|
rustup
|
||||||
zed-editor
|
zed-editor
|
||||||
package-version-server # for zed
|
package-version-server # for zed
|
||||||
antigravity-fhs
|
antigravity-cli
|
||||||
|
antigravity-ide-fhs
|
||||||
|
codex
|
||||||
|
# codex-acp
|
||||||
|
# github-copilot-cli
|
||||||
|
# opencode
|
||||||
|
# opencode-desktop
|
||||||
] ++ [
|
] ++ [
|
||||||
# C
|
# C
|
||||||
gcc
|
gcc
|
||||||
@@ -170,11 +175,14 @@
|
|||||||
poetry
|
poetry
|
||||||
|
|
||||||
# Haskell
|
# Haskell
|
||||||
|
cabal-install
|
||||||
|
haskell-language-server
|
||||||
|
# haskellPackages.hls-cabal-plugin
|
||||||
haskellPackages.ghc
|
haskellPackages.ghc
|
||||||
haskellPackages.stack
|
haskellPackages.stack
|
||||||
|
|
||||||
# Node
|
# Node
|
||||||
nodejs_22
|
nodejs_24
|
||||||
pnpm
|
pnpm
|
||||||
bun
|
bun
|
||||||
|
|
||||||
@@ -185,13 +193,18 @@
|
|||||||
|
|
||||||
# Gleam
|
# Gleam
|
||||||
gleam
|
gleam
|
||||||
beamMinimal26Packages.erlang
|
beamMinimal28Packages.erlang
|
||||||
|
|
||||||
# Racket
|
# Racket
|
||||||
racket
|
racket
|
||||||
|
|
||||||
# Ruby
|
# Ruby
|
||||||
ruby
|
ruby
|
||||||
|
|
||||||
|
# Java
|
||||||
|
zulu
|
||||||
|
|
||||||
|
# spacetimedb
|
||||||
] ++ [
|
] ++ [
|
||||||
jujutsu
|
jujutsu
|
||||||
lazyjj
|
lazyjj
|
||||||
|
|||||||
@@ -14,12 +14,12 @@
|
|||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" =
|
||||||
{ device = "/dev/disk/by-uuid/f222513b-ded1-49fa-b591-20ce86a2fe7f";
|
{ device = "/dev/disk/by-uuid/0dec41bf-aba0-4b7b-9f61-bbb572e5bd1e";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
fileSystems."/boot" =
|
||||||
{ device = "/dev/disk/by-uuid/12CE-A600";
|
{ device = "/dev/disk/by-uuid/9F5E-672F";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
options = [ "fmask=0022" "dmask=0022" ];
|
options = [ "fmask=0022" "dmask=0022" ];
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -70,7 +70,6 @@
|
|||||||
# https://github.com/flatpak/flatpak/issues/2861
|
# https://github.com/flatpak/flatpak/issues/2861
|
||||||
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||||
|
|
||||||
# workarounds.flatpak.enable = true;
|
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
noto-fonts-cjk-sans
|
noto-fonts-cjk-sans
|
||||||
noto-fonts-cjk-serif
|
noto-fonts-cjk-serif
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{ ... }: {
|
{ ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
./opts
|
./opts
|
||||||
./workarounds
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ in
|
|||||||
|
|
||||||
boot.loader.timeout = 2;
|
boot.loader.timeout = 2;
|
||||||
boot.loader.systemd-boot.configurationLimit = 5;
|
boot.loader.systemd-boot.configurationLimit = 5;
|
||||||
boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_12;
|
boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_18;
|
||||||
boot.growPartition = true;
|
boot.growPartition = true;
|
||||||
|
|
||||||
# Enable the X11 windowing system.
|
# Enable the X11 windowing system.
|
||||||
|
|||||||
@@ -54,17 +54,17 @@ in
|
|||||||
enable_dnssec = true;
|
enable_dnssec = true;
|
||||||
bootstrap_dns = [ "1.1.1.1" "9.9.9.9" ];
|
bootstrap_dns = [ "1.1.1.1" "9.9.9.9" ];
|
||||||
upstream_dns = [
|
upstream_dns = [
|
||||||
# Default upstreams
|
|
||||||
"quic://p0.freedns.controld.com"
|
|
||||||
"tls://one.one.one.one"
|
|
||||||
"tls://dns.quad9.net"
|
|
||||||
|
|
||||||
# Adguard uses upstream and not rewrite rules to resolve cname rewrites,
|
# Adguard uses upstream and not rewrite rules to resolve cname rewrites,
|
||||||
# and obviously my sysdomain entries don't exist in cloudflare.
|
# and obviously my sysdomain entries don't exist in cloudflare.
|
||||||
"[/${sysdomain}/][::1]" # Sys domains to self (for cname rewrites)
|
"[/${sysdomain}/][::1]" # Sys domains to self (for cname rewrites)
|
||||||
|
|
||||||
"[/${ldomain}/][::1]:1053" # Local domains to Knot (ddns)
|
"[/${ldomain}/][::1]:1053" # Local domains to Knot (ddns)
|
||||||
"[/home/][${ifs.lan.ulaPrefix}::250]" # .home domains to opnsense (temporary)
|
"[/home/][${ifs.lan.ulaPrefix}::250]" # .home domains to opnsense (temporary)
|
||||||
|
|
||||||
|
# Default upstreams
|
||||||
|
"quic://p0.freedns.controld.com"
|
||||||
|
"tls://one.one.one.one"
|
||||||
|
"tls://dns.quad9.net"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
# https://adguard-dns.io/kb/general/dns-filtering-syntax/
|
# https://adguard-dns.io/kb/general/dns-filtering-syntax/
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ in
|
|||||||
udp . 48425 : ${vars.extra.opnsense.addr4} . 48425,
|
udp . 48425 : ${vars.extra.opnsense.addr4} . 48425,
|
||||||
# Amnezia VPN server
|
# Amnezia VPN server
|
||||||
udp . 37138 : ${vars.extra.amnezia.addr4} . 37138,
|
udp . 37138 : ${vars.extra.amnezia.addr4} . 37138,
|
||||||
|
tcp . 38247 : ${vars.extra.amnezia.addr4} . 22,
|
||||||
# Minecruft server
|
# Minecruft server
|
||||||
tcp . 25565 : ${vars.extra.minecruft.addr4} . 25565,
|
tcp . 25565 : ${vars.extra.minecruft.addr4} . 25565,
|
||||||
udp . 25565 : ${vars.extra.minecruft.addr4} . 25565,
|
udp . 25565 : ${vars.extra.minecruft.addr4} . 25565,
|
||||||
|
|||||||
@@ -52,6 +52,9 @@ in
|
|||||||
# since my WAN and LAN20 are technically bridged.
|
# since my WAN and LAN20 are technically bridged.
|
||||||
# https://networkengineering.stackexchange.com/questions/83071/why-linux-answers-arp-requests-for-ips-that-belong-to-different-network-interfac
|
# https://networkengineering.stackexchange.com/questions/83071/why-linux-answers-arp-requests-for-ips-that-belong-to-different-network-interfac
|
||||||
boot.kernel.sysctl."net.ipv4.conf.default.arp_filter" = 1;
|
boot.kernel.sysctl."net.ipv4.conf.default.arp_filter" = 1;
|
||||||
|
# Later I discovered that rp_filter might also be good to set
|
||||||
|
# Strict mode (1) drops packets if the src ip isn't a local route on the interface
|
||||||
|
boot.kernel.sysctl."net.ipv4.conf.default.rp_filter" = 1;
|
||||||
|
|
||||||
# It is impossible to do multiple prefix requests with networkd,
|
# It is impossible to do multiple prefix requests with networkd,
|
||||||
# so I use dhcpcd for this
|
# so I use dhcpcd for this
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 D2MY/A txjDSEsRr2CJtC9rDIiY9H8aX0us53vhnqJStt+XvlA
|
||||||
|
vjmrx5ByEhbHE/hBEQq3gRqY8b5/mjHLs+He3D/27LM
|
||||||
|
--- rp66vDf9qnM7f9S5YD/X/99YsufPWmvz+V8z8htB2Ow
|
||||||
|
9‡Ài¨*¡-oš·}Ć(Š5[¬[ÕyKr)¾-cùäóŽù¼R0?Ë8`Èô×{
|
||||||
@@ -29,10 +29,12 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
# https://wiki.nixos.org/wiki/Grafana#Declarative_configuration
|
# https://wiki.nixos.org/wiki/Grafana#Declarative_configuration
|
||||||
|
secrix.services.grafana.secrets.security-key.encrypted.file = ./secrets/grafana-secret-key.age;
|
||||||
services.grafana = {
|
services.grafana = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
security.allow_embedding = true;
|
security.allow_embedding = true;
|
||||||
|
security.secret_key = "$__file{${config.secrix.services.grafana.secrets.security-key.decrypted.path}}";
|
||||||
server = {
|
server = {
|
||||||
http_port = 3001;
|
http_port = 3001;
|
||||||
domain = "grouter.${domain}";
|
domain = "grouter.${domain}";
|
||||||
@@ -57,8 +59,8 @@ in
|
|||||||
services.caddy = {
|
services.caddy = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.caddy.withPlugins {
|
package = pkgs.caddy.withPlugins {
|
||||||
plugins = [ "github.com/caddy-dns/cloudflare@v0.2.1" ];
|
plugins = [ "github.com/caddy-dns/cloudflare@v0.2.4" ];
|
||||||
hash = "sha256-Zls+5kWd/JSQsmZC4SRQ/WS+pUcRolNaaI7UQoPzJA0=";
|
hash = "sha256-xRJ5evsAJ2akg47j3Bt6YDXJOgX88B/rKNP50KSVyNY=";
|
||||||
};
|
};
|
||||||
virtualHosts."*.${domain}".extraConfig = ''
|
virtualHosts."*.${domain}".extraConfig = ''
|
||||||
encode
|
encode
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
imports = [
|
|
||||||
./flatpak.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
# https://github.com/knightpp/nixos-cfg/blob/main/modules/workarounds/flatpak.nix
|
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
cfg = config.workarounds.flatpak;
|
|
||||||
in {
|
|
||||||
options = {
|
|
||||||
workarounds.flatpak = {
|
|
||||||
enable = lib.mkEnableOption "flatpak workaround";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
|
||||||
system.fsPackages = [pkgs.bindfs];
|
|
||||||
fileSystems = let
|
|
||||||
mkRoSymBind = path: {
|
|
||||||
device = path;
|
|
||||||
fsType = "fuse.bindfs";
|
|
||||||
options = ["ro" "resolve-symlinks" "x-gvfs-hide"];
|
|
||||||
};
|
|
||||||
aggregated = pkgs.buildEnv {
|
|
||||||
name = "system-fonts-and-icons";
|
|
||||||
paths = builtins.attrValues {
|
|
||||||
inherit (pkgs.kdePackages) breeze;
|
|
||||||
inherit
|
|
||||||
(pkgs)
|
|
||||||
noto-fonts
|
|
||||||
noto-fonts-color-emoji
|
|
||||||
noto-fonts-cjk-sans
|
|
||||||
noto-fonts-cjk-serif
|
|
||||||
;
|
|
||||||
};
|
|
||||||
pathsToLink = ["/share/fonts" "/share/icons"];
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
# Create an FHS mount to support flatpak host icons/fonts
|
|
||||||
"/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons";
|
|
||||||
"/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user