matt1432
a4499f3cd4
All checks were successful
Discord / discord commits (push) Has been skipped
Flake Inputs: • Updated input 'discord-overlay': 'github:matt1432/discord-nightly-overlay/1e367d5' (2024-08-05) → 'github:matt1432/discord-nightly-overlay/b9f8aa6' (2024-08-06) • Updated input 'gtk-theme-src': 'github:dracula/gtk/100310f' (2024-07-29) → 'github:dracula/gtk/f339612' (2024-08-06) • Updated input 'home-manager': 'github:nix-community/home-manager/afc892d' (2024-08-02) → 'github:nix-community/home-manager/a6c7439' (2024-08-06) • Updated input 'hyprland': 'git+https://github.com/hyprwm/Hyprland?ref=refs/heads/main&rev=2b52057&submodules=1' (2024-08-04) → 'git+https://github.com/hyprwm/Hyprland?ref=refs/heads/main&rev=b0a70f6&submodules=1' (2024-08-06) • Updated input 'jovian': 'github:Jovian-Experiments/Jovian-NixOS/bcfe9dc' (2024-08-03) → 'github:Jovian-Experiments/Jovian-NixOS/99099d7' (2024-08-06) • Updated input 'nixd': 'github:nix-community/nixd/d938026' (2024-08-02) → 'github:nix-community/nixd/af1255e' (2024-08-06) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/d049530' (2024-08-02) → 'github:NixOS/nixpkgs/cb9a96f' (2024-08-04) • Updated input 'nixpkgs-wayland': 'github:nix-community/nixpkgs-wayland/c2ccf4e' (2024-08-05) → 'github:nix-community/nixpkgs-wayland/2c512b8' (2024-08-06) • Updated input 'pcsd': 'github:matt1432/nixos-pcsd/bd2cfa7' (2024-08-02) → 'github:matt1432/nixos-pcsd/f7870c6' (2024-08-06) • Updated input 'sops-nix': 'github:Mic92/sops-nix/eb34eb5' (2024-07-27) → 'github:Mic92/sops-nix/8ae4779' (2024-08-05) • Updated input 'ts-for-gir-src': 'github:gjsify/ts-for-gir/70838c7' (2024-07-26) → 'github:gjsify/ts-for-gir/0141c0e' (2024-08-05) Docker Images: • rssbridge/rss-bridge latest: sha256:e13b87cd36a828237d9e284e66ca6fb55e1d9819d6c925e35a689e6b529aeb39 → sha256:5b080be160ac5e5c5a0d450f9e431a472b2ee9e95353d905628ed804efd96783 • ghcr.io/linuxserver/bazarr latest: sha256:e70de8a714ac57395d45052392001ec433b8f48aa1c204f13dae312cbcbe43af → sha256:4222fa316c51c2d0257384e5562541059698c220abbb00170eb93c3ddfa52d18 • ghcr.io/linuxserver/calibre-web latest: sha256:14c3eafe5aec2344581e27991adc6545c9928f54020b50affe1678b8b5f22021 → sha256:ff7e870dec503f5bd02c5a528ba1f96617900cb4853ef05176bfbc278b5d263d • craumix/jmusicbot latest: sha256:0afa4efbd43a718fba9108cdab8865f80bb1690f690920e732303d081507868d → sha256:ba0d7e7e4b1dba86981687e3c8ada6b7a7170c6b4884c12a16c6ee046e2df763
331 lines
6.5 KiB
Nix
331 lines
6.5 KiB
Nix
let
|
|
lock = builtins.fromJSON (builtins.readFile ./flake.lock);
|
|
lib = import "${builtins.fetchTarball {
|
|
url = "https://github.com/NixOS/nixpkgs/archive/${lock.nodes.nixpkgs.locked.rev}.tar.gz";
|
|
sha256 = lock.nodes.nixpkgs.locked.narHash;
|
|
}}/lib";
|
|
|
|
inherit (lib) attrValues findFirst foldl' hasAttr listToAttrs matchAttrs map optionalAttrs recursiveUpdate removeAttrs;
|
|
|
|
recursiveUpdateList = list: foldl' recursiveUpdate {} list;
|
|
|
|
# Misc functions
|
|
mkInput = {type ? "github", ...} @ info: let
|
|
input =
|
|
findFirst
|
|
(x: matchAttrs (removeAttrs info ["inputs"]) (x.original or {})) {}
|
|
(attrValues lock.nodes);
|
|
|
|
mkOverride = i:
|
|
optionalAttrs
|
|
(hasAttr i (input.inputs or {}))
|
|
{inputs.${i}.follows = i;};
|
|
in
|
|
recursiveUpdateList [
|
|
info
|
|
{inherit type;}
|
|
(mkOverride "systems")
|
|
(mkOverride "flake-utils")
|
|
(mkOverride "lib-aggregate")
|
|
];
|
|
|
|
mkDep = info: mkInput (recursiveUpdate info {inputs.nixpkgs.follows = "nixpkgs";});
|
|
mkHyprDep = info: mkInput (recursiveUpdate info {inputs.hyprland.follows = "hyprland";});
|
|
mkSrc = info: mkInput (info // {flake = false;});
|
|
|
|
# Inputs
|
|
nixTools = {
|
|
nix-fast-build = mkDep {
|
|
owner = "Mic92";
|
|
repo = "nix-fast-build";
|
|
};
|
|
|
|
nurl = mkDep {
|
|
owner = "matt1432";
|
|
repo = "nurl";
|
|
};
|
|
|
|
nix-index-db = mkDep {
|
|
owner = "Mic92";
|
|
repo = "nix-index-database";
|
|
};
|
|
|
|
nh = mkDep {
|
|
owner = "viperML";
|
|
repo = "nh";
|
|
};
|
|
|
|
nix-melt = mkDep {
|
|
owner = "nix-community";
|
|
repo = "nix-melt";
|
|
};
|
|
|
|
# These are here to make sure all 'systems' are the same
|
|
flake-utils = mkInput {
|
|
owner = "numtide";
|
|
repo = "flake-utils";
|
|
};
|
|
lib-aggregate = mkInput {
|
|
owner = "nix-community";
|
|
repo = "lib-aggregate";
|
|
};
|
|
};
|
|
|
|
overlays = {
|
|
nixpkgs-wayland = mkDep {
|
|
owner = "nix-community";
|
|
repo = "nixpkgs-wayland";
|
|
};
|
|
|
|
nix-gaming = mkDep {
|
|
owner = "fufexan";
|
|
repo = "nix-gaming";
|
|
};
|
|
};
|
|
|
|
nvimInputs = {
|
|
# uses nixVersions.nix_2_19
|
|
nixd = mkDep {
|
|
owner = "nix-community";
|
|
repo = "nixd";
|
|
};
|
|
};
|
|
|
|
clusterInputs = {
|
|
pcsd = mkDep {
|
|
owner = "matt1432";
|
|
repo = "nixos-pcsd";
|
|
};
|
|
|
|
headscale = mkDep {
|
|
owner = "juanfont";
|
|
repo = "headscale";
|
|
};
|
|
|
|
caddy-plugins = mkDep {
|
|
owner = "matt1432";
|
|
repo = "nixos-caddy-cloudflare";
|
|
};
|
|
};
|
|
|
|
serviviInputs = {
|
|
minix = mkDep {
|
|
owner = "matt1432";
|
|
repo = "Minix";
|
|
};
|
|
|
|
pr-tracker = mkDep {
|
|
owner = "matt1432";
|
|
repo = "pr-tracker";
|
|
};
|
|
};
|
|
|
|
nosInputs = {
|
|
khepri = mkDep {
|
|
owner = "matt1432";
|
|
repo = "khepri";
|
|
};
|
|
|
|
jellyfin-flake = mkDep {
|
|
owner = "matt1432";
|
|
repo = "nixos-jellyfin";
|
|
};
|
|
|
|
bazarr-bulk = mkDep {
|
|
owner = "mateoradman";
|
|
repo = "bazarr-bulk";
|
|
};
|
|
|
|
subsync = mkDep {
|
|
owner = "matt1432";
|
|
repo = "subsync";
|
|
|
|
# Keep version that uses Sphinxbase
|
|
rev = "ee9e1592ae4ec7c694d8857aa72be079d81ea209";
|
|
};
|
|
};
|
|
|
|
desktopInputs = {
|
|
hyprlandInputs = {
|
|
hyprland = mkDep {
|
|
type = "git";
|
|
url = "https://github.com/hyprwm/Hyprland";
|
|
submodules = true;
|
|
};
|
|
|
|
hyprland-plugins = mkHyprDep {
|
|
owner = "hyprwm";
|
|
repo = "hyprland-plugins";
|
|
|
|
# type = "path";
|
|
# path = "/home/matt/git/hyprland-plugins";
|
|
};
|
|
|
|
hyprgrass = mkHyprDep {
|
|
owner = "horriblename";
|
|
repo = "hyprgrass";
|
|
};
|
|
|
|
grim-hyprland = mkDep {
|
|
owner = "eriedaberrie";
|
|
repo = "grim-hyprland";
|
|
};
|
|
|
|
discord-overlay = mkDep {
|
|
owner = "matt1432";
|
|
repo = "discord-nightly-overlay";
|
|
};
|
|
};
|
|
|
|
agsInputs = {
|
|
ags = mkDep {
|
|
owner = "Aylur";
|
|
repo = "ags";
|
|
};
|
|
|
|
astal-tray = mkDep {
|
|
owner = "astal-sh";
|
|
repo = "tray";
|
|
};
|
|
|
|
gtk-session-lock = mkDep {
|
|
owner = "Cu3PO42";
|
|
repo = "gtk-session-lock";
|
|
};
|
|
};
|
|
};
|
|
|
|
srcs = [
|
|
# Nvim plugins
|
|
{
|
|
name = "vimplugin-easytables-src";
|
|
owner = "Myzel394";
|
|
repo = "easytables.nvim";
|
|
}
|
|
{
|
|
name = "vimplugin-ts-error-translator-src";
|
|
owner = "dmmulroy";
|
|
repo = "ts-error-translator.nvim";
|
|
}
|
|
|
|
# Overlays & packages
|
|
{
|
|
owner = "rushsteve1";
|
|
repo = "trash-d";
|
|
}
|
|
{
|
|
type = "gitlab";
|
|
owner = "mishakmak";
|
|
repo = "pam-fprint-grosshack";
|
|
}
|
|
{
|
|
type = "gitlab";
|
|
owner = "phoneybadger";
|
|
repo = "pokemon-colorscripts";
|
|
}
|
|
{
|
|
name = "gpu-screen-recorder-src";
|
|
type = "git";
|
|
url = "https://repo.dec05eba.com/gpu-screen-recorder";
|
|
}
|
|
{
|
|
owner = "libratbag";
|
|
repo = "libratbag";
|
|
}
|
|
{
|
|
owner = "libratbag";
|
|
repo = "piper";
|
|
}
|
|
{
|
|
owner = "gjsify";
|
|
repo = "ts-for-gir";
|
|
}
|
|
{
|
|
owner = "jcnils";
|
|
repo = "protonhax";
|
|
}
|
|
|
|
# MPV scripts
|
|
{
|
|
name = "modernx-src";
|
|
owner = "cyl0";
|
|
repo = "ModernX";
|
|
}
|
|
{
|
|
owner = "d87";
|
|
repo = "mpv-persist-properties";
|
|
}
|
|
{
|
|
owner = "christoph-heinrich";
|
|
repo = "mpv-pointer-event";
|
|
}
|
|
{
|
|
owner = "christoph-heinrich";
|
|
repo = "mpv-touch-gestures";
|
|
}
|
|
{
|
|
name = "eisa-scripts-src";
|
|
owner = "Eisa01";
|
|
repo = "mpv-scripts";
|
|
}
|
|
|
|
## Theme sources
|
|
{
|
|
name = "bat-theme-src";
|
|
owner = "matt1432";
|
|
repo = "bat";
|
|
}
|
|
{
|
|
owner = "Godiesc";
|
|
repo = "firefox-gx";
|
|
ref = "v.9.4";
|
|
}
|
|
{
|
|
name = "git-theme-src";
|
|
owner = "dracula";
|
|
repo = "git";
|
|
}
|
|
{
|
|
name = "gtk-theme-src";
|
|
owner = "dracula";
|
|
repo = "gtk";
|
|
}
|
|
{
|
|
name = "nvim-theme-src";
|
|
owner = "Mofiqul";
|
|
repo = "dracula.nvim";
|
|
}
|
|
{
|
|
owner = "matt1432";
|
|
repo = "dracula-plymouth";
|
|
}
|
|
{
|
|
name = "sioyek-theme-src";
|
|
owner = "dracula";
|
|
repo = "sioyek";
|
|
}
|
|
];
|
|
in {
|
|
inherit mkDep mkInput mkSrc;
|
|
|
|
otherInputs =
|
|
{
|
|
flakegen = {
|
|
url = "github:jorsn/flakegen";
|
|
inputs.systems.follows = "systems";
|
|
};
|
|
}
|
|
// nixTools
|
|
// overlays
|
|
// nvimInputs
|
|
// clusterInputs
|
|
// serviviInputs
|
|
// nosInputs
|
|
// desktopInputs.hyprlandInputs
|
|
// desktopInputs.agsInputs
|
|
// (listToAttrs (map (x: {
|
|
name = x.name or "${x.repo}-src";
|
|
value = mkSrc (removeAttrs x ["name"]);
|
|
})
|
|
srcs));
|
|
}
|