Compare commits

...
Sign in to create a new pull request.

15 commits
gnome ... main

Author SHA1 Message Date
8842853c43 bump lock 2025-04-19 21:12:51 +02:00
5af00566a0 bump lock 2025-04-09 10:49:26 +02:00
08a9b8e488 add mu4e 2025-04-09 10:49:19 +02:00
9cf9811bc2 cleanup 2025-04-09 10:49:11 +02:00
8d483bdd1d enable ddcutil brigtness control 2025-04-01 18:16:36 +02:00
eb4c98a5c8 cleanup and reformat 2025-04-01 11:56:56 +02:00
1e29764aee emacs 2025-04-01 00:54:23 +02:00
10c4152f54 cleanup 2025-03-31 09:51:55 +02:00
28d19492a4 bump lock 2025-03-31 09:36:34 +02:00
1e70628165 toaster back to zsh 2025-03-31 09:34:56 +02:00
8ac8d5de44 bump lock 2025-03-24 18:02:16 +01:00
747ec4beed bump lock 2025-03-23 15:18:01 +01:00
c6a6203423 software changes 2025-03-23 15:17:53 +01:00
0598c3f08d gnome 2025-03-23 02:54:53 +01:00
853e0809cc bump lock 2025-03-22 15:46:55 +01:00
9 changed files with 177 additions and 242 deletions

211
flake.lock generated
View file

