nixos-configs/outputs.nix
matt1432 b06823ef6d
All checks were successful
Discord / discord commits (push) Has been skipped
chore: update sources
Flake Inputs:
• Updated input 'ags':
    'github:Aylur/ags/12e0bfe' (2024-11-18)
  → 'github:Aylur/ags/8115996' (2024-11-22)

• Updated input 'astal':
    'github:Aylur/astal/920e7d2' (2024-11-18)
  → 'github:Aylur/astal/4b87bb6' (2024-11-22)

• Updated input 'custom-sidebar-src':
    'github:elchininet/custom-sidebar/67acfa8' (2024-11-18)
  → 'github:elchininet/custom-sidebar/0687caa' (2024-11-21)

• Updated input 'discord-overlay':
    'github:matt1432/discord-nightly-overlay/90d33e6' (2024-11-18)
  → 'github:matt1432/discord-nightly-overlay/d6310e9' (2024-11-20)

• Updated input 'gpu-screen-recorder-src':
    'git+https://repo.dec05eba.com/gpu-screen-recorder?ref=refs/heads/master&rev=6e0f541' (2024-11-18)
  → 'git+https://repo.dec05eba.com/gpu-screen-recorder?ref=refs/heads/master&rev=8644c72' (2024-11-22)

• Updated input 'ha-fallback-conversation-src':
    'github:m50/ha-fallback-conversation/523d91a' (2024-09-28)
  → 'github:m50/ha-fallback-conversation/0d1cb73' (2024-11-20)

• Updated input 'home-manager':
    'github:nix-community/home-manager/a46e702' (2024-11-19)
  → 'github:nix-community/home-manager/8cf9cb2' (2024-11-22)

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/c4eda46' (2024-11-19)
  → 'github:hyprwm/Hyprland/745a82c' (2024-11-22)

• Updated input 'hyprpaper':
    'github:hyprwm/hyprpaper/3f8cc92' (2024-10-25)
  → 'github:hyprwm/hyprpaper/0b5e350' (2024-11-22)

• Updated input 'hyprutils':
    'github:hyprwm/hyprutils/e911361' (2024-11-15)
  → 'github:hyprwm/hyprutils/b26f33c' (2024-11-22)

• Updated input 'nh':
    'github:viperML/nh/8195c25' (2024-11-19)
  → 'github:viperML/nh/cff51af' (2024-11-20)

• Updated input 'nix-gaming':
    'github:fufexan/nix-gaming/d89390f' (2024-11-19)
  → 'github:fufexan/nix-gaming/969f571' (2024-11-23)

• Updated input 'nixd':
    'github:nix-community/nixd/0f3c0c7' (2024-11-15)
  → 'github:nix-community/nixd/6d80199' (2024-11-21)

• Updated input 'nixpkgs-wayland':
    'github:nix-community/nixpkgs-wayland/1e388ca' (2024-11-19)
  → 'github:nix-community/nixpkgs-wayland/df3091f' (2024-11-22)

• Updated input 'pcsd':
    'github:matt1432/nixos-pcsd/dbd3897' (2024-11-19)
  → 'github:matt1432/nixos-pcsd/97aeff2' (2024-11-23)

• Updated input 'sops-nix':
    'github:Mic92/sops-nix/e39947d' (2024-11-18)
  → 'github:Mic92/sops-nix/53c853f' (2024-11-21)

• Updated input 'spotifyplus-src':
    'github:thlucas1/homeassistantcomponent_spotifyplus/751b378' (2024-11-15)
  → 'github:thlucas1/homeassistantcomponent_spotifyplus/218dcb9' (2024-11-20)

• Updated input 'spotifywebapi-src':
    'github:thlucas1/SpotifyWebApiPython/cf7c41c' (2024-11-19)
  → 'github:thlucas1/SpotifyWebApiPython/f9cc96e' (2024-11-20)

• Updated input 'tuya-local-src':
    'github:make-all/tuya-local/6a9ef10' (2024-11-19)
  → 'github:make-all/tuya-local/58587bc' (2024-11-22)

Docker Images:
• vegardit/gitea-act-runner dind-latest:
   sha256:ee4962ccfb8e99e8541f59130ddfda5b82b5c4c82eba513f2ee03216c2d0dd85
 → sha256:3c856bdd10f7f0035ef7812e774e64023af7b7d609c29e32177320e11039974f

• postgres 14:
   sha256:823196c45d0cdbf70e5782e1b6cc116b3417211ce1884c373afff97abec7be2f
 → sha256:78b9deeca08fa9749a00e9d30bc879f8f8d021af854c73e2c339b752cb6d708a

• nextcloud fpm:
   sha256:1462206286d1769c499e0f15f4998c9a518a330cacd4cf9c8206904f5dcfc131
 → sha256:e8c17c1734e9e6a89989264aebae20bb9f05c16d16f33fa62875d9b83a7d244d

• postgres 15-alpine:
   sha256:3b5f286a417dde5945504ef9156ff9436ffccf428048d7b52c1574c6fc752bb6
 → sha256:5d4b2f57adc7739452b0be6cee25f263bfc64b609446bcdd8170354cf8ba8e80

• ghcr.io/linuxserver/sabnzbd latest:
   sha256:d9eda6d9bd651886631f01f3ebb1ff33f9f5d04f0fd95be8fb22bc1a779a3d84
 → sha256:1bd04442a6cb35fc8f4a18c474ba93d6600026dcbd364d0577e63cc6cdebfd87

