nixos-configs/outputs.nix
matt1432 2d97a15541
All checks were successful
Discord / discord commits (push) Has been skipped
chore: update flake.lock
Flake Inputs:
• Updated input 'astal':
    'github:Aylur/astal/71ee1ea' (2024-09-14)
  → 'github:Aylur/astal/36adb5a' (2024-09-18)

• Updated input 'discord-overlay':
    'github:matt1432/discord-nightly-overlay/1975161' (2024-09-14)
  → 'github:matt1432/discord-nightly-overlay/64c50d0' (2024-09-18)

• Updated input 'gpu-screen-recorder-src':
    'git+https://repo.dec05eba.com/gpu-screen-recorder?ref=refs/heads/master&rev=4a8544e' (2024-09-15)
  → 'git+https://repo.dec05eba.com/gpu-screen-recorder?ref=refs/heads/master&rev=6e73e40' (2024-09-18)

• Updated input 'home-manager':
    'github:nix-community/home-manager/a9c9cc6' (2024-09-15)
  → 'github:nix-community/home-manager/d2493de' (2024-09-17)

• Updated input 'hyprland':
    'git+https://github.com/hyprwm/Hyprland?ref=refs/heads/main&rev=9e35656&submodules=1' (2024-09-15)
  → 'git+https://github.com/hyprwm/Hyprland?ref=refs/heads/main&rev=e6cf643&submodules=1' (2024-09-18)

• Updated input 'hyprland/aquamarine':
    'github:hyprwm/aquamarine/e4a1320' (2024-09-07)
  → 'github:hyprwm/aquamarine/752d0fb' (2024-09-18)

• Updated input 'jovian':
    'github:Jovian-Experiments/Jovian-NixOS/02cf60c' (2024-09-12)
  → 'github:Jovian-Experiments/Jovian-NixOS/f7a1bb0' (2024-09-18)

• Updated input 'nix-index-db':
    'github:Mic92/nix-index-database/0a2fba6' (2024-09-15)
  → 'github:Mic92/nix-index-database/c1b0fa0' (2024-09-16)

• Updated input 'nixd':
    'github:nix-community/nixd/f6ca743' (2024-08-22)
  → 'github:nix-community/nixd/e2f0d90' (2024-09-18)

• Updated input 'nixpkgs-wayland':
    'github:nix-community/nixpkgs-wayland/a36467e' (2024-09-15)
  → 'github:nix-community/nixpkgs-wayland/aaedb02' (2024-09-18)

• Updated input 'sops-nix':
    'github:Mic92/sops-nix/f30b1ba' (2024-09-13)
  → 'github:Mic92/sops-nix/e2d404a' (2024-09-16)

Docker Images:
• vegardit/gitea-act-runner dind-latest:
   sha256:acc510a4754aa871dcaac69396055fea3117b5378a36efd9fbf3b3db542fa81a
 → sha256:378efec2a8f9e17874965b6a03ea935b0195eb85bdf60305eee994f684134f27

• ghcr.io/linuxserver/bazarr latest:
   sha256:476c315f0381d0b8c7921fbf3116b65e96ae32128df5fd27600e97213b862809
 → sha256:71f545e4a6cfda02798fd531bfc27b14cbf7345bb28fe503467fb1ab13c3bfbc

• ghcr.io/linuxserver/prowlarr latest:
   sha256:c1318191d5211ac7462c754422eafe350ed0de61c4160065a420896068ec1ccc
 → sha256:bddc64a17aa38972f4c032f67efc3bf0a498883257e615a2d807ca44550cebf0

Firefox Addons:
darkreader: 4.9.89 -> 4.9.92
2024-09-18 17:47:10 -04:00

214 lines
4.9 KiB
Nix

{
inputs = let
inherit (import ./inputs.nix) mkDep mkInput otherInputs;
mainInputs = {
systems = mkInput {
owner = "nix-systems";
repo = "default-linux";
};
nixpkgs = mkInput {
owner = "NixOS";
repo = "nixpkgs";
ref = "nixos-unstable-small";
};
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";
};
jovian = mkDep {
owner = "Jovian-Experiments";
repo = "Jovian-NixOS";
};
};
in
mainInputs // otherInputs;
outputs = inputs @ {
nixpkgs,
secrets,
self,
systems,
...
}: let
inherit (import ./lib {inherit inputs;}) mkVersion mkNixOS mkNixOnDroid mkPkgs;
perSystem = attrs:
nixpkgs.lib.genAttrs (import systems) (system:
attrs (mkPkgs {inherit system nixpkgs;}));
in {
nixosModules = import ./nixosModules self;
homeManagerModules = import ./homeManagerModules self;
nixosConfigurations = {
# Desktops
wim = mkNixOS {
extraModules = [
./devices/wim
secrets.nixosModules.default
];
};
binto = mkNixOS {
# FIXME: https://github.com/NixOS/nixpkgs/issues/338315
# cudaSupport = true;
extraModules = [./devices/binto];
};
bbsteamie = mkNixOS {extraModules = [./devices/bbsteamie];};
# NAS
nos = mkNixOS {
# FIXME: https://github.com/NixOS/nixpkgs/issues/338315
# 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 {
extraModules = [
"${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix"
{
vars = {
mainUser = "nixos";
hostName = "nixos";
};
}
];
};
};
nixOnDroidConfigurations.default =
mkNixOnDroid [./devices/android];
legacyPackages =
perSystem (pkgs:
import ./legacyPackages {inherit mkVersion pkgs inputs;});
packages =
perSystem (pkgs:
import ./packages {inherit self pkgs mkVersion inputs;});
overlays = import ./overlays {};
apps =
perSystem (pkgs:
import ./apps {inherit inputs pkgs;});
devShells = perSystem (pkgs: {
default = pkgs.mkShell {
packages = [
(pkgs.writeShellScriptBin "mkIso" ''
isoConfig="nixosConfigurations.live-image.config.system.build.isoImage"
nom build $(realpath /etc/nixos)#$isoConfig
'')
];
};
node = pkgs.mkShell {
packages =
(builtins.attrValues {
inherit
(pkgs)
nodejs_latest
typescript
;
})
++ [
(pkgs.writeShellApplication {
name = "updateNpmDeps";
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
'';
})
];
};
subtitles-dev = pkgs.mkShell {
packages = builtins.attrValues {
inherit
(pkgs)
nodejs_latest
ffmpeg-full
typescript
;
inherit
(pkgs.nodePackages)
ts-node
;
};
};
});
# 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);
};
}