From 7b9a5eb561948521ac4669074cc746a0f848ed23 Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Thu, 8 Jan 2026 22:33:36 -0600 Subject: headscale --- hosts/ganymede/caddy.nix | 20 +++++++++----------- hosts/ganymede/config.nix | 23 +++++++++++++++++++---- 2 files changed, 28 insertions(+), 15 deletions(-) (limited to 'hosts') diff --git a/hosts/ganymede/caddy.nix b/hosts/ganymede/caddy.nix index b073f9a..e6f18ab 100644 --- a/hosts/ganymede/caddy.nix +++ b/hosts/ganymede/caddy.nix @@ -12,24 +12,22 @@ hash = "sha256-BQdm8p9eDGhRu6mKyX2FAUaKoU6Lv2A746Sey39T13I="; }); - extraConfig = '' - { - acme_dns porkbun { - api_key {env.PORKBUN_API_KEY} - api_secret_key {env.PORKBUN_API_SECRET_KEY} - } + globalConfig = '' + acme_dns porkbun { + api_key {env.PORKBUN_API_KEY} + api_secret_key {env.PORKBUN_API_SECRET_KEY} } ''; virtualHosts."https://web.tail7cca06.ts.net".extraConfig = '' bind tailscale/web - root * /var/www/williams_web + root * /var/www file_server + ''; - handle_path /papa_stories/* { - root * /var/www/papa_stories - file_server - } + virtualHosts."https://williamsfam.us.com".extraConfig = '' + root * /var/www + file_server ''; }; } diff --git a/hosts/ganymede/config.nix b/hosts/ganymede/config.nix index 50ef29a..c2b312f 100644 --- a/hosts/ganymede/config.nix +++ b/hosts/ganymede/config.nix @@ -1,4 +1,6 @@ -{config, ...}: { +{config, ...}: let + tailscaleIP = "100.69.180.89"; +in { collinux = { user.name = "collin"; @@ -32,12 +34,25 @@ }; }; tailscale.enable = true; - sshd.enable = true; + sshd = { + enable = true; + bind_host = tailscaleIP; + }; }; selfhost = { - adguard.enable = true; - forgejo.enable = true; + adguard = { + enable = true; + bind_host = tailscaleIP; + }; + forgejo = { + enable = true; + bind_host = tailscaleIP; + }; + headscale = { + enable = true; + root_url = "https://headscale.williamsfam.us.com"; + }; caddy = { enable = true; envFile = config.collinux.secrets."caddy-env".path; -- cgit v1.3.1 From 547d6dc4731b04a240048b0b95c0ea12e0d1f6bd Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Fri, 9 Jan 2026 20:36:36 -0600 Subject: lots of changes, including revamp of network services boot chain on mercury --- flake.lock | 57 +++++++++++++++++++++++++- flake.nix | 5 +++ hosts/ganymede/caddy-env.age | 11 ++--- hosts/ganymede/caddy.nix | 6 --- hosts/ganymede/config.nix | 18 +++++--- hosts/ganymede/minecraft.nix | 10 ++--- hosts/ganymede/nixos.nix | 28 ++++++++++++- hosts/ganymede/tsnsrv-authkey.age | 7 ++++ hosts/mercury/hjem.nix | 1 + modules/services/nixos/bluetooth.nix | 12 ++++++ modules/services/nixos/networking/default.nix | 3 +- modules/services/nixos/networking/networkd.nix | 6 +++ modules/services/nixos/selfhost/adguard.nix | 3 +- modules/services/nixos/selfhost/forgejo.nix | 7 +++- modules/services/nixos/selfhost/headscale.nix | 25 ++++++++--- modules/services/nixos/ssh.nix | 14 +++++++ modules/services/nixos/tailscale.nix | 6 +++ modules/services/options.nix | 4 +- secrets.nix | 1 + 19 files changed, 188 insertions(+), 36 deletions(-) create mode 100644 hosts/ganymede/tsnsrv-authkey.age (limited to 'hosts') diff --git a/flake.lock b/flake.lock index 63739b2..b4d9b39 100644 --- a/flake.lock +++ b/flake.lock @@ -150,6 +150,24 @@ "type": "github" } }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1765835352, + "narHash": "sha256-XswHlK/Qtjasvhd1nOa1e8MgZ8GS//jBoTqWtrS1Giw=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "a34fae9c08a15ad73f295041fec82323541400a9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -283,6 +301,21 @@ "type": "github" } }, + "nixpkgs-lib": { + "locked": { + "lastModified": 1765674936, + "narHash": "sha256-k00uTP4JNfmejrCLJOwdObYC9jHRrr/5M/a/8L2EIdo=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "2075416fcb47225d9b68ac469a5c4801a9c4dd85", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" + } + }, "pre-commit": { "inputs": { "flake-compat": "flake-compat_2", @@ -316,7 +349,8 @@ "lanzaboote": "lanzaboote", "nixos-facter-modules": "nixos-facter-modules", "nixpkgs": "nixpkgs", - "tmux-tsunami": "tmux-tsunami" + "tmux-tsunami": "tmux-tsunami", + "tsnsrv": "tsnsrv" } }, "rust-overlay": { @@ -451,6 +485,27 @@ "type": "github" } }, + "tsnsrv": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1767001347, + "narHash": "sha256-uRm4oWMFUBSmXgofOngMWIyA/yUmLlon6f3XoFTWvBA=", + "owner": "boinkor-net", + "repo": "tsnsrv", + "rev": "8f3fbf69e1517612c0fde9be27522e12c2ddc238", + "type": "github" + }, + "original": { + "owner": "boinkor-net", + "repo": "tsnsrv", + "type": "github" + } + }, "utils": { "inputs": { "systems": "systems_2" diff --git a/flake.nix b/flake.nix index 6958a06..6f71eb4 100644 --- a/flake.nix +++ b/flake.nix @@ -37,6 +37,11 @@ url = "github:MrOtherGuy/firefox-csshacks"; flake = false; }; + + tsnsrv = { + url = "github:boinkor-net/tsnsrv"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = inputs: let diff --git a/hosts/ganymede/caddy-env.age b/hosts/ganymede/caddy-env.age index 79d7b91..ecfc05a 100644 --- a/hosts/ganymede/caddy-env.age +++ b/hosts/ganymede/caddy-env.age @@ -1,6 +1,7 @@ age-encryption.org/v1 --> ssh-ed25519 Jg4yWQ cVxgS8Sy6bB9lQVeDBQVhmCaD437YxPAZduSzFA6WHE -KV9ZrAEH3z8cT0IeaIfkqMYhU/4LS2St0ySK030Ie1c ---- pUeKTMwZf3FARqVLl9TARgItjcr1O82hUKaZ9YtjFRM -a_v1BRgʫ*+r֘0}ܨd`˟ϞJ<3hi1|Gjl3!7r 3Xp=d`71ݻѲhFW5/2̞?[HZ - Sd:FCGq%-#W~Wz_XF)ZS~MhCF!C)N*ٟ -R \ No newline at end of file +-> ssh-ed25519 Jg4yWQ t4jtOOcuC4v735Yi4FzdDnvjQFNYVgzMluuH7H3oxx4 +qLKbZ3wA3kk7UXqwUJN2HH+6Wr3qgzINNwLx+dbgsIg +--- im4dvpbhdvB7fwa8QJ7clFZ+5aVIaXld/gPlhUalc14 +>u4BECQD:3kkKļc}}}mK)HM3v}ܣI9Ikxr1s?"8Д>J{uafϚ}.3Oa9m2- @C0b X|]:9`WX1ba|W2=l]Cw U&~"0 ! +6 +MFίp D˅+q `-R6/L 4 \ No newline at end of file diff --git a/hosts/ganymede/caddy.nix b/hosts/ganymede/caddy.nix index e6f18ab..6ad32cf 100644 --- a/hosts/ganymede/caddy.nix +++ b/hosts/ganymede/caddy.nix @@ -19,12 +19,6 @@ } ''; - virtualHosts."https://web.tail7cca06.ts.net".extraConfig = '' - bind tailscale/web - root * /var/www - file_server - ''; - virtualHosts."https://williamsfam.us.com".extraConfig = '' root * /var/www file_server diff --git a/hosts/ganymede/config.nix b/hosts/ganymede/config.nix index c2b312f..3adf620 100644 --- a/hosts/ganymede/config.nix +++ b/hosts/ganymede/config.nix @@ -1,5 +1,5 @@ {config, ...}: let - tailscaleIP = "100.69.180.89"; + tailscaleIP = "100.100.218.182"; in { collinux = { user.name = "collin"; @@ -7,6 +7,7 @@ in { secrets = { "williams-psk".file = ./williams-psk.age; "caddy-env".file = ./caddy-env.age; + "tsnsrv-authkey".file = ./tsnsrv-authkey.age; }; terminal = { @@ -33,7 +34,10 @@ in { gateway = "192.168.50.1"; }; }; - tailscale.enable = true; + tailscale = { + enable = true; + tailnet = "collinux.tailnet"; + }; sshd = { enable = true; bind_host = tailscaleIP; @@ -41,10 +45,12 @@ in { }; selfhost = { - adguard = { - enable = true; - bind_host = tailscaleIP; - }; + magic_caddy.enable = false; + + # adguard = { + # enable = true; + # bind_host = tailscaleIP; + # }; forgejo = { enable = true; bind_host = tailscaleIP; diff --git a/hosts/ganymede/minecraft.nix b/hosts/ganymede/minecraft.nix index cff5de2..c244868 100644 --- a/hosts/ganymede/minecraft.nix +++ b/hosts/ganymede/minecraft.nix @@ -1,6 +1,6 @@ {config, ...}: { networking.firewall.allowedUDPPorts = [19132]; - virtualisation.oci-containers.backend = "podman"; + virtualisation.oci-containers.backend = "docker"; virtualisation.oci-containers.containers."Minecraft" = { environment = { @@ -9,16 +9,14 @@ SERVER_NAME = "YServer"; TZ = config.time.timeZone; - VERSION = "1.21.81.2"; - CONTENT_LOG_FILE_ENABLED = "true"; + VERSION = "1.21.131.1"; + CONTENT_LOG_FILE_ENABLED = "false"; ALLOW_CHEATS = "false"; DIFFICULTY = "1"; }; image = "itzg/minecraft-bedrock-server"; ports = ["0.0.0.0:19132:19132/udp"]; - volumes = ["/srv/minecraft/:/data"]; - - podman.sdnotify = "conmon"; # avoid nasty errors about healthcheck (idk, the service runs fine) + volumes = ["/var/lib/minecraft/:/data"]; }; } diff --git a/hosts/ganymede/nixos.nix b/hosts/ganymede/nixos.nix index 863032f..ce30973 100644 --- a/hosts/ganymede/nixos.nix +++ b/hosts/ganymede/nixos.nix @@ -1,8 +1,16 @@ -{inputs, ...}: { +{ + config, + lib, + inputs, + ... +}: { imports = [ inputs.disko.nixosModules.disko + inputs.tsnsrv.nixosModules.default ./disks.nix + ./minecraft.nix + ./iwlwifi.nix ./caddy.nix ]; @@ -15,6 +23,24 @@ networkConfig.DHCP = "yes"; }; + services.openssh.settings.PasswordAuthentication = lib.mkForce true; + + # services.tsnsrv = { + # enable = true; + # defaults = { + # authKeyPath = config.collinux.secrets."tsnsrv-authkey".path; + # ephemeral = true; + # loginServerUrl = "https://williamsfam.us.com"; + # }; + + # services = { + # "adguard" = { + # listenAddr = ":80"; + # toURL = "http://localhost:8001"; + # }; + # }; + # }; + nixpkgs.hostPlatform = "x86_64-linux"; system.stateVersion = "25.05"; } diff --git a/hosts/ganymede/tsnsrv-authkey.age b/hosts/ganymede/tsnsrv-authkey.age new file mode 100644 index 0000000..d0e6eb1 --- /dev/null +++ b/hosts/ganymede/tsnsrv-authkey.age @@ -0,0 +1,7 @@ +age-encryption.org/v1 +-> ssh-ed25519 Jg4yWQ NYO6CUksU6appmdib7CER3YYbcKoyn0wmB4YGTCeTE0 +tizx14UdvQftYrkDa3iXQYDp6JPWHfjDmFwjr11FBxQ +-> ssh-ed25519 azBilg 3PYXHVdB2y2Y42ijOiv8LJ9c4WmeB5ivEPcehfS3Wns +tP/xCHzd31DydF5aCn1tJGudanXLl+DIPod7KFtglXQ +--- nbch7DRt1CYKBqzE9CeUIJgTMKIUCEA/CXVQZjkywfI +~}H <42)U{QK3%G^FW3GJy 1 \ No newline at end of file diff --git a/hosts/mercury/hjem.nix b/hosts/mercury/hjem.nix index 1db654f..6eba4c9 100644 --- a/hosts/mercury/hjem.nix +++ b/hosts/mercury/hjem.nix @@ -6,6 +6,7 @@ kdePackages.kleopatra mpv musescore + zed-editor # experimenting kew # music player prismlauncher diff --git a/modules/services/nixos/bluetooth.nix b/modules/services/nixos/bluetooth.nix index a86b5b3..bdcaa00 100644 --- a/modules/services/nixos/bluetooth.nix +++ b/modules/services/nixos/bluetooth.nix @@ -12,6 +12,18 @@ in powerOnBoot = true; }; + # hardening (down to 2.1 OK) + systemd.services."bluetooth".serviceConfig = { + IPAddressDeny = "any"; + ProtectHostname = true; + ProtectKernelTunables = lib.mkForce true; + ProtectKernelLogs = true; + ProtectKernelModules = lib.mkForce true; + RestrictAddressFamilies = ["AF_UNIX" "AF_BLUETOOTH"]; + ProtectClock = true; + ProcSubset = "pid"; + }; + environment.systemPackages = [ (lib.mkIf cfg.blueman.enable pkgs.blueman) (lib.mkIf cfg.bluetuith.enable pkgs.bluetuith) diff --git a/modules/services/nixos/networking/default.nix b/modules/services/nixos/networking/default.nix index 2667849..62b9146 100644 --- a/modules/services/nixos/networking/default.nix +++ b/modules/services/nixos/networking/default.nix @@ -11,6 +11,7 @@ services.resolved = { enable = true; dnsovertls = "opportunistic"; + dnssec = "allow-downgrade"; fallbackDns = [ "9.9.9.9#dns.quad9.net" "149.112.112.112#dns.quad9.net" @@ -21,6 +22,4 @@ extraConfig = "MulticastDNS=no"; }; networking.resolvconf.enable = false; - - systemd.network.wait-online.enable = false; } diff --git a/modules/services/nixos/networking/networkd.nix b/modules/services/nixos/networking/networkd.nix index 9a11129..470bcec 100644 --- a/modules/services/nixos/networking/networkd.nix +++ b/modules/services/nixos/networking/networkd.nix @@ -25,6 +25,12 @@ in systemd.network = { enable = true; + + wait-online = { + enable = true; + ignoredInterfaces = ["docker0"]; + }; + networks."11-static-lan" = { name = "wl*"; diff --git a/modules/services/nixos/selfhost/adguard.nix b/modules/services/nixos/selfhost/adguard.nix index c5e93ee..73c6caf 100644 --- a/modules/services/nixos/selfhost/adguard.nix +++ b/modules/services/nixos/selfhost/adguard.nix @@ -32,7 +32,8 @@ in DNSStubListener=no ''; - services.caddy = lib.mkIf config.collinux.services.selfhost.caddy.enable { + services.caddy = lib.mkIf (config.collinux.services.selfhost.caddy.enable + && config.collinux.services.selfhost.magic_caddy.enable) { virtualHosts.${cfg.root_url}.extraConfig = '' ${ if config.collinux.services.networking.tailscale.enable diff --git a/modules/services/nixos/selfhost/forgejo.nix b/modules/services/nixos/selfhost/forgejo.nix index b1a6095..e499e64 100644 --- a/modules/services/nixos/selfhost/forgejo.nix +++ b/modules/services/nixos/selfhost/forgejo.nix @@ -36,7 +36,12 @@ in }; }; - services.caddy = lib.mkIf config.collinux.services.selfhost.caddy.enable { + systemd.services."forgejo" = lib.mkIf config.collinux.services.networking.networkd.enable { + after = lib.mkAfter ["network-online.target"]; + wants = lib.mkAfter ["network-online.target"]; + }; + + services.caddy = lib.mkIf (config.collinux.services.selfhost.caddy.enable && config.collinux.services.selfhost.magic_caddy.enable) { virtualHosts.${cfg.root_url}.extraConfig = '' ${ if config.collinux.services.networking.tailscale.enable diff --git a/modules/services/nixos/selfhost/headscale.nix b/modules/services/nixos/selfhost/headscale.nix index 9319691..9989742 100644 --- a/modules/services/nixos/selfhost/headscale.nix +++ b/modules/services/nixos/selfhost/headscale.nix @@ -7,12 +7,14 @@ cfg = config.collinux.services.selfhost.headscale; acl_file = (pkgs.formats.json {}).generate "acl.json" { - ssh = { - src = ["*"]; - dst = ["*"]; - users = ["autogroup:nonroot" "root"]; - action = "accept"; - }; + ssh = [ + { + src = ["collin@"]; + dst = ["collin@"]; + users = ["autogroup:nonroot" "root"]; + action = "accept"; + } + ]; }; in lib.mkIf cfg.enable { @@ -47,6 +49,17 @@ in }; }; + # make sure headscale can start before tailscale + systemd.services."headscale" = lib.mkIf config.collinux.services.networking.tailscale.enable { + after = lib.mkForce ["network.target"]; + before = lib.mkForce ["headscale.target"]; + wants = lib.mkForce ["network.target" "headscale.target"]; + }; + + systemd.targets."headscale" = { + description = "Target represents headscale is running. started by headscale.service"; + }; + services.caddy.virtualHosts.${cfg.root_url}.extraConfig = lib.mkIf config.collinux.services.selfhost.caddy.enable '' reverse_proxy localhost:8080 ''; diff --git a/modules/services/nixos/ssh.nix b/modules/services/nixos/ssh.nix index 2867d10..cfe7883 100644 --- a/modules/services/nixos/ssh.nix +++ b/modules/services/nixos/ssh.nix @@ -8,18 +8,32 @@ in { config = lib.mkIf cfg.enable { services.openssh = { enable = true; + openFirewall = false; hostKeys = [ { path = "/etc/ssh/ssh_host_ed25519_key"; type = "ed25519"; } ]; + + listenAddresses = [ + { + addr = cfg.bind_host; + port = 22; + } + ]; + settings = { PermitRootLogin = "prohibit-password"; PasswordAuthentication = false; }; }; + systemd.services."openssh" = lib.mkIf config.collinux.services.networking.networkd.enable { + after = lib.mkAfter ["network-online.target"]; + wants = lib.mkAfter ["network-online.target"]; + }; + services.tailscale.extraSetFlags = lib.optional config.services.tailscale.enable "--ssh=true"; }; } diff --git a/modules/services/nixos/tailscale.nix b/modules/services/nixos/tailscale.nix index f39fc27..6af3c1c 100644 --- a/modules/services/nixos/tailscale.nix +++ b/modules/services/nixos/tailscale.nix @@ -18,5 +18,11 @@ in allowedUDPPorts = [config.services.tailscale.port]; }; + # don't start tailscale until after headscale starts + systemd.services."tailscaled" = lib.mkIf config.collinux.services.selfhost.headscale.enable { + wants = lib.mkForce ["network.target" "headscale.target"]; + after = lib.mkForce ["network.target" "headscale.target"]; + }; + environment.systemPackages = [pkgs.tailscale]; } diff --git a/modules/services/options.nix b/modules/services/options.nix index 2084c45..8be7c42 100644 --- a/modules/services/options.nix +++ b/modules/services/options.nix @@ -76,11 +76,13 @@ in { type = lib.types.str; default = with config.collinux.services.networking.tailscale; if enable - then "https://${service_name}.${tailnet}" + then "http://${service_name}.${tailnet}" else null; }; }; in { + magic_caddy.enable = mkEnableOption "Automatically create caddy configurations for services"; + adguard = selfhostOptions { service_name = "adguard"; default_port = 8001; diff --git a/secrets.nix b/secrets.nix index 3dc8491..d0a5ffb 100644 --- a/secrets.nix +++ b/secrets.nix @@ -5,6 +5,7 @@ let ganymede = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINlr+53UmlGVP1blkdNl6NFqn1w2umFJyjH1EVUPKIy9"; in { "caddy-env.age".publicKeys = [ganymede]; + "tsnsrv-authkey.age".publicKeys = [ganymede mercury]; "williams-psk.age".publicKeys = [ganymede]; "github-ssh-key.age".publicKeys = [mercury jupiter]; } -- cgit v1.3.1 From c7e9ff3c853755cd3b0e8bc7443d55d222a06f80 Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Sun, 11 Jan 2026 08:03:03 -0600 Subject: clean up services/networking config even more --- hosts/ganymede/config.nix | 25 +++++++++++----------- modules/services/nixos/networking/default.nix | 17 +-------------- modules/services/nixos/networking/networkd.nix | 1 + modules/services/nixos/networking/resolved.nix | 17 +++++++++++++++ modules/services/nixos/selfhost/adguard.nix | 13 ++++++------ modules/services/nixos/selfhost/forgejo.nix | 10 ++++----- modules/services/nixos/selfhost/headscale.nix | 17 ++++++++++----- modules/services/options.nix | 29 ++++++++++++++++---------- 8 files changed, 73 insertions(+), 56 deletions(-) create mode 100644 modules/services/nixos/networking/resolved.nix (limited to 'hosts') diff --git a/hosts/ganymede/config.nix b/hosts/ganymede/config.nix index 3adf620..0d3f15e 100644 --- a/hosts/ganymede/config.nix +++ b/hosts/ganymede/config.nix @@ -5,7 +5,10 @@ in { user.name = "collin"; secrets = { - "williams-psk".file = ./williams-psk.age; + "williams-psk" = { + file = ./williams-psk.age; + owner = "wpa_supplicant"; + }; "caddy-env".file = ./caddy-env.age; "tsnsrv-authkey".file = ./tsnsrv-authkey.age; }; @@ -40,28 +43,26 @@ in { }; sshd = { enable = true; - bind_host = tailscaleIP; + bind_host = "0.0.0.0"; }; }; selfhost = { - magic_caddy.enable = false; + caddy = { + enable = true; + envFile = config.collinux.secrets."caddy-env".path; + }; - # adguard = { - # enable = true; - # bind_host = tailscaleIP; - # }; forgejo = { enable = true; bind_host = tailscaleIP; + root_url = "ganymede.collinux.tailnet:8010"; }; + headscale = { enable = true; - root_url = "https://headscale.williamsfam.us.com"; - }; - caddy = { - enable = true; - envFile = config.collinux.secrets."caddy-env".path; + root_url = "headscale.williamsfam.us.com"; + caddy.enable = true; }; }; }; diff --git a/modules/services/nixos/networking/default.nix b/modules/services/nixos/networking/default.nix index 62b9146..9fa56da 100644 --- a/modules/services/nixos/networking/default.nix +++ b/modules/services/nixos/networking/default.nix @@ -3,23 +3,8 @@ ./iwd.nix ./networkmanager.nix ./networkd.nix + ./resolved.nix ]; networking.firewall.enable = true; - - # DNS - services.resolved = { - enable = true; - dnsovertls = "opportunistic"; - dnssec = "allow-downgrade"; - fallbackDns = [ - "9.9.9.9#dns.quad9.net" - "149.112.112.112#dns.quad9.net" - ]; - - # disable extra stuff - llmnr = "false"; - extraConfig = "MulticastDNS=no"; - }; - networking.resolvconf.enable = false; } diff --git a/modules/services/nixos/networking/networkd.nix b/modules/services/nixos/networking/networkd.nix index 470bcec..920b93f 100644 --- a/modules/services/nixos/networking/networkd.nix +++ b/modules/services/nixos/networking/networkd.nix @@ -29,6 +29,7 @@ in wait-online = { enable = true; ignoredInterfaces = ["docker0"]; + anyInterface = true; }; networks."11-static-lan" = { diff --git a/modules/services/nixos/networking/resolved.nix b/modules/services/nixos/networking/resolved.nix new file mode 100644 index 0000000..b552095 --- /dev/null +++ b/modules/services/nixos/networking/resolved.nix @@ -0,0 +1,17 @@ +{ + networking.resolvconf.enable = false; + + services.resolved = { + enable = true; + dnsovertls = "opportunistic"; + dnssec = "allow-downgrade"; + fallbackDns = [ + "9.9.9.9#dns.quad9.net" + "149.112.112.112#dns.quad9.net" + ]; + + # disable extra stuff + llmnr = "false"; + extraConfig = "MulticastDNS=no"; + }; +} diff --git a/modules/services/nixos/selfhost/adguard.nix b/modules/services/nixos/selfhost/adguard.nix index 73c6caf..69fb8a4 100644 --- a/modules/services/nixos/selfhost/adguard.nix +++ b/modules/services/nixos/selfhost/adguard.nix @@ -32,17 +32,16 @@ in DNSStubListener=no ''; - services.caddy = lib.mkIf (config.collinux.services.selfhost.caddy.enable - && config.collinux.services.selfhost.magic_caddy.enable) { + services.tailscale.extraSetFlags = lib.optional config.collinux.services.networking.tailscale.enable "--accept-dns=false"; # would create an infinite loop of dns lookups + + services.caddy = lib.mkIf cfg.caddy.enable { virtualHosts.${cfg.root_url}.extraConfig = '' ${ - if config.collinux.services.networking.tailscale.enable - then "bind tailscale/adguard" + if cfg.caddy.bind_tailscale + then "bind tailscale/${cfg.service_name}" else "" } - reverse_proxy localhost:${toString cfg.port} + reverse_proxy ${cfg.bind_host}:${toString cfg.port} ''; }; - - services.tailscale.extraSetFlags = lib.optional config.collinux.services.networking.tailscale.enable "--accept-dns=false"; # would create an infinite loop of dns lookups } diff --git a/modules/services/nixos/selfhost/forgejo.nix b/modules/services/nixos/selfhost/forgejo.nix index e499e64..4571dca 100644 --- a/modules/services/nixos/selfhost/forgejo.nix +++ b/modules/services/nixos/selfhost/forgejo.nix @@ -8,7 +8,7 @@ in lib.mkIf cfg.enable { services.forgejo = { enable = true; - database.type = "postgres"; + database.type = "sqlite3"; settings = { server = { DOMAIN = "localhost"; @@ -41,14 +41,14 @@ in wants = lib.mkAfter ["network-online.target"]; }; - services.caddy = lib.mkIf (config.collinux.services.selfhost.caddy.enable && config.collinux.services.selfhost.magic_caddy.enable) { + services.caddy = lib.mkIf cfg.caddy.enable { virtualHosts.${cfg.root_url}.extraConfig = '' ${ - if config.collinux.services.networking.tailscale.enable - then "bind tailscale/forgejo" + if cfg.caddy.bind_tailscale + then "bind tailscale/${cfg.service_name}" else "" } - reverse_proxy localhost:${toString cfg.port} + reverse_proxy ${cfg.bind_host}:${toString cfg.port} ''; }; } diff --git a/modules/services/nixos/selfhost/headscale.nix b/modules/services/nixos/selfhost/headscale.nix index 9989742..2bdcca1 100644 --- a/modules/services/nixos/selfhost/headscale.nix +++ b/modules/services/nixos/selfhost/headscale.nix @@ -23,7 +23,7 @@ in address = cfg.bind_host; port = cfg.port; settings = { - server_url = cfg.root_url; + server_url = "https://${cfg.root_url}"; database.type = "sqlite"; @@ -60,9 +60,16 @@ in description = "Target represents headscale is running. started by headscale.service"; }; - services.caddy.virtualHosts.${cfg.root_url}.extraConfig = lib.mkIf config.collinux.services.selfhost.caddy.enable '' - reverse_proxy localhost:8080 - ''; - environment.systemPackages = [pkgs.headscale]; + + services.caddy = lib.mkIf cfg.caddy.enable { + virtualHosts.${cfg.root_url}.extraConfig = '' + ${ + if cfg.caddy.bind_tailscale + then "bind tailscale/${cfg.service_name}" + else "" + } + reverse_proxy ${cfg.bind_host}:${toString cfg.port} + ''; + }; } diff --git a/modules/services/options.nix b/modules/services/options.nix index 8be7c42..df8bc52 100644 --- a/modules/services/options.nix +++ b/modules/services/options.nix @@ -17,7 +17,7 @@ in { networkmanager.enable = mkEnableOption "heavier wifi daemon"; networkd = { - enable = mkEnableOption "set static IP (systemd-networkd)"; + enable = mkEnableOption "use systemd-networkd"; ssid = mkOption {type = lib.types.str;}; pskFile = mkOption {type = lib.types.str;}; @@ -61,9 +61,13 @@ in { selfhostOptions = { service_name, default_port ? null, - ... }: { - enable = mkEnableOption ""; + enable = mkEnableOption "${service_name} selfhosted service"; + + service_name = mkOption { + type = lib.types.str; + }; + bind_host = mkOption { type = ip_addr; default = "0.0.0.0"; @@ -72,29 +76,32 @@ in { type = lib.types.port; default = default_port; }; + root_url = mkOption { - type = lib.types.str; - default = with config.collinux.services.networking.tailscale; - if enable - then "http://${service_name}.${tailnet}" - else null; + type = lib.types.nullOr lib.types.str; + }; + + caddy = { + enable = mkEnableOption "Automatically create caddy configurations for this service"; + bind_tailscale = mkEnableOption "Bind the service to {service_name}.{tailnet}"; }; }; in { - magic_caddy.enable = mkEnableOption "Automatically create caddy configurations for services"; - adguard = selfhostOptions { service_name = "adguard"; default_port = 8001; }; + forgejo = selfhostOptions { service_name = "forgejo"; default_port = 8010; }; + headscale = selfhostOptions { service_name = "headscale"; default_port = 8080; }; + caddy = { enable = mkEnableOption "caddy https server"; envFile = mkOption { @@ -109,7 +116,7 @@ in { assertions = [ { assertion = with config.collinux.services.networking; (iwd.enable && !networkmanager.enable && !networkd.enable) || (!iwd.enable && networkmanager.enable && !networkd.enable) || (!iwd.enable && !networkmanager.enable && networkd.enable); - message = "only one networking method (iwd, networkmanager, static) can be active"; + message = "only one networking method (iwd, networkmanager, networkd) can be active"; } ]; }; -- cgit v1.3.1 From 32a7e59b93a9c3748cd6aeca3d4fc9dadf8e0f59 Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Sun, 11 Jan 2026 08:03:58 -0600 Subject: move various configs into modules where they belong --- hosts/ganymede/nixos.nix | 23 ++--------------------- hosts/jupiter/config.nix | 5 +---- hosts/jupiter/nixos.nix | 15 +-------------- hosts/mercury/config.nix | 28 ++++++++++++---------------- hosts/mercury/hjem.nix | 1 - hosts/mercury/nixos.nix | 11 +++++------ modules/desktop/nixos/fonts.nix | 3 +-- modules/nix/nixos/default.nix | 10 +++++----- modules/services/nixos/audio.nix | 5 +++-- modules/services/options.nix | 8 +++----- modules/user/nixos/default.nix | 3 +-- 11 files changed, 34 insertions(+), 78 deletions(-) (limited to 'hosts') diff --git a/hosts/ganymede/nixos.nix b/hosts/ganymede/nixos.nix index ce30973..9dc6dec 100644 --- a/hosts/ganymede/nixos.nix +++ b/hosts/ganymede/nixos.nix @@ -1,6 +1,5 @@ { config, - lib, inputs, ... }: { @@ -23,24 +22,6 @@ networkConfig.DHCP = "yes"; }; - services.openssh.settings.PasswordAuthentication = lib.mkForce true; - - # services.tsnsrv = { - # enable = true; - # defaults = { - # authKeyPath = config.collinux.secrets."tsnsrv-authkey".path; - # ephemeral = true; - # loginServerUrl = "https://williamsfam.us.com"; - # }; - - # services = { - # "adguard" = { - # listenAddr = ":80"; - # toURL = "http://localhost:8001"; - # }; - # }; - # }; - - nixpkgs.hostPlatform = "x86_64-linux"; - system.stateVersion = "25.05"; + # i broke something and this fixes it + environment.etc."systemd/resolved.conf.d/10-dns.conf".text = config.environment.etc."systemd/resolved.conf".text; } diff --git a/hosts/jupiter/config.nix b/hosts/jupiter/config.nix index a0c1583..decaa61 100644 --- a/hosts/jupiter/config.nix +++ b/hosts/jupiter/config.nix @@ -57,10 +57,7 @@ sshd.enable = true; }; - audio = { - enable = true; - pulse.enable = true; - }; + audio.enable = true; bluetooth.enable = true; }; diff --git a/hosts/jupiter/nixos.nix b/hosts/jupiter/nixos.nix index e39328a..80ab0f4 100644 --- a/hosts/jupiter/nixos.nix +++ b/hosts/jupiter/nixos.nix @@ -1,21 +1,8 @@ -{ - inputs, - pkgs, - ... -}: { +{inputs, ...}: { imports = [ ./disks.nix inputs.nixos-facter-modules.nixosModules.facter ]; - boot.blacklistedKernelModules = ["snd_seq_dummy"]; - - systemd.network.wait-online.enable = false; # fix for weird wifi issue - - fonts.packages = [pkgs.nerd-fonts.iosevka]; - facter.reportPath = ./facter.json; - time.timeZone = "America/Chicago"; - nixpkgs.hostPlatform = "x86_64-linux"; - system.stateVersion = "25.05"; } diff --git a/hosts/mercury/config.nix b/hosts/mercury/config.nix index 9ee29d0..3fb4753 100644 --- a/hosts/mercury/config.nix +++ b/hosts/mercury/config.nix @@ -1,20 +1,19 @@ -{pkgs, ...}: { +{ collinux = { theme = "catppuccin"; user.name = "collin"; desktop = { wallpaper = ./wallpaper.jpg; - - # gtk.enable = true; - + gtk.enable = true; greetd.enable = true; wm = { - # sway.enable = true; niri.enable = true; - components.fuzzel.enable = true; - components.dunst.enable = true; + components = { + fuzzel.enable = true; + dunst.enable = true; + }; }; programs = { @@ -43,26 +42,23 @@ shells.bash.enable = true; # for nix-shells programs = { - lazygit.enable = true; starship.enable = true; - fzf.enable = true; bat.enable = true; eza.enable = true; + helix = { + enable = true; + hardMode = true; + }; + lazygit.enable = true; + nh.enable = true; git = { enable = true; userName = "Collin Williams"; userEmail = "96917990+bluedragon1221@users.noreply.github.com"; installKey = true; }; - - nh.enable = true; - - helix = { - enable = true; - hardMode = true; - }; }; }; diff --git a/hosts/mercury/hjem.nix b/hosts/mercury/hjem.nix index 6eba4c9..1db654f 100644 --- a/hosts/mercury/hjem.nix +++ b/hosts/mercury/hjem.nix @@ -6,7 +6,6 @@ kdePackages.kleopatra mpv musescore - zed-editor # experimenting kew # music player prismlauncher diff --git a/hosts/mercury/nixos.nix b/hosts/mercury/nixos.nix index 558ae60..631a537 100644 --- a/hosts/mercury/nixos.nix +++ b/hosts/mercury/nixos.nix @@ -12,10 +12,11 @@ inputs.lanzaboote.nixosModules.lanzaboote ]; - systemd.services.systemd-udev-settle.enable = false; - networking.interfaces.wlp2s0.useDHCP = false; - - services.sshd.enable = true; + services.syncthing = { + enable = true; + user = "collin"; + dataDir = "/home/collin/.local/syncthing"; + }; facter.reportPath = ./facter.json; @@ -25,6 +26,4 @@ allowedUDPPorts = [445]; allowedTCPPorts = [8000]; }; - - system.stateVersion = "25.05"; } diff --git a/modules/desktop/nixos/fonts.nix b/modules/desktop/nixos/fonts.nix index 3f10d92..5ac17ec 100644 --- a/modules/desktop/nixos/fonts.nix +++ b/modules/desktop/nixos/fonts.nix @@ -1,8 +1,7 @@ {pkgs, ...}: { fonts = { enableDefaultPackages = false; - # fontDir.enable = true; fontconfig.enable = true; - packages = [pkgs.nerd-fonts.iosevka pkgs.ibm-plex]; # for terminal (blackbox or foot) + packages = [pkgs.nerd-fonts.iosevka pkgs.ibm-plex]; # for terminal (blackbox or foot or ghostty) }; } diff --git a/modules/nix/nixos/default.nix b/modules/nix/nixos/default.nix index 7116371..c817859 100644 --- a/modules/nix/nixos/default.nix +++ b/modules/nix/nixos/default.nix @@ -1,12 +1,9 @@ { - inputs, config, pkgs, ... }: { nix = { - # package = inputs.determinate.packages.${pkgs.system}.default; - gc.automatic = false; # use nh cleaner instead # Make builds run with low priority so my system stays responsive @@ -27,9 +24,12 @@ programs.nh = { enable = true; - flake = "/home/collin/nixos"; + flake = "/home/${config.collinux.user.name}/nixos"; clean.enable = true; }; - hjem.users."${config.collinux.user.name}".packages = [pkgs.cached-nix-shell]; + environment.systemPackages = [pkgs.cached-nix-shell]; + + nixpkgs.hostPlatform = "x86_64-linux"; + system.stateVersion = "25.05"; } diff --git a/modules/services/nixos/audio.nix b/modules/services/nixos/audio.nix index 93f8289..8f2f23e 100644 --- a/modules/services/nixos/audio.nix +++ b/modules/services/nixos/audio.nix @@ -12,9 +12,10 @@ in enable = true; wireplumber.enable = true; alsa.enable = true; - - pulse.enable = cfg.pulse.enable; + pulse.enable = false; }; + boot.blacklistedKernelModules = ["snd_seq_dummy"]; # remove extraneous alsa midi devices + environment.systemPackages = [pkgs.pwvucontrol]; } diff --git a/modules/services/options.nix b/modules/services/options.nix index df8bc52..16bf5ac 100644 --- a/modules/services/options.nix +++ b/modules/services/options.nix @@ -46,11 +46,9 @@ in { }; }; }; - audio = { - enable = mkEnableOption "pipewire + wireplumber"; - pulse.enable = mkEnableOption "pipewire-pulse"; - # some config to make audio work with wine (TODO for jupiter) - }; + + audio.enable = mkEnableOption "pipewire + wireplumber"; + bluetooth = { enable = mkEnableOption "bluetooth"; blueman.enable = mkEnableOption "graphical bluetooth manager"; diff --git a/modules/user/nixos/default.nix b/modules/user/nixos/default.nix index b14e52d..0b0ae41 100644 --- a/modules/user/nixos/default.nix +++ b/modules/user/nixos/default.nix @@ -1,13 +1,12 @@ { config, - hostname, lib, ... }: let cfg = config.collinux.user; in { users = { - mutableUsers = true; + mutableUsers = true; # system passwords stored mutably users."${cfg.name}" = { isNormalUser = true; -- cgit v1.3.1 From 31626c1d32fba39f963ec37f7f2ce2943ea9bf29 Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Mon, 12 Jan 2026 13:36:22 -0600 Subject: start using tmux --- hosts/mercury/config.nix | 2 ++ modules/terminal/hjem/programs/tmux.nix | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'hosts') diff --git a/hosts/mercury/config.nix b/hosts/mercury/config.nix index 3fb4753..3427a2e 100644 --- a/hosts/mercury/config.nix +++ b/hosts/mercury/config.nix @@ -51,6 +51,8 @@ hardMode = true; }; + tmux.enable = true; + lazygit.enable = true; nh.enable = true; git = { diff --git a/modules/terminal/hjem/programs/tmux.nix b/modules/terminal/hjem/programs/tmux.nix index 8525569..dd235c1 100644 --- a/modules/terminal/hjem/programs/tmux.nix +++ b/modules/terminal/hjem/programs/tmux.nix @@ -16,8 +16,8 @@ in { enable = true; theme = { - bg = config.collinux.palette.base01; - bg_dark = config.collinux.palette.base00; + bg = "#${config.collinux.palette.base01}"; + bg_dark = "#${config.collinux.palette.base00}"; }; keys.leader = [ -- cgit v1.3.1 From bd5c9fd6ecb52095e463a2edc0d3ee32f43c849d Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Wed, 14 Jan 2026 13:34:55 -0600 Subject: configurable greeter for greetd --- hosts/mercury/config.nix | 9 ++++-- modules/desktop/nixos/greeters/greetd.nix | 28 +++++++++++++---- modules/desktop/options.nix | 50 +++++++++++++++---------------- 3 files changed, 53 insertions(+), 34 deletions(-) (limited to 'hosts') diff --git a/hosts/mercury/config.nix b/hosts/mercury/config.nix index 3427a2e..657c4e5 100644 --- a/hosts/mercury/config.nix +++ b/hosts/mercury/config.nix @@ -6,10 +6,15 @@ desktop = { wallpaper = ./wallpaper.jpg; gtk.enable = true; - greetd.enable = true; + greetd = { + enable = true; + autologin.enable = true; + }; wm = { - niri.enable = true; + # niri.enable = true; + sway.enable = true; + components = { fuzzel.enable = true; dunst.enable = true; diff --git a/modules/desktop/nixos/greeters/greetd.nix b/modules/desktop/nixos/greeters/greetd.nix index b612c86..02af31f 100644 --- a/modules/desktop/nixos/greeters/greetd.nix +++ b/modules/desktop/nixos/greeters/greetd.nix @@ -1,19 +1,35 @@ { + pkgs, config, lib, ... }: let cfg = config.collinux.desktop.greetd; + + session = + if cfg.cosmic-greeter.enable + then { + command = "${pkgs.cosmic-greeter}/bin/cosmic-greeter-start"; + user = config.collinux.user.name; + } + else if cfg.autologin.enable + then { + user = config.collinux.user.name; + command = with config.collinux.desktop; + if (wm.sway.enable && !gnome.enable && !wm.niri.enable) + then lib.getExe pkgs.sway + else if (wm.niri.enable && !gnome.enable && !wm.sway.enable) + then "${pkgs.niri}/bin/niri-session" + else null; + } + else {}; in lib.mkIf cfg.enable { services.greetd = { enable = true; - settings = rec { - initial_session = { - command = cfg.command; - user = config.collinux.user.name; - }; - default_session = initial_session; + settings = { + initial_session = session; + default_session = session; }; }; } diff --git a/modules/desktop/options.nix b/modules/desktop/options.nix index e59ed68..a4ba38d 100644 --- a/modules/desktop/options.nix +++ b/modules/desktop/options.nix @@ -22,18 +22,8 @@ in { greetd = { enable = mkEnableOption "greetd greeter"; - command = mkOption { - type = lib.types.str; - internal = true; - default = let - cfg = config.collinux.desktop; - in - if (cfg.wm.sway.enable && !cfg.gnome.enable && !cfg.wm.niri.enable) - then lib.getExe pkgs.sway - else if (cfg.wm.niri.enable && !cfg.gnome.enable && !cfg.wm.sway.enable) - then "${pkgs.niri}/bin/niri-session" - else null; - }; + autologin.enable = mkEnableOption "autologin"; + cosmic-greeter.enable = mkEnableOption "cosmic-greeter"; }; gdm.enable = mkEnableOption "gdm display manager"; @@ -55,13 +45,15 @@ in { cursor_data = mkOption { internal = true; type = lib.types.submodule { - package = mkOption { - internal = true; - type = lib.types.package; - }; - name = mkOption { - internal = true; - type = lib.types.str; + options = { + package = mkOption { + internal = true; + type = lib.types.package; + }; + name = mkOption { + internal = true; + type = lib.types.str; + }; }; }; default = @@ -81,13 +73,15 @@ in { theme_data = mkOption { internal = true; type = lib.types.submodule { - package = mkOption { - internal = true; - type = lib.types.package; - }; - name = mkOption { - internal = true; - type = lib.types.str; + options = { + package = mkOption { + internal = true; + type = lib.types.package; + }; + name = mkOption { + internal = true; + type = lib.types.str; + }; }; }; @@ -141,6 +135,10 @@ in { assertion = with config.collinux.desktop; !(gdm.enable && greetd.enable); message = "Can't enable gdm and greetd at the same time"; } + { + assertion = with config.collinux.desktop.greetd; enable && !(autologin.enable && cosmic-greeter.enable); + message = "Can't use autologin and cosmic-greeter at the same time"; + } ]; }; } -- cgit v1.3.1 From 1abc71deb39bcac0843f6eae6efa12a79255f166 Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Fri, 16 Jan 2026 16:55:51 -0600 Subject: update facter (was wrongly generated for some reason) --- hosts/mercury/facter.json | 801 +++++++++++----------------------------------- 1 file changed, 183 insertions(+), 618 deletions(-) (limited to 'hosts') diff --git a/hosts/mercury/facter.json b/hosts/mercury/facter.json index 17aa2a1..cd802f7 100644 --- a/hosts/mercury/facter.json +++ b/hosts/mercury/facter.json @@ -23,8 +23,8 @@ }, "bluetooth": [ { - "index": 42, - "attached_to": 44, + "index": 41, + "attached_to": 43, "class_list": [ "usb", "bluetooth" @@ -107,8 +107,8 @@ "module_alias": "usb:v8087p0A2Bd0010dcE0dsc01dp01icE0isc01ip01in00" }, { - "index": 47, - "attached_to": 44, + "index": 45, + "attached_to": 43, "class_list": [ "usb", "bluetooth" @@ -247,26 +247,21 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1c.0", "sysfs_bus_id": "0000:00:1c.0", - "resources": [ - { - "type": "irq", - "base": 120, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 0, "command": 1031, "header_type": 1, "secondary_bus": 2, - "irq": 120, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d00009D10sv000017AAsd0000225Cbc06sc04i00" }, { @@ -324,7 +319,6 @@ "command": 7, "header_type": 0, "secondary_bus": 0, - "irq": 0, "prog_if": 0 }, "module_alias": "pci:v00008086d00009D4Esv000017AAsd0000225Cbc06sc01i00" @@ -384,26 +378,21 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:01.0", "sysfs_bus_id": "0000:06:01.0", - "resources": [ - { - "type": "irq", - "base": 124, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 0, "command": 1031, "header_type": 1, "secondary_bus": 8, - "irq": 124, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d000015D3sv00002222sd00001111bc06sc04i00" }, { @@ -461,26 +450,21 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:04.0", "sysfs_bus_id": "0000:06:04.0", - "resources": [ - { - "type": "irq", - "base": 126, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 0, "command": 1031, "header_type": 1, "secondary_bus": 60, - "irq": 126, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d000015D3sv00002222sd00001111bc06sc04i00" }, { @@ -538,7 +522,6 @@ "command": 6, "header_type": 0, "secondary_bus": 0, - "irq": 0, "prog_if": 0 }, "driver": "skl_uncore", @@ -606,26 +589,21 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:00.0", "sysfs_bus_id": "0000:06:00.0", - "resources": [ - { - "type": "irq", - "base": 123, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 0, "command": 1030, "header_type": 1, "secondary_bus": 7, - "irq": 123, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d000015D3sv00002222sd00001111bc06sc04i00" }, { @@ -683,26 +661,21 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0", "sysfs_bus_id": "0000:05:00.0", - "resources": [ - { - "type": "irq", - "base": 16, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 0, "command": 7, "header_type": 1, "secondary_bus": 6, - "irq": 16, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d000015D3sv00002222sd00001111bc06sc04i00" }, { @@ -760,26 +733,21 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0", "sysfs_bus_id": "0000:00:1d.0", - "resources": [ - { - "type": "irq", - "base": 122, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 0, "command": 1031, "header_type": 1, "secondary_bus": 5, - "irq": 122, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d00009D18sv000017AAsd0000225Cbc06sc04i00" }, { @@ -837,26 +805,21 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1c.4", "sysfs_bus_id": "0000:00:1c.4", - "resources": [ - { - "type": "irq", - "base": 121, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 4, "command": 1031, "header_type": 1, "secondary_bus": 4, - "irq": 121, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d00009D14sv000017AAsd0000225Cbc06sc04i00" }, { @@ -914,33 +877,28 @@ "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:02.0", "sysfs_bus_id": "0000:06:02.0", - "resources": [ - { - "type": "irq", - "base": 125, - "triggered": 0, - "enabled": true - } - ], "detail": { "function": 0, "command": 1030, "header_type": 1, "secondary_bus": 59, - "irq": 125, "prog_if": 0 }, "driver": "pcieport", + "driver_module": "pcieportdrv", "drivers": [ "pcieport" ], + "driver_modules": [ + "pcieportdrv" + ], "module_alias": "pci:v00008086d000015D3sv00002222sd00001111bc06sc04i00" } ], "camera": [ { - "index": 40, - "attached_to": 44, + "index": 39, + "attached_to": 43, "class_list": [ "camera", "usb" @@ -1040,8 +998,8 @@ "module_alias": "usb:v5986p2115d5420dcEFdsc02dp01ic0Eisc02ip00in01" }, { - "index": 46, - "attached_to": 44, + "index": 44, + "attached_to": 43, "class_list": [ "camera", "usb" @@ -1145,6 +1103,7 @@ { "architecture": "x86_64", "vendor_name": "GenuineIntel", + "model_name": "Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz", "family": 6, "model": 142, "stepping": 10, @@ -1279,23 +1238,28 @@ "srbds", "mmio_stale_data", "retbleed", - "gds" + "gds", + "vmscape" + ], + "power_management": [ + "" ], "bogo": 3600, "cache": 6144, "units": 16, + "page_size": 4096, "physical_id": 0, "siblings": 8, "cores": 4, - "fpu": true, - "fpu_exception": true, + "fpu": false, + "fpu_exception": false, "cpuid_level": 22, "write_protect": false, "clflush_size": 64, "cache_alignment": 64, "address_sizes": { - "physical": 39, - "virtual": 48 + "physical": "0x27", + "virtual": "0x30" } } ], @@ -1349,13 +1313,6 @@ "sysfs_id": "/class/block/nvme0n1", "sysfs_bus_id": "nvme0", "sysfs_device_link": "/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/nvme/nvme0", - "unix_device_name": "/dev/nvme0n1", - "unix_device_number": { - "type": 98, - "major": 259, - "minor": 0, - "range": 0 - }, "unix_device_names": [ "/dev/disk/by-id/nvme-LENSE20256GMSP34MEAT2TA_1204748913815", "/dev/disk/by-id/nvme-LENSE20256GMSP34MEAT2TA_1204748913815_1", @@ -1369,7 +1326,7 @@ "cylinders": 244198, "heads": 64, "sectors": 32, - "size": 0, + "size": "0x0", "geo_type": "logical" }, { @@ -1390,22 +1347,11 @@ }, { "index": 38, - "attached_to": 33, + "attached_to": 0, "class_list": [ "disk", - "usb", - "scsi", "block_device" ], - "bus_type": { - "hex": "0084", - "name": "SCSI", - "value": 132 - }, - "slot": { - "bus": 0, - "number": 0 - }, "base_class": { "hex": "0106", "name": "Mass Storage Device", @@ -1416,67 +1362,21 @@ "name": "Disk", "value": 0 }, - "vendor": { - "hex": "0bda", - "name": "Generic-", - "value": 3034 - }, - "device": { - "hex": "0328", - "name": "SD/MMC CRW", - "value": 808 - }, - "revision": { - "hex": "0000", - "name": "1.00", - "value": 0 - }, - "serial": "2012062914345300", - "model": "Generic SD/MMC CRW", - "sysfs_id": "/class/block/sda", - "sysfs_bus_id": "0:0:0:0", - "sysfs_device_link": "/devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.0/host0/target0:0:0/0:0:0:0", - "unix_device_name": "/dev/sda", - "unix_device_number": { - "type": 98, - "major": 8, - "minor": 0, - "range": 16 - }, + "model": "Disk", + "sysfs_id": "/class/block/zram0", "unix_device_names": [ - "/dev/disk/by-id/usb-Generic-_SD_MMC_CRW_28203008282014000-0:0", - "/dev/disk/by-path/pci-0000:00:14.0-usb-0:3:1.0-scsi-0:0:0:0", - "/dev/disk/by-path/pci-0000:00:14.0-usbv3-0:3:1.0-scsi-0:0:0:0", - "/dev/sda" - ], - "unix_device_name2": "/dev/sg0", - "unix_device_number2": { - "type": 99, - "major": 21, - "minor": 0, - "range": 1 - }, + "/dev/disk/by-label/zram0", + "/dev/disk/by-uuid/22842fef-9562-4ab2-9265-59e4f1f5d3f3", + "/dev/zram0" + ], "resources": [ { - "type": "disk_geo", - "cylinders": 1024, - "heads": 0, - "sectors": 62, - "size": 0, - "geo_type": "logical" + "type": "size", + "unit": "sectors", + "value_1": 986368, + "value_2": 4096 } - ], - "driver": "usb-storage", - "driver_module": "usb_storage", - "drivers": [ - "sd", - "usb-storage" - ], - "driver_modules": [ - "sd_mod", - "usb_storage" - ], - "module_alias": "usb:v0BDAp0328d2908dc00dsc00dp00ic08isc06ip50in00" + ] } ], "graphics_card": [ @@ -1542,36 +1442,6 @@ "range": 64, "enabled": true, "access": "read_write" - }, - { - "type": "irq", - "base": 127, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 204547817472, - "range": 268435456, - "enabled": true, - "access": "read_only", - "prefetch": "no" - }, - { - "type": "mem", - "base": 206057766912, - "range": 16777216, - "enabled": true, - "access": "read_write", - "prefetch": "no" - }, - { - "type": "mem", - "base": 786432, - "range": 131072, - "enabled": false, - "access": "read_write", - "prefetch": "no" } ], "detail": { @@ -1579,7 +1449,6 @@ "command": 1031, "header_type": 0, "secondary_bus": 0, - "irq": 127, "prog_if": 0 }, "driver": "i915", @@ -1595,7 +1464,7 @@ ], "hub": [ { - "index": 41, + "index": 40, "attached_to": 12, "class_list": [ "usb", @@ -1617,7 +1486,7 @@ }, "vendor": { "hex": "1d6b", - "name": "Linux 6.12.23 xhci-hcd", + "name": "Linux 6.12.64 xhci-hcd", "value": 7531 }, "device": { @@ -1631,7 +1500,7 @@ "value": 0 }, "serial": "0000:3b:00.0", - "model": "Linux 6.12.23 xhci-hcd xHCI Host Controller", + "model": "Linux 6.12.64 xhci-hcd xHCI Host Controller", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:02.0/0000:3b:00.0/usb3/3-0:1.0", "sysfs_bus_id": "3-0:1.0", "resources": [ @@ -1672,13 +1541,17 @@ }, "hotplug": "usb", "driver": "hub", + "driver_module": "usbcore", "drivers": [ "hub" ], + "driver_modules": [ + "usbcore" + ], "module_alias": "usb:v1D6Bp0002d0612dc09dsc00dp01ic09isc00ip00in00" }, { - "index": 43, + "index": 42, "attached_to": 12, "class_list": [ "usb", @@ -1700,7 +1573,7 @@ }, "vendor": { "hex": "1d6b", - "name": "Linux 6.12.23 xhci-hcd", + "name": "Linux 6.12.64 xhci-hcd", "value": 7531 }, "device": { @@ -1714,7 +1587,7 @@ "value": 0 }, "serial": "0000:3b:00.0", - "model": "Linux 6.12.23 xhci-hcd xHCI Host Controller", + "model": "Linux 6.12.64 xhci-hcd xHCI Host Controller", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:02.0/0000:3b:00.0/usb4/4-0:1.0", "sysfs_bus_id": "4-0:1.0", "detail": { @@ -1745,13 +1618,17 @@ }, "hotplug": "usb", "driver": "hub", + "driver_module": "usbcore", "drivers": [ "hub" ], + "driver_modules": [ + "usbcore" + ], "module_alias": "usb:v1D6Bp0003d0612dc09dsc00dp03ic09isc00ip00in00" }, { - "index": 44, + "index": 43, "attached_to": 33, "class_list": [ "usb", @@ -1773,7 +1650,7 @@ }, "vendor": { "hex": "1d6b", - "name": "Linux 6.12.23 xhci-hcd", + "name": "Linux 6.12.64 xhci-hcd", "value": 7531 }, "device": { @@ -1787,7 +1664,7 @@ "value": 0 }, "serial": "0000:00:14.0", - "model": "Linux 6.12.23 xhci-hcd xHCI Host Controller", + "model": "Linux 6.12.64 xhci-hcd xHCI Host Controller", "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-0:1.0", "sysfs_bus_id": "1-0:1.0", "resources": [ @@ -1828,13 +1705,17 @@ }, "hotplug": "usb", "driver": "hub", + "driver_module": "usbcore", "drivers": [ "hub" ], + "driver_modules": [ + "usbcore" + ], "module_alias": "usb:v1D6Bp0002d0612dc09dsc00dp01ic09isc00ip00in00" }, { - "index": 48, + "index": 46, "attached_to": 33, "class_list": [ "usb", @@ -1856,7 +1737,7 @@ }, "vendor": { "hex": "1d6b", - "name": "Linux 6.12.23 xhci-hcd", + "name": "Linux 6.12.64 xhci-hcd", "value": 7531 }, "device": { @@ -1870,7 +1751,7 @@ "value": 0 }, "serial": "0000:00:14.0", - "model": "Linux 6.12.23 xhci-hcd xHCI Host Controller", + "model": "Linux 6.12.64 xhci-hcd xHCI Host Controller", "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb2/2-0:1.0", "sysfs_bus_id": "2-0:1.0", "detail": { @@ -1901,9 +1782,13 @@ }, "hotplug": "usb", "driver": "hub", + "driver_module": "usbcore", "drivers": [ "hub" ], + "driver_modules": [ + "usbcore" + ], "module_alias": "usb:v1D6Bp0003d0612dc09dsc00dp03ic09isc00ip00in00" } ], @@ -1926,14 +1811,6 @@ }, "model": "Main Memory", "resources": [ - { - "type": "mem", - "base": 0, - "range": 8080396288, - "enabled": true, - "access": "read_write", - "prefetch": "unknown" - }, { "type": "phys_mem", "range": 8053063680 @@ -2021,7 +1898,7 @@ ], "mouse": [ { - "index": 52, + "index": 51, "attached_to": 0, "bus_type": { "hex": "0008", @@ -2046,7 +1923,7 @@ "hex": "0000", "value": 0 }, - "sysfs_id": "/devices/pci0000:00/0000:00:1f.4/i2c-6/6-002c/rmi4-00/input/input9", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.4/i2c-6/6-002c/rmi4-00/input/input14", "unix_device_names": [ "/dev/input/event12", "/dev/input/ + handler" @@ -2106,32 +1983,17 @@ "model": "Intel WLAN controller", "sysfs_id": "/devices/pci0000:00/0000:00:1c.0/0000:02:00.0", "sysfs_bus_id": "0000:02:00.0", - "unix_device_name": "wlp2s0", "unix_device_names": [ - "wlp2s0" + "wlan0" ], "resources": [ { "type": "hwaddr", - "address": 51 - }, - { - "type": "irq", - "base": 171, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 3995074560, - "range": 8192, - "enabled": true, - "access": "read_write", - "prefetch": "no" + "address": 100 }, { "type": "phwaddr", - "address": 51 + "address": 100 }, { "type": "wlan", @@ -2222,7 +2084,6 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 171, "prog_if": 0 }, "driver": "iwlwifi", @@ -2285,7 +2146,6 @@ "model": "Intel Ethernet controller", "sysfs_id": "/devices/pci0000:00/0000:00:1f.6", "sysfs_bus_id": "0000:00:1f.6", - "unix_device_name": "enp0s31f6", "unix_device_names": [ "enp0s31f6" ], @@ -2294,20 +2154,6 @@ "type": "hwaddr", "address": 56 }, - { - "type": "irq", - "base": 170, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 3996123136, - "range": 131072, - "enabled": true, - "access": "read_write", - "prefetch": "no" - }, { "type": "phwaddr", "address": 56 @@ -2318,7 +2164,6 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 170, "prog_if": 0 }, "driver": "e1000e", @@ -2334,8 +2179,8 @@ ], "network_interface": [ { - "index": 49, - "attached_to": 17, + "index": 47, + "attached_to": 29, "class_list": [ "network_interface" ], @@ -2350,34 +2195,33 @@ "value": 1 }, "model": "Ethernet network interface", - "sysfs_id": "/class/net/wlp2s0", - "sysfs_device_link": "/devices/pci0000:00/0000:00:1c.0/0000:02:00.0", - "unix_device_name": "wlp2s0", + "sysfs_id": "/class/net/enp0s31f6", + "sysfs_device_link": "/devices/pci0000:00/0000:00:1f.6", "unix_device_names": [ - "wlp2s0" + "enp0s31f6" ], "resources": [ { "type": "hwaddr", - "address": 51 + "address": 56 }, { "type": "phwaddr", - "address": 51 + "address": 56 } ], - "driver": "iwlwifi", - "driver_module": "iwlwifi", + "driver": "e1000e", + "driver_module": "e1000e", "drivers": [ - "iwlwifi" + "e1000e" ], "driver_modules": [ - "iwlwifi" + "e1000e" ] }, { - "index": 50, - "attached_to": 0, + "index": 49, + "attached_to": 17, "class_list": [ "network_interface" ], @@ -2387,20 +2231,38 @@ "value": 263 }, "sub_class": { - "hex": "0000", - "name": "Loopback", - "value": 0 + "hex": "000a", + "name": "WLAN", + "value": 10 }, - "model": "Loopback network interface", - "sysfs_id": "/class/net/lo", - "unix_device_name": "lo", + "model": "WLAN network interface", + "sysfs_id": "/class/net/wlan0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:1c.0/0000:02:00.0", "unix_device_names": [ - "lo" + "wlan0" + ], + "resources": [ + { + "type": "hwaddr", + "address": 100 + }, + { + "type": "phwaddr", + "address": 100 + } + ], + "driver": "iwlwifi", + "driver_module": "iwlwifi", + "drivers": [ + "iwlwifi" + ], + "driver_modules": [ + "iwlwifi" ] }, { - "index": 51, - "attached_to": 29, + "index": 50, + "attached_to": 0, "class_list": [ "network_interface" ], @@ -2410,34 +2272,14 @@ "value": 263 }, "sub_class": { - "hex": "0001", - "name": "Ethernet", - "value": 1 + "hex": "0000", + "name": "Loopback", + "value": 0 }, - "model": "Ethernet network interface", - "sysfs_id": "/class/net/enp0s31f6", - "sysfs_device_link": "/devices/pci0000:00/0000:00:1f.6", - "unix_device_name": "enp0s31f6", + "model": "Loopback network interface", + "sysfs_id": "/class/net/lo", "unix_device_names": [ - "enp0s31f6" - ], - "resources": [ - { - "type": "hwaddr", - "address": 56 - }, - { - "type": "phwaddr", - "address": 56 - } - ], - "driver": "e1000e", - "driver_module": "e1000e", - "drivers": [ - "e1000e" - ], - "driver_modules": [ - "e1000e" + "lo" ] } ], @@ -2492,22 +2334,11 @@ "model": "Intel Memory controller", "sysfs_id": "/devices/pci0000:00/0000:00:1f.2", "sysfs_bus_id": "0000:00:1f.2", - "resources": [ - { - "type": "mem", - "base": 3996254208, - "range": 16384, - "enabled": false, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 2, "command": 0, "header_type": 0, "secondary_bus": 0, - "irq": 0, "prog_if": 0 }, "module_alias": "pci:v00008086d00009D21sv000017AAsd0000225Cbc05sc80i00" @@ -2558,28 +2389,11 @@ "model": "Intel System peripheral", "sysfs_id": "/devices/pci0000:00/0000:00:08.0", "sysfs_bus_id": "0000:00:08.0", - "resources": [ - { - "type": "irq", - "base": 255, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 206074736640, - "range": 4096, - "enabled": false, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 0, "command": 0, "header_type": 0, "secondary_bus": 0, - "irq": 255, "prog_if": 0 }, "module_alias": "pci:v00008086d00001911sv000017AAsd0000225Cbc08sc80i00" @@ -2634,28 +2448,11 @@ "model": "Intel Signal processing controller", "sysfs_id": "/devices/pci0000:00/0000:00:04.0", "sysfs_bus_id": "0000:00:04.0", - "resources": [ - { - "type": "irq", - "base": 16, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 206074675200, - "range": 32768, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 0, "command": 2, "header_type": 0, "secondary_bus": 0, - "irq": 16, "prog_if": 0 }, "driver": "proc_thermal", @@ -2718,28 +2515,11 @@ "model": "Intel Communication controller", "sysfs_id": "/devices/pci0000:00/0000:00:16.0", "sysfs_bus_id": "0000:00:16.0", - "resources": [ - { - "type": "irq", - "base": 136, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 206074728448, - "range": 4096, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 0, "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 136, "prog_if": 0 }, "driver": "mei_me", @@ -2802,36 +2582,11 @@ "model": "Intel System peripheral", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:00.0/0000:07:00.0", "sysfs_bus_id": "0000:07:00.0", - "resources": [ - { - "type": "irq", - "base": 16, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 3992977408, - "range": 262144, - "enabled": true, - "access": "read_write", - "prefetch": "no" - }, - { - "type": "mem", - "base": 3993239552, - "range": 4096, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 0, "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 16, "prog_if": 0 }, "driver": "thunderbolt", @@ -2894,28 +2649,11 @@ "model": "Intel Signal processing controller", "sysfs_id": "/devices/pci0000:00/0000:00:14.2", "sysfs_bus_id": "0000:00:14.2", - "resources": [ - { - "type": "irq", - "base": 18, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 206074732544, - "range": 4096, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 2, "command": 2, "header_type": 0, "secondary_bus": 0, - "irq": 18, "prog_if": 0 }, "driver": "intel_pch_thermal", @@ -2985,20 +2723,6 @@ "range": 32, "enabled": true, "access": "read_write" - }, - { - "type": "irq", - "base": 16, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 206074724352, - "range": 256, - "enabled": true, - "access": "read_write", - "prefetch": "no" } ], "detail": { @@ -3006,7 +2730,6 @@ "command": 3, "header_type": 0, "secondary_bus": 0, - "irq": 16, "prog_if": 0 }, "driver": "i801_smbus", @@ -3074,36 +2797,11 @@ "model": "Intel Multimedia controller", "sysfs_id": "/devices/pci0000:00/0000:00:1f.3", "sysfs_bus_id": "0000:00:1f.3", - "resources": [ - { - "type": "irq", - "base": 172, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 206074544128, - "range": 65536, - "enabled": true, - "access": "read_write", - "prefetch": "no" - }, - { - "type": "mem", - "base": 206074707968, - "range": 16384, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 3, "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 172, "prog_if": 128 }, "driver": "snd_hda_intel", @@ -3166,28 +2864,11 @@ "model": "Mass storage controller", "sysfs_id": "/devices/pci0000:00/0000:00:1c.4/0000:04:00.0", "sysfs_bus_id": "0000:04:00.0", - "resources": [ - { - "type": "irq", - "base": 16, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 3994025984, - "range": 16384, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 0, "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 16, "prog_if": 2 }, "driver": "nvme", @@ -3204,90 +2885,6 @@ "system": { "form_factor": "laptop" }, - "usb": [ - { - "index": 39, - "attached_to": 44, - "class_list": [ - "usb", - "unknown" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "0000", - "name": "Unclassified device", - "value": 0 - }, - "sub_class": { - "hex": "0000", - "name": "Unclassified device", - "value": 0 - }, - "vendor": { - "hex": "06cb", - "value": 1739 - }, - "device": { - "hex": "009a", - "value": 154 - }, - "revision": { - "hex": "0000", - "name": "1.64", - "value": 0 - }, - "serial": "4a76b8863642", - "model": "Unclassified device", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-9/1-9:1.0", - "sysfs_bus_id": "1-9:1.0", - "resources": [ - { - "type": "baud", - "speed": 12000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "00ff", - "name": "vendor_spec", - "value": 255 - }, - "device_subclass": { - "hex": "0010", - "name": "audio_video", - "value": 16 - }, - "device_protocol": 255, - "interface_class": { - "hex": "00ff", - "name": "vendor_spec", - "value": 255 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 0, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "module_alias": "usb:v06CBp009Ad0164dcFFdsc10dpFFicFFisc00ip00in00" - } - ], "usb_controller": [ { "index": 12, @@ -3343,28 +2940,11 @@ "model": "Intel USB Controller", "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/0000:05:00.0/0000:06:02.0/0000:3b:00.0", "sysfs_bus_id": "0000:3b:00.0", - "resources": [ - { - "type": "irq", - "base": 137, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 3622830080, - "range": 65536, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 0, "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 137, "prog_if": 48 }, "driver": "xhci_hcd", @@ -3431,28 +3011,11 @@ "model": "Intel USB Controller", "sysfs_id": "/devices/pci0000:00/0000:00:14.0", "sysfs_bus_id": "0000:00:14.0", - "resources": [ - { - "type": "irq", - "base": 128, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 206074609664, - "range": 65536, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], "detail": { "function": 0, "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 128, "prog_if": 48 }, "driver": "xhci_hcd", @@ -3636,38 +3199,40 @@ ] } ], - "chassis": { - "handle": 14, - "manufacturer": "LENOVO", - "version": "None", - "chassis_type": { - "hex": "000a", - "name": "Notebook", - "value": 10 - }, - "lock_present": false, - "bootup_state": { - "hex": "0002", - "name": "Unknown", - "value": 2 - }, - "power_state": { - "hex": "0002", - "name": "Unknown", - "value": 2 - }, - "thermal_state": { - "hex": "0002", - "name": "Unknown", - "value": 2 - }, - "security_state": { - "hex": "0002", - "name": "Unknown", - "value": 2 - }, - "oem": "0x0" - }, + "chassis": [ + { + "handle": 14, + "manufacturer": "LENOVO", + "version": "None", + "chassis_type": { + "hex": "000a", + "name": "Notebook", + "value": 10 + }, + "lock_present": false, + "bootup_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "power_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "thermal_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "security_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "oem": "0x0" + } + ], "config": { "handle": 34 }, @@ -3736,7 +3301,7 @@ "name": "None", "value": 3 }, - "max_size": 8388608, + "max_size": "0x800000", "error_handle": 65534, "slots": 2 } @@ -3745,8 +3310,8 @@ { "handle": 6, "array_handle": 3, - "start_address": 0, - "end_address": 8589934592, + "start_address": "0x0", + "end_address": "0x200000000", "part_width": 2 } ], @@ -3825,8 +3390,8 @@ "value": 2 }, "syndrome": 0, - "array_address": 2147483648, - "device_address": 2147483648, + "array_address": "0x80000000", + "device_address": "0x80000000", "range": 2147483648 } ], @@ -4069,4 +3634,4 @@ } } } -} \ No newline at end of file +} -- cgit v1.3.1 From b45860b940d7082f1df9cd23be4e5f277fc777f1 Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Fri, 16 Jan 2026 17:38:42 -0600 Subject: enable printing on ganymede --- hosts/mercury/nixos.nix | 2 ++ 1 file changed, 2 insertions(+) (limited to 'hosts') diff --git a/hosts/mercury/nixos.nix b/hosts/mercury/nixos.nix index 631a537..dcdd8c6 100644 --- a/hosts/mercury/nixos.nix +++ b/hosts/mercury/nixos.nix @@ -18,6 +18,8 @@ dataDir = "/home/collin/.local/syncthing"; }; + services.printing.enable = true; + facter.reportPath = ./facter.json; environment.defaultPackages = lib.mkForce []; # im not a noob -- cgit v1.3.1 From 5253ac591f124183c12a0d5527f9b52e1c855ea3 Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Fri, 16 Jan 2026 17:46:31 -0600 Subject: reorganize and add wallpaper(s) --- hosts/mercury/config.nix | 3 +-- hosts/mercury/hintergrund2.png | Bin 11700308 -> 0 bytes hosts/mercury/riverboats.png | Bin 26692151 -> 0 bytes hosts/mercury/wallpaper.jpg | Bin 169046 -> 0 bytes hosts/mercury/wallpapers/abstract-swirls.jpg | Bin 0 -> 418147 bytes hosts/mercury/wallpapers/astronaut.jpg | Bin 0 -> 169046 bytes hosts/mercury/wallpapers/hintergrund2.png | Bin 0 -> 11700308 bytes hosts/mercury/wallpapers/riverboats.png | Bin 0 -> 26692151 bytes 8 files changed, 1 insertion(+), 2 deletions(-) delete mode 100644 hosts/mercury/hintergrund2.png delete mode 100644 hosts/mercury/riverboats.png delete mode 100644 hosts/mercury/wallpaper.jpg create mode 100644 hosts/mercury/wallpapers/abstract-swirls.jpg create mode 100644 hosts/mercury/wallpapers/astronaut.jpg create mode 100644 hosts/mercury/wallpapers/hintergrund2.png create mode 100644 hosts/mercury/wallpapers/riverboats.png (limited to 'hosts') diff --git a/hosts/mercury/config.nix b/hosts/mercury/config.nix index 657c4e5..e9c7d9e 100644 --- a/hosts/mercury/config.nix +++ b/hosts/mercury/config.nix @@ -4,7 +4,7 @@ user.name = "collin"; desktop = { - wallpaper = ./wallpaper.jpg; + wallpaper = ./wallpapers/abstract-swirls.jpg; gtk.enable = true; greetd = { enable = true; @@ -12,7 +12,6 @@ }; wm = { - # niri.enable = true; sway.enable = true; components = { diff --git a/hosts/mercury/hintergrund2.png b/hosts/mercury/hintergrund2.png deleted file mode 100644 index 6cf9a8f..0000000 Binary files a/hosts/mercury/hintergrund2.png and /dev/null differ diff --git a/hosts/mercury/riverboats.png b/hosts/mercury/riverboats.png deleted file mode 100644 index c390ca7..0000000 Binary files a/hosts/mercury/riverboats.png and /dev/null differ diff --git a/hosts/mercury/wallpaper.jpg b/hosts/mercury/wallpaper.jpg deleted file mode 100644 index 039afcc..0000000 Binary files a/hosts/mercury/wallpaper.jpg and /dev/null differ diff --git a/hosts/mercury/wallpapers/abstract-swirls.jpg b/hosts/mercury/wallpapers/abstract-swirls.jpg new file mode 100644 index 0000000..0948796 Binary files /dev/null and b/hosts/mercury/wallpapers/abstract-swirls.jpg differ diff --git a/hosts/mercury/wallpapers/astronaut.jpg b/hosts/mercury/wallpapers/astronaut.jpg new file mode 100644 index 0000000..039afcc Binary files /dev/null and b/hosts/mercury/wallpapers/astronaut.jpg differ diff --git a/hosts/mercury/wallpapers/hintergrund2.png b/hosts/mercury/wallpapers/hintergrund2.png new file mode 100644 index 0000000..6cf9a8f Binary files /dev/null and b/hosts/mercury/wallpapers/hintergrund2.png differ diff --git a/hosts/mercury/wallpapers/riverboats.png b/hosts/mercury/wallpapers/riverboats.png new file mode 100644 index 0000000..c390ca7 Binary files /dev/null and b/hosts/mercury/wallpapers/riverboats.png differ -- cgit v1.3.1