Compare commits

...

5 commits

10 changed files with 332 additions and 36 deletions

View file

@ -77,6 +77,22 @@
"type": "github"
}
},
"flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
@ -99,6 +115,24 @@
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
@ -113,9 +147,45 @@
"type": "github"
}
},
"flake-utils_2": {
"flake-utils_3": {
"inputs": {
"systems": "systems_2"
"systems": "systems_3"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_4": {
"inputs": {
"systems": "systems_4"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_5": {
"inputs": {
"systems": "systems_5"
},
"locked": {
"lastModified": 1710146030,
@ -146,6 +216,49 @@
"type": "github"
}
},
"ghostty": {
"inputs": {
"nixpkgs-stable": "nixpkgs-stable",
"nixpkgs-unstable": "nixpkgs-unstable",
"zig": "zig",
"zls": "zls"
},
"locked": {
"lastModified": 1721693229,
"narHash": "sha256-LWd7CuQc/+vOYIOMVXicVrL6C09//uqeWsJHF8qPqnk=",
"ref": "refs/heads/main",
"rev": "2b73b3ab4f25613f94099840ebefe9b9d761e069",
"revCount": 6684,
"type": "git",
"url": "ssh://git@github.com/ghostty-org/ghostty"
},
"original": {
"type": "git",
"url": "ssh://git@github.com/ghostty-org/ghostty"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"ghostty",
"zls",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -182,6 +295,18 @@
"type": "github"
}
},
"langref": {
"flake": false,
"locked": {
"narHash": "sha256-O6p2tiKD8ZMhSX+DeA/o5hhAvcPkU2J9lFys/r11peY=",
"type": "file",
"url": "https://raw.githubusercontent.com/ziglang/zig/0fb2015fd3422fc1df364995f9782dfe7255eccd/doc/langref.html.in"
},
"original": {
"type": "file",
"url": "https://raw.githubusercontent.com/ziglang/zig/0fb2015fd3422fc1df364995f9782dfe7255eccd/doc/langref.html.in"
}
},
"lix": {
"flake": false,
"locked": {
@ -198,7 +323,7 @@
},
"lix-module": {
"inputs": {
"flake-utils": "flake-utils",
"flake-utils": "flake-utils_4",
"flakey-profile": "flakey-profile",
"lix": "lix",
"nixpkgs": [
@ -304,8 +429,8 @@
},
"nix-vscode-extensions": {
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils_2",
"flake-compat": "flake-compat_2",
"flake-utils": "flake-utils_5",
"nixpkgs": [
"nixpkgs"
]
@ -385,6 +510,22 @@
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1705957679,
"narHash": "sha256-Q8LJaVZGJ9wo33wBafvZSzapYsjOaNjP/pOnSiKVGHY=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "9a333eaa80901efe01df07eade2c16d183761fa3",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "release-23.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1721524707,
"narHash": "sha256-5NctRsoE54N86nWd0psae70YSLfrOek3Kv1e8KoXe/0=",
@ -401,6 +542,22 @@
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1719082008,
"narHash": "sha256-jHJSUH619zBQ6WdC21fFAlDxHErKVDJ5fpN0Hgx4sjs=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "9693852a2070b398ee123a329e68f0dab5526681",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-unstable_2": {
"locked": {
"lastModified": 1721562059,
"narHash": "sha256-Tybxt65eyOARf285hMHIJ2uul8SULjFZbT9ZaEeUnP8=",
@ -540,6 +697,7 @@
"root": {
"inputs": {
"disko": "disko",
"ghostty": "ghostty",
"home-manager": "home-manager",
"impermanence": "impermanence",
"lix-module": "lix-module",
@ -548,7 +706,7 @@
"nix-vscode-extensions": "nix-vscode-extensions",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
"nixpkgs-unstable": "nixpkgs-unstable_2",
"nixvirt-git": "nixvirt-git",
"nur": "nur",
"sops-nix": "sops-nix",
@ -600,7 +758,7 @@
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-stable": "nixpkgs-stable"
"nixpkgs-stable": "nixpkgs-stable_2"
},
"locked": {
"lastModified": 1721688883,
@ -646,6 +804,51 @@
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_4": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_5": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"talhelper": {
"inputs": {
"flake-parts": "flake-parts",
@ -688,6 +891,81 @@
"repo": "treefmt-nix",
"type": "github"
}
},
"zig": {
"inputs": {
"flake-compat": [
"ghostty"
],
"flake-utils": "flake-utils",
"nixpkgs": [
"ghostty",
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1717848532,
"narHash": "sha256-d+xIUvSTreHl8pAmU1fnmkfDTGQYCn2Rb/zOwByxS2M=",
"owner": "mitchellh",
"repo": "zig-overlay",
"rev": "02fc5cc555fc14fda40c42d7c3250efa43812b43",
"type": "github"
},
"original": {
"owner": "mitchellh",
"repo": "zig-overlay",
"type": "github"
}
},
"zig-overlay": {
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils_3",
"nixpkgs": [
"ghostty",
"zls",
"nixpkgs"
]
},
"locked": {
"lastModified": 1718539737,
"narHash": "sha256-hvQ900gSqzGnJWMRQwv65TixciIbC44iX0Nh5ENRwCU=",
"owner": "mitchellh",
"repo": "zig-overlay",
"rev": "6eb42ce6f85d247b1aecf854c45d80902821d0ad",
"type": "github"
},
"original": {
"owner": "mitchellh",
"repo": "zig-overlay",
"type": "github"
}
},
"zls": {
"inputs": {
"flake-utils": "flake-utils_2",
"gitignore": "gitignore",
"langref": "langref",
"nixpkgs": [
"ghostty",
"nixpkgs-stable"
],
"zig-overlay": "zig-overlay"
},
"locked": {
"lastModified": 1718930611,
"narHash": "sha256-FtfVhs6XHNfSQRQorrrz03nD0LCNp2FCnGllRntHBts=",
"owner": "zigtools",
"repo": "zls",
"rev": "0b9746b60c2020ab948f6556f1c729858b82a0f0",
"type": "github"
},
"original": {
"owner": "zigtools",
"ref": "master",
"repo": "zls",
"type": "github"
}
}
},
"root": "root",

View file

@ -78,10 +78,13 @@
inputs.nixpkgs.follows = "nixpkgs";
};
ghostty = {
url = "git+ssh://git@github.com/ghostty-org/ghostty";
};
};
outputs =
{ self, nixpkgs, sops-nix, home-manager, nix-vscode-extensions, impermanence, disko, talhelper, lix-module, ... } @ inputs:
{ self, nixpkgs, sops-nix, home-manager, nix-vscode-extensions, impermanence, disko, talhelper, lix-module, ghostty, ... } @ inputs:
let
forAllSystems = nixpkgs.lib.genAttrs [
"aarch64-linux"

View file

@ -30,7 +30,6 @@ with config;
discord
flameshot
vlc
warp-terminal
termius
obsidian
jetbrains.datagrip
@ -38,6 +37,7 @@ with config;
pika-backup
parsec-bin
unstable.nheko
unstable.telegram-desktop
# cli
brightnessctl

View file

@ -22,7 +22,7 @@ with lib.hm.gvariant; {
"org/gnome/shell" = {
disabled-extensions = [ "apps-menu@gnome-shell-extensions.gcampax.github.com" "light-style@gnome-shell-extensions.gcampax.github.com" "places-menu@gnome-shell-extensions.gcampax.github.com" "drive-menu@gnome-shell-extensions.gcampax.github.com" "window-list@gnome-shell-extensions.gcampax.github.com" "workspace-indicator@gnome-shell-extensions.gcampax.github.com" ];
enabled-extensions = [ "appindicatorsupport@rgcjonas.gmail.com" "caffeine@patapon.info" "dash-to-dock@micxgx.gmail.com" "gsconnect@andyholmes.github.io" "Vitals@CoreCoding.com" "sp-tray@sp-tray.esenliyim.github.com" ];
favorite-apps = [ "org.gnome.Nautilus.desktop" "vivaldi-stable.desktop" "termius-app.desktop" "dev.warp.Warp.desktop" "org.wezfurlong.wezterm.desktop" "obsidian.desktop" "org.gnome.Console.desktop" "code.desktop" "discord.desktop" ];
favorite-apps = [ "org.gnome.Nautilus.desktop" "vivaldi-stable.desktop" "termius-app.desktop" "com.mitchellh.ghostty.desktop" "org.wezfurlong.wezterm.desktop" "obsidian.desktop" "code.desktop" "discord.desktop" ];
};
"org/gnome/nautilus/preferences" = {
default-folder-viewer = "list-view";

View file

@ -2,7 +2,7 @@
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, modulesPath, inputs, ... }:
let
let
sanoidConfig = import ./config/sanoid.nix { };
in
{
@ -64,7 +64,7 @@ in
};
};
};
# System settings and services.
mySystem = {
purpose = "Production";
@ -79,6 +79,8 @@ in
samba.enable = true;
samba.shares = import ./config/samba-shares.nix { };
samba.extraConfig = import ./config/samba-config.nix { };
resticBackup.local.enable = false;
resticBackup.remote.enable = false;
};
services = {
@ -90,7 +92,7 @@ in
enable = true;
inherit (sanoidConfig.outputs) templates datasets;
};
# Unifi & Lego-Auto
unifi.enable = true;
lego-auto = {

View file

@ -66,6 +66,8 @@
mySystem = {
purpose = "Production";
system.motd.networkInterfaces = [ "enp2s0" "wlp3s0" ];
system.resticBackup.local.enable = false;
system.resticBackup.remote.enable = false;
services = {
podman.enable = true;

View file

@ -12,30 +12,38 @@ in
(vscode-with-extensions.override {
vscode = unstable.vscode;
vscodeExtensions = with vscode-extensions;
vscodeExtensions =
[
dracula-theme.theme-dracula
yzhang.markdown-all-in-one
signageos.signageos-vscode-sops
redhat.ansible
ms-azuretools.vscode-docker
mikestead.dotenv
tamasfe.even-better-toml
pkief.material-icon-theme
jnoortheen.nix-ide
ms-vscode-remote.remote-ssh
ms-vscode-remote.remote-ssh-edit
# ms-vscode.remote-explorer
redhat.vscode-yaml
# continue.continue
ms-python.python
ms-python.vscode-pylance
vscode-extensions.dracula-theme.theme-dracula
vscode-extensions.yzhang.markdown-all-in-one
vscode-extensions.signageos.signageos-vscode-sops
vscode-extensions.redhat.ansible
vscode-extensions.ms-azuretools.vscode-docker
vscode-extensions.mikestead.dotenv
vscode-extensions.tamasfe.even-better-toml
vscode-extensions.pkief.material-icon-theme
vscode-extensions.jnoortheen.nix-ide
vscode-extensions.ms-vscode-remote.remote-ssh
vscode-extensions.ms-vscode-remote.remote-ssh-edit
vscode-extensions.redhat.vscode-yaml
# vscode-marketplace.continue.continue
# vscode-marketplace.github.copilot
# vscode-marketplace.github.copilot-chat
vscode-extensions.continue.continue
vscode-extensions.ms-python.python
vscode-extensions.ms-python.vscode-pylance
] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
{
name = "cody-ai";
publisher = "sourcegraph";
version = "1.27.1721673993";
sha256 = "ULY2f7Pv1GCkJwqSc6q2cGYvkrKTKyfQ0ErPiQ+/bLQ=";
name = "copilot";
publisher = "github";
version = "1.219.0";
sha256 = "Y/l59JsmAKtENhBBf965brSwSkTjSOEuxc3tlWI88sY=";
}
{
name = "copilot-chat";
publisher = "github";
version = "0.17.1";
sha256 = "sha256-Aa4gmHJCveP18v6CAvmkxmqf1JV1LygyQFNpzDz64Gw=";
}
];
})

View file

@ -34,8 +34,8 @@ in
# Warn if backups are disable and machine isnt a dev box
warnings = [
(mkIf (!cfg.local.enable && config.mySystem.purpose != "Development") "WARNING: Local backups are disabled!")
(mkIf (!cfg.remote.enable && config.mySystem.purpose != "Development") "WARNING: Remote backups are disabled!")
(mkIf (!cfg.local.enable && config.mySystem.purpose != "Development") "WARNING: Local backups are disabled for ${config.system.name}!")
(mkIf (!cfg.remote.enable && config.mySystem.purpose != "Development") "WARNING: Remote backups are disabled for ${config.system.name}!")
];
sops.secrets = mkIf (cfg.local.enable || cfg.remote.enable) {

View file

@ -27,4 +27,7 @@ in
config.allowUnfree = true;
};
};
# VSCode Community Packages
comm-packages = inputs.nix-vscode-extensions.overlays.default;
}