@ -14,11 +14,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1742246110,
"narHash": "sha256-bjJDxW3Z3clNIkgwEktWhFSpU9UyftisDfK3XYzdRps=",
"lastModified": 1744375272,
"narHash": "sha256-xvWbdTctLu5YWgcp+lNTh51GAY3vB2XEXUFKRMJUiCM=",
"owner": "nix-community",
"repo": "authentik-nix",
"rev": "04f5e14643b8b37304966767074fbe0efcadab9f",
"rev": "105b3b6c004ce00d1d3c7a88669bea4aadfd4580",
"type": "github"
},
"original": {
@ -30,16 +30,16 @@
"authentik-src": {
"flake": false,
"locked": {
"lastModified": 1742236492,
"narHash": "sha256-Uz7qldS44pxduLcYKf+cCq4WvjoslDR4PwRqivY/4uI=",
"lastModified": 1744135136,
"narHash": "sha256-7wvoCRhLipX4qzrb/ctsozG565yckx+moxiF6vRo84I=",
"owner": "goauthentik",
"repo": "authentik",
"rev": "3adf79c4939276e108c25c719843b6174e9e22fd",
"rev": "74eab55c615b156e4191ee98dc789e2d58c016f9",
"type": "github"
},
"original": {
"owner": "goauthentik",
"ref": "version/2025.2.2",
"ref": "version/2025.2.4",
"repo": "authentik",
"type": "github"
}
@ -96,11 +96,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1738453229,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
"lastModified": 1743550720,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
"rev": "c621e8422220273271f52058f618c94e405bb0f5",
"type": "github"
},
"original": {
@ -224,26 +224,6 @@
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs-unstable"
]
},
"locked": {
"lastModified": 1742326330,
"narHash": "sha256-Tumt3tcMXJniSh7tw2gW+WAnVLeB3WWm+E+yYFnLBXo=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "22a36aa709de7dd42b562a433b9cefecf104a6ee",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"lanzaboote": {
"inputs": {
"crane": "crane",
@ -273,11 +253,11 @@
"lix": {
"flake": false,
"locked": {
"lastModified": 1742328220,
"narHash": "sha256-oRRKctwO4s4auyXPQkf8OM94Kuvh678ZL+HGFKnDKuQ=",
"rev": "3fcf823a86ab9e5bf4ccc9a3cca960c1f9137e6a",
"lastModified": 1744302352,
"narHash": "sha256-QJQecf/Z1rLZBpVoQaI+EunLX5U7c7uYGER5iw00YrI=",
"rev": "81d476984901d1f00fdcac36a0a8f06cb54048f6",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/3fcf823a86ab9e5bf4ccc9a3cca960c1f9137e6a.tar.gz?rev=3fcf823a86ab9e5bf4ccc9a3cca960c1f9137e6a"
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/81d476984901d1f00fdcac36a0a8f06cb54048f6.tar.gz?rev=81d476984901d1f00fdcac36a0a8f06cb54048f6"
},
"original": {
"type": "tarball",
@ -296,11 +276,11 @@
]
},
"locked": {
"lastModified": 1741894565,
"narHash": "sha256-2FD0NDJbEjUHloVrtEIms5miJsj1tvQCc/0YK5ambyc=",
"rev": "a6da43f8193d9e329bba1795c42590c27966082e",
"lastModified": 1742945498,
"narHash": "sha256-MB/b/xcDKqaVBxJIIxwb81r8ZiGLeKEcqokATRRroo8=",
"rev": "fa69ae26cc32dda178117b46487c2165c0e08316",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/a6da43f8193d9e329bba1795c42590c27966082e.tar.gz?rev=a6da43f8193d9e329bba1795c42590c27966082e"
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/fa69ae26cc32dda178117b46487c2165c0e08316.tar.gz?rev=fa69ae26cc32dda178117b46487c2165c0e08316"
},
"original": {
"type": "tarball",
@ -358,65 +338,6 @@
"type": "github"
}
},
"niri": {
"inputs": {
"niri-stable": "niri-stable",
"niri-unstable": "niri-unstable",
"nixpkgs": [
"nixpkgs-unstable"
],
"nixpkgs-stable": "nixpkgs-stable_2",
"xwayland-satellite-stable": "xwayland-satellite-stable",
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1742355568,
"narHash": "sha256-cHW060+beSciKdCK4SZ9vYPOFy/otAq+t9MiO54zKYY=",
"owner": "sodiboo",
"repo": "niri-flake",
"rev": "10b56ff2ecc915ec26505526125b4f3a3006d5b3",
"type": "github"
},
"original": {
"owner": "sodiboo",
"ref": "main",
"repo": "niri-flake",
"type": "github"
}
},
"niri-stable": {
"flake": false,
"locked": {
"lastModified": 1740117926,
"narHash": "sha256-mTTHA0RAaQcdYe+9A3Jx77cmmyLFHmRoZdd8RpWa+m8=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "b94a5db8790339cf9134873d8b490be69e02ac71",
"type": "github"
},
"original": {
"owner": "YaLTeR",
"ref": "v25.02",
"repo": "niri",
"type": "github"
}
},
"niri-unstable": {
"flake": false,
"locked": {
"lastModified": 1742276600,
"narHash": "sha256-muceB5DW++WPqrGKpX3Hkii/DNSMmFs2oQrYRYHmPiU=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "e251ca7340bc71870c3a81a7ffc3d9bde58e685a",
"type": "github"
},
"original": {
"owner": "YaLTeR",
"repo": "niri",
"type": "github"
}
},
"nix-github-actions": {
"inputs": {
"nixpkgs": [
@ -441,11 +362,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1742376361,
"narHash": "sha256-VFMgJkp/COvkt5dnkZB4D2szVdmF6DGm5ZdVvTUy61c=",
"lastModified": 1744633460,
"narHash": "sha256-fbWE4Xpw6eH0Q6in+ymNuDwTkqmFmtxcQEmtRuKDTTk=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "daaae13dff0ecc692509a1332ff9003d9952d7a9",
"rev": "9a049b4a421076d27fee3eec664a18b2066824cb",
"type": "github"
},
"original": {
@ -457,11 +378,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1742268799,
"narHash": "sha256-IhnK4LhkBlf14/F8THvUy3xi/TxSQkp9hikfDZRD4Ic=",
"lastModified": 1744440957,
"narHash": "sha256-FHlSkNqFmPxPJvy+6fNLaNeWnF1lZSgqVCl/eWaJRc4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "da044451c6a70518db5b730fe277b70f494188f1",
"rev": "26d499fc9f1d567283d5d56fcf367edd815dba1d",
"type": "github"
},
"original": {
@ -473,14 +394,17 @@
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1738452942,
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
"lastModified": 1743296961,
"narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa",
"type": "github"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-stable": {
@ -499,29 +423,13 @@
"type": "github"
}
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1742268799,
"narHash": "sha256-IhnK4LhkBlf14/F8THvUy3xi/TxSQkp9hikfDZRD4Ic=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "da044451c6a70518db5b730fe277b70f494188f1",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1742288794,
"narHash": "sha256-Txwa5uO+qpQXrNG4eumPSD+hHzzYi/CdaM80M9XRLCo=",
"lastModified": 1744932701,
"narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b6eaf97c6960d97350c584de1b6dcff03c9daf42",
"rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef",
"type": "github"
},
"original": {
@ -549,11 +457,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1739883580,
"narHash": "sha256-3ydikhrNaWy8j0cqHju/94PcD4GZ9T4Ju4rHh34oz3k=",
"lastModified": 1743690424,
"narHash": "sha256-cX98bUuKuihOaRp8dNV1Mq7u6/CQZWTPth2IJPATBXc=",
"owner": "nix-community",
"repo": "poetry2nix",
"rev": "d90f9db68a4bda31c346be16dfd8d3263be4547e",
"rev": "ce2369db77f45688172384bbeb962bc6c2ea6f94",
"type": "github"
},
"original": {
@ -593,12 +501,10 @@
"inputs": {
"authentik-nix": "authentik-nix",
"flake-utils": "flake-utils_2",
"home-manager": "home-manager",
"lanzaboote": "lanzaboote",
"lix": "lix",
"lix-module": "lix-module",
"microvm": "microvm",
"niri": "niri",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
@ -635,11 +541,11 @@
]
},
"locked": {
"lastModified": 1742239755,
"narHash": "sha256-ptn8dR4Uat3UUadGYNnB7CIH9SQm8mK69D2A/twBUXQ=",
"lastModified": 1744669848,
"narHash": "sha256-pXyanHLUzLNd3MX9vsWG+6Z2hTU8niyphWstYEP3/GU=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "787afce414bcce803b605c510b60bf43c11f4b55",
"rev": "61154300d945f0b147b30d24ddcafa159148026a",
"type": "github"
},
"original": {
@ -770,39 +676,6 @@
"type": "git",
"url": "https://git.oxapentane.com/0xa/website.git"
}
},
"xwayland-satellite-stable": {
"flake": false,
"locked": {
"lastModified": 1739246919,
"narHash": "sha256-/hBM43/Gd0/tW+egrhlWgOIISeJxEs2uAOIYVpfDKeU=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "44590a416d4a3e8220e19e29e0b6efe64a80315d",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"ref": "v0.5.1",
"repo": "xwayland-satellite",
"type": "github"
}
},
"xwayland-satellite-unstable": {
"flake": false,
"locked": {
"lastModified": 1742249030,
"narHash": "sha256-YZ+axsuNsgIKWfnRkt6Qa9UoKfUOIWf42vNUonXxmxM=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "cca74a5f6b23742d77dc5db4312dfc40fd4a0fcc",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"type": "github"
}
}
},
"root": "root",