Firefox Addons:
bitwarden: 2024.10.1 -> 2024.11.0
2024-11-23 00:01:12 -05:00

227 lines
5.3 KiB
Nix

{
inputs = let
inherit (import ./inputs) mkDep mkInput extraInputs;
mainInputs = {
systems = mkInput {
owner = "nix-systems";
repo = "default-linux";
};
nixpkgs = mkInput {
owner = "NixOS";
repo = "nixpkgs";
# ref = "nixos-unstable";
# FIXME: https://pr-tracker.nelim.org/?pr=357555
rev = "5e4fbfb6b3de1aa2872b76d49fafc942626e2add";
};
home-manager = mkDep {
owner = "nix-community";
repo = "home-manager";
};
nix-on-droid = mkDep {
owner = "nix-community";
repo = "nix-on-droid";
inputs.home-manager.follows = "home-manager";
};
sops-nix = mkDep {
owner = "Mic92";
repo = "sops-nix";
};
secrets = mkDep {
type = "git";
url = "ssh://git@git.nelim.org/matt1432/nixos-secrets";
inputs.sops-nix.follows = "sops-nix";
};
};
in
mainInputs // extraInputs;
outputs = inputs @ {
nixpkgs,
secrets,
self,
systems,
...
}: let
inherit (self.lib) mkVersion mkNixOS mkNixOnDroid mkPkgs;
perSystem = attrs:
nixpkgs.lib.genAttrs (import systems) (system:
attrs (mkPkgs {inherit system nixpkgs;}));
in {
lib = import ./lib {inherit inputs perSystem;};
nixosModules = import ./nixosModules self;
homeManagerModules = import ./homeManagerModules self;
nixosConfigurations = {
# Desktops
wim = mkNixOS {
extraModules = [
./devices/wim
secrets.nixosModules.default
];
};
binto = mkNixOS {
cudaSupport = true;
extraModules = [./devices/binto];
};
bbsteamie = mkNixOS {
mainUser = "mariah";
extraModules = [./devices/bbsteamie];
};
# NAS
nos = mkNixOS {
cudaSupport = true;
extraModules = [
./devices/nos
secrets.nixosModules.nos
];
};
# Build / test server
servivi = mkNixOS {
extraModules = [
./devices/servivi
secrets.nixosModules.servivi
];
};
# Home-assistant
homie = mkNixOS {
extraModules = [
./devices/homie
secrets.nixosModules.homie
];
};
# Cluster
thingone = mkNixOS {
extraModules = [
(import ./devices/cluster "thingone")
secrets.nixosModules.thingy
];
};
thingtwo = mkNixOS {
extraModules = [
(import ./devices/cluster "thingtwo")
secrets.nixosModules.thingy
];
};
live-image = mkNixOS {
mainUser = "nixos";
extraModules = [./devices/live-image];
};
};
nixOnDroidConfigurations.default =
mkNixOnDroid [./devices/android];
scopedPackages =
perSystem (pkgs:
import ./scopedPackages {inherit inputs mkVersion pkgs;});
packages =
perSystem (pkgs:
import ./packages {inherit inputs mkVersion pkgs;});
overlays = import ./overlays {};
apps =
perSystem (pkgs:
import ./apps {inherit inputs pkgs;});
devShells = perSystem (pkgs: let
bumpNpmDeps = pkgs.writeShellApplication {
name = "bumpNpmDeps";
runtimeInputs = builtins.attrValues {
inherit
(pkgs)
prefetch-npm-deps
nodejs_latest
;
};
text = ''
npm i --package-lock-only || true # this command will fail but still updates the main lockfile
prefetch-npm-deps ./package-lock.json
'';
};
in {
default = pkgs.mkShell {
packages = [
(pkgs.writeShellScriptBin "mkIso" ''
isoConfig="nixosConfigurations.live-image.config.system.build.isoImage"
nom build $(realpath /etc/nixos)#$isoConfig
'')
(pkgs.writeShellApplication {
name = "fixUidChange";
text = ''
GROUP="$1"
OLD_GID="$2"
NEW_GID="$3"
sudo sed -i -e "/^$GROUP:/d" /etc/group # Remove generated group entry
sudo find / -gid "$OLD_GID" -exec chgrp "$NEW_GID" {} + # Change GID on existing files
sudo nixos-rebuild --switch # Regenerate /etc/group with new GID
'';
})
];
};
netdaemon = pkgs.mkShell {
packages = [
pkgs.dotnet-sdk_8
];
};
node = pkgs.mkShell {
packages =
(builtins.attrValues {
inherit
(pkgs)
nodejs_latest
typescript
;
})
++ [bumpNpmDeps];
};
subtitles-dev = pkgs.mkShell {
packages =
(builtins.attrValues {
inherit
(pkgs)
nodejs_latest
ffmpeg-full
typescript
;
inherit
(pkgs.nodePackages)
ts-node
;
})
++ [bumpNpmDeps];
};
});
# For nix-fast-build. I use a custom output to alleviate eval time of this flake. ie. when doing nix flake show
nixFastChecks =
perSystem (pkgs:
import ./checks {inherit pkgs self;});
formatter = perSystem (pkgs: pkgs.alejandra);
};
}