View file

@ -47,16 +47,6 @@
inputs.flake-utils.follows = "flake-utils";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
niri = {
url = "github:sodiboo/niri-flake/main";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
tmux-yank = {
url = "github:tmux-plugins/tmux-yank";
flake = false;
@ -66,11 +56,9 @@
outputs =
inputs@{
authentik-nix,
home-manager,
lanzaboote,
lix-module,
microvm,
niri,
nixos-hardware,
nixpkgs,
nixpkgs-unstable,
@ -118,26 +106,19 @@
lanzaboote.nixosModules.lanzaboote
nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen3
lix-module.nixosModules.default
home-manager.nixosModules.home-manager
niri.nixosModules.niri
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users."0xa" = import ./hosts/toaster/0xa-home.nix;
}
./hosts/toaster
./modules/basic-tools
./modules/binary-caches.nix
./modules/devtools.nix
./modules/niri.nix
./modules/gnome.nix
./modules/gnupg.nix
./modules/radio.nix
./modules/science.nix
./modules/tlp.nix
./modules/virtualization.nix
./hosts/toaster/secure-boot.nix
./modules/emacs.nix
./modules/mail
./modules/wg
];

View file

@ -46,6 +46,11 @@
supportedLocales = [ "all" ];
};
# support ddc brigtness control
hardware.i2c.enable = true;
boot.kernelModules = [ "i2c-dev" ];
environment.systemPackages = [ pkgs.ddcutil ];
users.users."0xa" = {
extraGroups = [
"wheel"
@ -55,6 +60,7 @@
"bluetooth"
"libvirtd"
"qemu-libvirtd"
"i2c"
];
group = "users";
home = "/home/0xa";
@ -63,8 +69,6 @@
shell = pkgs.fish;
};
services.emacs.defaultEditor = false;
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave

View file

@ -1,4 +1,4 @@
{ lib, pkgs, ... }:
{ lib, config, ... }:
{
imports = [
./mullvad.nix
@ -6,21 +6,26 @@
./zw.nix
];
environment.systemPackages = with pkgs; [
iwgtk
impala
];
# Networkmanager shouldn't interfere with systemd managed interfaces
networking.networkmanager.unmanaged =
let
systemd_netdevs = lib.attrsets.attrValues (
lib.attrsets.mapAttrs (_name: value: value.netdevConfig.Name) config.systemd.network.netdevs
);
in
systemd_netdevs;
# kick out networkmanager
networking.networkmanager.enable = lib.mkForce false;
networking.useNetworkd = true;
systemd.network.enable = true;
systemd.network = {
enable = true;
wait-online.enable = false; # uplink is managed by networkmanager
};
users.users."0xa".extraGroups = [ "networkmanager" ];
networking = {
hostName = "toaster";
firewall.enable = true;
wireguard.enable = true;
wireless.iwd.enable = true;
};
services.resolved = {
@ -34,38 +39,4 @@
];
};
# we might have no interwebs at all
systemd.network.wait-online.enable = false;
# uplinks
systemd.network.networks = {
"10-ether-uplink" = {
matchConfig.Name = "enp1s0f0";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = true;
};
};
"10-dock-uplink" = {
matchConfig.Name = "enp5s0f4u1u1";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = true;
};
dhcpV4Config = {
RouteMetric = 666;
};
dhcpV6Config = {
RouteMetric = 666;
};
};
"wlan-uplink" = {
matchConfig.Name = "wlan0";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = true;
};
};
};
}

View file

@ -0,0 +1,71 @@
{ lib, pkgs, ... }:
{
imports = [
./mullvad.nix
./dumpdvb.nix
./zw.nix
];
environment.systemPackages = with pkgs; [
iwgtk
impala
];
# kick out networkmanager
networking.networkmanager.enable = lib.mkForce false;
networking.useNetworkd = true;
systemd.network.enable = true;
networking = {
hostName = "toaster";
firewall.enable = true;
wireguard.enable = true;
wireless.iwd.enable = true;
};
services.resolved = {
enable = true;
dnssec = "false";
fallbackDns = [
"9.9.9.9"
"2620:fe::fe"
"149.112.112.112"
"2620:fe::9"
];
};
# we might have no interwebs at all
systemd.network.wait-online.enable = false;
# uplinks
systemd.network.networks = {
"10-ether-uplink" = {
matchConfig.Name = "enp1s0f0";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = true;
};
};
"10-dock-uplink" = {
matchConfig.Name = "enp5s0f4u1u1";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = true;
};
dhcpV4Config = {
RouteMetric = 666;
};
dhcpV6Config = {
RouteMetric = 666;
};
};
"wlan-uplink" = {
matchConfig.Name = "wlan0";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = true;
};
};
};
}

View file

@ -4,6 +4,7 @@
./chromium.nix
];
environment.systemPackages = with pkgs; [
audacity
blender
dino
ffmpeg-full

37
modules/emacs.nix Normal file
View file

@ -0,0 +1,37 @@
{
pkgs,
lib,
...
}:
{
environment.systemPackages = with pkgs; [
direnv
mu
];
services.emacs = {
install = true;
enable = false;
package =
with pkgs;
(
(emacsPackagesFor (
emacs-pgtk.overrideAttrs (old: {
passthru = old.passthru // {
treeSitter = true;
};
})
)).emacsWithPackages
(
epkgs: with epkgs; [
treesit-grammars.with-all-grammars
vterm
pdf-tools
mu4e
]
)
);
defaultEditor = lib.mkDefault true;
};
}

View file

@ -1,6 +1,7 @@
{ pkgs, ... }:
{
fonts.packages = with pkgs; [
adwaita-fonts
monoid
font-awesome
dejavu_fonts

View file

@ -8,12 +8,14 @@
environment.systemPackages = with pkgs; [
amberol
celluloid
ddcutil
gnome-console
gnome-obfuscate
gnome-boxes
gnome-tweaks
qbittorrent
gnomeExtensions.caffeine
gnomeExtensions.brightness-control-using-ddcutil
spotify
ghostty
fractal
@ -40,12 +42,6 @@
};
};
qt = {
enable = true;
platformTheme = "gnome";
style = "adwaita-dark";
};
services.xserver = {
enable = true;
desktopManager.gnome.enable = true;