From e8676e4a29e0f03d78e84a37587e404ec81fcbf8 Mon Sep 17 00:00:00 2001 From: _cry64 Date: Thu, 5 Mar 2026 15:45:45 +1000 Subject: [PATCH 01/10] restruct inputs + add millenium --- flake.nix | 69 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 37 insertions(+), 32 deletions(-) diff --git a/flake.nix b/flake.nix index 843794c..6b55205 100644 --- a/flake.nix +++ b/flake.nix @@ -16,8 +16,7 @@ nt.url = "git+https://tearforge.net/cry/nt"; cerulean = { - # url = "git+https://tearforge.net/cry/cerulean"; - url = "/home/me/cry/mk/cerulean"; + url = "github:cry128/cerulean/bleeding"; inputs = { nt.follows = "nt"; systems.follows = "systems"; @@ -25,36 +24,6 @@ }; }; - dobutterfliescry-net = { - url = "git+https://tearforge.net/cry/site"; - inputs = { - nixpkgs.follows = "nixpkgs"; - nixpkgs-unstable.follows = "nixpkgs-unstable"; - systems.follows = "systems"; - }; - }; - - hyprland = { - url = "github:hyprwm/Hyprland"; - inputs = { - # nixpkgs.follows = "nixpkgs"; - # systems.follows = "systems"; - }; - }; - - awww = { - url = "git+https://codeberg.org/LGFae/awww"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest"; - - nixcord = { - url = "github:FlameFlag/nixcord"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - nixcats.url = "github:BirdeeHub/nixCats-nvim"; - grub2-themes = { url = "github:vinceliuice/grub2-themes"; inputs.nixpkgs.follows = "nixpkgs"; @@ -70,6 +39,33 @@ inputs.nixpkgs.follows = "nixpkgs"; }; + hyprland = { + url = "github:hyprwm/Hyprland"; + inputs = { + # nixpkgs.follows = "nixpkgs"; + # systems.follows = "systems"; + }; + }; + + awww = { + url = "git+https://codeberg.org/LGFae/awww"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + nixcats.url = "github:BirdeeHub/nixCats-nvim"; + + nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest"; + + nixcord = { + url = "github:FlameFlag/nixcord"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + millennium = { + url = "github:trivaris/millennium?dir=packages/nix"; + inputs.nixpkgs.follows = "nixpkgs-unstable"; + }; + spicetify-nix = { url = "github:Gerg-L/spicetify-nix"; inputs = { @@ -77,6 +73,15 @@ nixpkgs.follows = "nixpkgs-unstable"; }; }; + + dobutterfliescry-net = { + url = "git+https://tearforge.net/cry/site"; + inputs = { + nixpkgs.follows = "nixpkgs"; + nixpkgs-unstable.follows = "nixpkgs-unstable"; + systems.follows = "systems"; + }; + }; }; nixConfig = { From 536010e2755bf63c4826072ac89c67656cdb16c1 Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:39:11 +1000 Subject: [PATCH 02/10] disable jack and pulse (?) match flake-foxora --- groups/cryos/default.nix | 4 +-- hosts/modules/core/sound/default.nix | 0 hosts/modules/core/sound/pipewire.nix | 29 -------------------- hosts/myputer/sddm-theme.nix | 35 ------------------------- packages/sddm-theme-corners/default.nix | 24 ----------------- 5 files changed, 2 insertions(+), 90 deletions(-) delete mode 100755 hosts/modules/core/sound/default.nix delete mode 100755 hosts/modules/core/sound/pipewire.nix delete mode 100755 hosts/myputer/sddm-theme.nix delete mode 100755 packages/sddm-theme-corners/default.nix diff --git a/groups/cryos/default.nix b/groups/cryos/default.nix index e24392b..1f37683 100644 --- a/groups/cryos/default.nix +++ b/groups/cryos/default.nix @@ -81,8 +81,8 @@ alsa.enable = true; alsa.support32Bit = true; - pulse.enable = true; - jack.enable = true; + # pulse.enable = true; + # jack.enable = true; }; }; diff --git a/hosts/modules/core/sound/default.nix b/hosts/modules/core/sound/default.nix deleted file mode 100755 index e69de29..0000000 diff --git a/hosts/modules/core/sound/pipewire.nix b/hosts/modules/core/sound/pipewire.nix deleted file mode 100755 index d3d1852..0000000 --- a/hosts/modules/core/sound/pipewire.nix +++ /dev/null @@ -1,29 +0,0 @@ -# Credit: https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles/ -{ pkgs, ... }: - -{ - # Enable sound with pipewire. - hardware.pulseaudio.enable = false; - security.rtkit.enable = true; - services.pipewire = { - enable = true; - - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - jack.enable = true; - - wireplumber.enable = true; - - # use the example session manager (no others are packaged yet so this is enabled by default, - # no need to redefine it in your config for now) - # media-session.enable = true; - }; - - # TODO: these should instead be manager but home-manager - environment.systemPackages = with pkgs; [ - helvum - easyeffects - ]; -} - diff --git a/hosts/myputer/sddm-theme.nix b/hosts/myputer/sddm-theme.nix deleted file mode 100755 index d60c046..0000000 --- a/hosts/myputer/sddm-theme.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ pkgs }: - -let - #image = pkgs.fetchurl { - # url = "https://"; - # sha256 = ""; - #}; -in -pkgs.stdenv.mkDerivation { - name = "sddm-theme"; - src = pkgs.fetchFromGitHub { - owner = "MarianArlt"; - repo = "sddm-sugar-dark"; - rev = "ceb2c455663429be03ba62d9f898c571650ef7fe"; - sha256 = "0153z1kylbhc9d12nxy9vpn0spxgrhgy36wy37pk6ysq7akaqlvy"; - }; - # dependencies - buildInputs = with pkgs.libsForQt5; [ - qt5.qtbase - qt5.qtx11extras - qt5.qtquickcontrols2 - qt5.qtgraphicaleffects - qt5.wrapQtAppsHook - #libsForQt5.qt5.qtquickcontrols2 - #libsForQt5.qt5.qtgraphicaleffects - ]; - installPhase = '' - # move necessary files - mkdir -p $out - cp -R ./* $out/ - ''; - # set background - #rm $out/Background.jpg - #mv ${image} $out/Background.jpg -} diff --git a/packages/sddm-theme-corners/default.nix b/packages/sddm-theme-corners/default.nix deleted file mode 100755 index b0e3789..0000000 --- a/packages/sddm-theme-corners/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{pkgs}: -pkgs.stdenv.mkDerivation { - name = "sddm-theme-corners"; - version = "1.0.0"; - - installPhase = '' - mkdir -p $out/share/sddm/themes - cp -ar $src/corners $out/share/sddm/themes/ - ''; - src = pkgs.fetchFromGitHub { - owner = "aczw"; - repo = "sddm-theme-corners"; - rev = "6ff0ff455261badcae36cd7d151a34479f157a3c"; - sha256 = "0iiasrbl7ciyhq3z02la636as915zk9ph063ac7vm5iwny8vgwh8"; - }; - - buildInputs = with pkgs; [ - libsForQt5.qt5.qtgraphicaleffects - ]; - - nativeBuildInputs = with pkgs; [ - qt5.wrapQtAppsHook - ]; -} From cd379a47e9dc2509b4c2161182386b068fd7921b Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:39:37 +1000 Subject: [PATCH 03/10] use tlrc (rust tldr) --- groups/cryos/programs.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/groups/cryos/programs.nix b/groups/cryos/programs.nix index 49fc8f8..db07b22 100644 --- a/groups/cryos/programs.nix +++ b/groups/cryos/programs.nix @@ -74,7 +74,7 @@ curlie zoxide doggo - tldr + tlrc btop eza yazi From 3ec6673f7c3d710f6acde4917d24b2b5ac1b94cb Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:39:50 +1000 Subject: [PATCH 04/10] --show-trace not needed on rebuild aliases --- homes/me/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/homes/me/default.nix b/homes/me/default.nix index 4b16636..32130dc 100755 --- a/homes/me/default.nix +++ b/homes/me/default.nix @@ -40,8 +40,8 @@ shellAliases = { # rebuild = "sudo nixos-rebuild switch --flake /home/me/flake --show-trace"; # trybuild = "sudo nixos-rebuild test --flake /home/me/flake --show-trace"; - rebuild = "nh os switch ~/flake --show-trace"; - trybuild = "nh os test ~/flake --show-trace"; + rebuild = "nh os switch ~/flake"; + trybuild = "nh os test ~/flake"; brip = "batgrep"; # bat + ripgrep man = "batman"; # bat + man }; From 56b178a16747d1c6771760830c0190b7cafdbc66 Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:40:28 +1000 Subject: [PATCH 05/10] use millennium for steam --- flake.nix | 2 +- hosts/modules/steam.nix | 3 ++- nixpkgs.nix | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 6b55205..4f8ab14 100644 --- a/flake.nix +++ b/flake.nix @@ -62,7 +62,7 @@ }; millennium = { - url = "github:trivaris/millennium?dir=packages/nix"; + url = "github:SteamClientHomebrew/millennium?dir=packages/nix"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; diff --git a/hosts/modules/steam.nix b/hosts/modules/steam.nix index 03343c3..8bffdf3 100644 --- a/hosts/modules/steam.nix +++ b/hosts/modules/steam.nix @@ -1,6 +1,6 @@ { pkgs, - lib, + upkgs, ... }: { nixpkgs.overlays = [ @@ -19,6 +19,7 @@ programs = { steam = { enable = true; + package = upkgs.millennium-steam; gamescopeSession.enable = false; # .desktop entry for gamescope remotePlay.openFirewall = true; diff --git a/nixpkgs.nix b/nixpkgs.nix index f088efc..15c127a 100644 --- a/nixpkgs.nix +++ b/nixpkgs.nix @@ -33,6 +33,7 @@ source = inputs.nixpkgs-unstable; overlays = [ inputs.dobutterfliescry-net.overlays.default + inputs.millennium.overlays.default (import ./overlays args) ]; config = { From 82c10b793ba16c982c9e945791fda34e9bf04c6c Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:41:24 +1000 Subject: [PATCH 06/10] add melonloader --- hosts/myputer/default.nix | 2 + overlays/default.nix | 6 + packages/melonloader/README.md | 3 + packages/melonloader/deps.json | 747 ++++++++++++++++++ .../melonloader/disable-auto-updates.patch | 19 + packages/melonloader/package.nix | 61 ++ packages/melonloader/update.sh | 20 + 7 files changed, 858 insertions(+) create mode 100644 packages/melonloader/README.md create mode 100644 packages/melonloader/deps.json create mode 100644 packages/melonloader/disable-auto-updates.patch create mode 100644 packages/melonloader/package.nix create mode 100644 packages/melonloader/update.sh diff --git a/hosts/myputer/default.nix b/hosts/myputer/default.nix index 2db250b..a5a28e5 100755 --- a/hosts/myputer/default.nix +++ b/hosts/myputer/default.nix @@ -59,6 +59,8 @@ prismlauncher # minecraft upkgs.olympus # CELESTE!! <3 :3 discord + + melonloader ]; # DEBUG: configuring xdg portal here instead? diff --git a/overlays/default.nix b/overlays/default.nix index 6fb9e05..1d0d61d 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -22,6 +22,10 @@ pkgs = super; }; + sddm-theme-sugar-dark = import ../packages/sddm-theme/sugar-dark.nix { + inherit pkgs; + }; + # in wake of CVE-2022-3602/CVE-2022-3786 nginxStable = super.nginxStable.override {openssl = super.libressl;}; nginx = super.nginx.override {openssl = super.libressl;}; @@ -35,5 +39,7 @@ }); awww = inputs.awww.packages.${system}.awww; + + melonloader = import ../packages/melonloader/package.nix super; } ) diff --git a/packages/melonloader/README.md b/packages/melonloader/README.md new file mode 100644 index 0000000..445afc1 --- /dev/null +++ b/packages/melonloader/README.md @@ -0,0 +1,3 @@ +## nixpkgs-melonloader +Files sourced from the [github:WillemToorenburgh/nixpkgs-melonloader](https://github.com/WillemToorenburgh/nixpkgs-melonloader), +exact location found [here](https://github.com/WillemToorenburgh/nixpkgs-melonloader/tree/d02dfd646f75d789bcec5be83a51666796544c12/pkgs/by-name/me/melonloader-installer). diff --git a/packages/melonloader/deps.json b/packages/melonloader/deps.json new file mode 100644 index 0000000..75987c5 --- /dev/null +++ b/packages/melonloader/deps.json @@ -0,0 +1,747 @@ +[ + { + "pname": "Avalonia", + "version": "11.3.8", + "hash": "sha256-0cM3VVudDUELNE/fWehuCplPKLITjw1hbg9IGtIm20g=" + }, + { + "pname": "Avalonia.Angle.Windows.Natives", + "version": "2.1.25547.20250602", + "hash": "sha256-LE/lENAHptmz6t3T/AoJwnhpda+xs7PqriNGzdcfg8M=" + }, + { + "pname": "Avalonia.BuildServices", + "version": "11.3.1", + "hash": "sha256-JYcA/DgTHRJ02/FcURqtJnXYhhdzki8DGECLkZ4zONg=" + }, + { + "pname": "Avalonia.Controls.ColorPicker", + "version": "11.3.8", + "hash": "sha256-cB3mYR1X8Gzu1FQfWCJpfWosnpojIQhRSxrjYz4zD6g=" + }, + { + "pname": "Avalonia.Desktop", + "version": "11.3.8", + "hash": "sha256-X/ggsRzsN7o3O4Iw4uvjgOdlW58Xbe8Jpv4llRuFcoA=" + }, + { + "pname": "Avalonia.Diagnostics", + "version": "11.3.8", + "hash": "sha256-eOLf2Id4Olbq/nMWERarked+vg5ZnVMCxMKOXBfqAqM=" + }, + { + "pname": "Avalonia.Fonts.Inter", + "version": "11.3.8", + "hash": "sha256-EaUjJZ+K+5HaSJ1hmLgwuH4HGp1N2s1TNJogZulpVT8=" + }, + { + "pname": "Avalonia.FreeDesktop", + "version": "11.3.8", + "hash": "sha256-XJogaWo4ZNg/PvckA6D5EEuyQneYUKDePnT9snNwaHs=" + }, + { + "pname": "Avalonia.Native", + "version": "11.3.8", + "hash": "sha256-Hm4uneEN3rQVmSp1Ai4cDSTJpixYDzYJzEkAesvwxPw=" + }, + { + "pname": "Avalonia.Remote.Protocol", + "version": "11.3.8", + "hash": "sha256-pCIcQuTTcpik4xg5x8Y/QuXaW/GmNny/5ZBVr0bhmNU=" + }, + { + "pname": "Avalonia.Skia", + "version": "11.3.8", + "hash": "sha256-FeJ6tdgeGKHkv0JKPOq2eHTxaDTT0t2yJ7wavBKnr68=" + }, + { + "pname": "Avalonia.Themes.Fluent", + "version": "11.3.8", + "hash": "sha256-fVXc8+WPRa3YkX4EIt/Wjz9hnI7y6pv3P1cCBhEPgOg=" + }, + { + "pname": "Avalonia.Themes.Simple", + "version": "11.3.8", + "hash": "sha256-GSD4yvyDKqBSGV/rwE/EO3CTp9dG4eR4B5H0Y/u9+hE=" + }, + { + "pname": "Avalonia.Win32", + "version": "11.3.8", + "hash": "sha256-YwzyF4YJtCzcLpGxDe6U3Tpxjcqft8mcYjUNnL2Ockg=" + }, + { + "pname": "Avalonia.X11", + "version": "11.3.8", + "hash": "sha256-SlAWkiaGYc+Ynq4QcO3/xorz2EIWWyrZcHXIk7F68i0=" + }, + { + "pname": "CommunityToolkit.Mvvm", + "version": "8.4.0", + "hash": "sha256-a0D550q+ffreU9Z+kQPdzJYPNaj1UjgyPofLzUg02ZI=" + }, + { + "pname": "Gameloop.Vdf", + "version": "0.6.2", + "hash": "sha256-z34mcUx7qcaFlVsenGKYuxFNCQNWwOeFZYGecbRT3ZA=" + }, + { + "pname": "HarfBuzzSharp", + "version": "8.3.1.1", + "hash": "sha256-614yv6bK9ynhdUnvW4wIkgpBe2sqTh28U9cDZzdhPc0=" + }, + { + "pname": "HarfBuzzSharp.NativeAssets.Linux", + "version": "8.3.1.1", + "hash": "sha256-sBbez6fc9axVcsBbIHbpQh/MM5NHlMJgSu6FyuZzVyU=" + }, + { + "pname": "HarfBuzzSharp.NativeAssets.macOS", + "version": "8.3.1.1", + "hash": "sha256-hK20KbX2OpewIO5qG5gWw5Ih6GoLcIDgFOqCJIjXR/Q=" + }, + { + "pname": "HarfBuzzSharp.NativeAssets.WebAssembly", + "version": "8.3.1.1", + "hash": "sha256-mLKoLqI47ZHXqTMLwP1UCm7faDptUfQukNvdq6w/xxw=" + }, + { + "pname": "HarfBuzzSharp.NativeAssets.Win32", + "version": "8.3.1.1", + "hash": "sha256-Um4iwLdz9XtaDSAsthNZdev6dMiy7OBoHOrorMrMYyo=" + }, + { + "pname": "MicroCom.Runtime", + "version": "0.11.0", + "hash": "sha256-VdwpP5fsclvNqJuppaOvwEwv2ofnAI5ZSz2V+UEdLF0=" + }, + { + "pname": "Microsoft.CSharp", + "version": "4.7.0", + "hash": "sha256-Enknv2RsFF68lEPdrf5M+BpV1kHoLTVRApKUwuk/pj0=" + }, + { + "pname": "Microsoft.Extensions.Primitives", + "version": "5.0.1", + "hash": "sha256-e4uoLnUSmON4If9qJh78+4z14IzW9qCu5YkqLdQqWQU=" + }, + { + "pname": "Microsoft.NET.ILLink.Tasks", + "version": "9.0.10", + "hash": "sha256-0fL4pa/a3aLZMqA7B5zNxrb1bHCu14v4HLBfcziUtiE=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "1.1.0", + "hash": "sha256-FeM40ktcObQJk4nMYShB61H/E8B7tIKfl9ObJ0IOcCM=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "1.1.1", + "hash": "sha256-8hLiUKvy/YirCWlFwzdejD2Db3DaXhHxT7GSZx/znJg=" + }, + { + "pname": "Microsoft.NETCore.Targets", + "version": "1.1.0", + "hash": "sha256-0AqQ2gMS8iNlYkrD+BxtIg7cXMnr9xZHtKAuN4bjfaQ=" + }, + { + "pname": "Microsoft.NETCore.Targets", + "version": "1.1.3", + "hash": "sha256-WLsf1NuUfRWyr7C7Rl9jiua9jximnVvzy6nk2D2bVRc=" + }, + { + "pname": "Microsoft.Win32.Primitives", + "version": "4.3.0", + "hash": "sha256-mBNDmPXNTW54XLnPAUwBRvkIORFM7/j0D0I2SyQPDEg=" + }, + { + "pname": "Microsoft.Win32.SystemEvents", + "version": "9.0.10", + "hash": "sha256-hqtadbUx58gBwBFfVk2vyRmgWgdRpbmT84pcuhKTXl0=" + }, + { + "pname": "NETStandard.Library", + "version": "1.6.1", + "hash": "sha256-iNan1ix7RtncGWC9AjAZ2sk70DoxOsmEOgQ10fXm4Pw=" + }, + { + "pname": "runtime.any.System.Collections", + "version": "4.3.0", + "hash": "sha256-4PGZqyWhZ6/HCTF2KddDsbmTTjxs2oW79YfkberDZS8=" + }, + { + "pname": "runtime.any.System.Diagnostics.Tools", + "version": "4.3.0", + "hash": "sha256-8yLKFt2wQxkEf7fNfzB+cPUCjYn2qbqNgQ1+EeY2h/I=" + }, + { + "pname": "runtime.any.System.Diagnostics.Tracing", + "version": "4.3.0", + "hash": "sha256-dsmTLGvt8HqRkDWP8iKVXJCS+akAzENGXKPV18W2RgI=" + }, + { + "pname": "runtime.any.System.Globalization", + "version": "4.3.0", + "hash": "sha256-PaiITTFI2FfPylTEk7DwzfKeiA/g/aooSU1pDcdwWLU=" + }, + { + "pname": "runtime.any.System.Globalization.Calendars", + "version": "4.3.0", + "hash": "sha256-AYh39tgXJVFu8aLi9Y/4rK8yWMaza4S4eaxjfcuEEL4=" + }, + { + "pname": "runtime.any.System.IO", + "version": "4.3.0", + "hash": "sha256-vej7ySRhyvM3pYh/ITMdC25ivSd0WLZAaIQbYj/6HVE=" + }, + { + "pname": "runtime.any.System.Reflection", + "version": "4.3.0", + "hash": "sha256-ns6f++lSA+bi1xXgmW1JkWFb2NaMD+w+YNTfMvyAiQk=" + }, + { + "pname": "runtime.any.System.Reflection.Extensions", + "version": "4.3.0", + "hash": "sha256-Y2AnhOcJwJVYv7Rp6Jz6ma0fpITFqJW+8rsw106K2X8=" + }, + { + "pname": "runtime.any.System.Reflection.Primitives", + "version": "4.3.0", + "hash": "sha256-LkPXtiDQM3BcdYkAm5uSNOiz3uF4J45qpxn5aBiqNXQ=" + }, + { + "pname": "runtime.any.System.Resources.ResourceManager", + "version": "4.3.0", + "hash": "sha256-9EvnmZslLgLLhJ00o5MWaPuJQlbUFcUF8itGQNVkcQ4=" + }, + { + "pname": "runtime.any.System.Runtime", + "version": "4.3.0", + "hash": "sha256-qwhNXBaJ1DtDkuRacgHwnZmOZ1u9q7N8j0cWOLYOELM=" + }, + { + "pname": "runtime.any.System.Runtime.Handles", + "version": "4.3.0", + "hash": "sha256-PQRACwnSUuxgVySO1840KvqCC9F8iI9iTzxNW0RcBS4=" + }, + { + "pname": "runtime.any.System.Runtime.InteropServices", + "version": "4.3.0", + "hash": "sha256-Kaw5PnLYIiqWbsoF3VKJhy7pkpoGsUwn4ZDCKscbbzA=" + }, + { + "pname": "runtime.any.System.Text.Encoding", + "version": "4.3.0", + "hash": "sha256-Q18B9q26MkWZx68exUfQT30+0PGmpFlDgaF0TnaIGCs=" + }, + { + "pname": "runtime.any.System.Text.Encoding.Extensions", + "version": "4.3.0", + "hash": "sha256-6MYj0RmLh4EVqMtO/MRqBi0HOn5iG4x9JimgCCJ+EFM=" + }, + { + "pname": "runtime.any.System.Threading.Tasks", + "version": "4.3.0", + "hash": "sha256-agdOM0NXupfHbKAQzQT8XgbI9B8hVEh+a/2vqeHctg4=" + }, + { + "pname": "runtime.any.System.Threading.Timer", + "version": "4.3.0", + "hash": "sha256-BgHxXCIbicVZtpgMimSXixhFC3V+p5ODqeljDjO8hCs=" + }, + { + "pname": "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-EbnOqPOrAgI9eNheXLR++VnY4pHzMsEKw1dFPJ/Fl2c=" + }, + { + "pname": "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-mVg02TNvJc1BuHU03q3fH3M6cMgkKaQPBxraSHl/Btg=" + }, + { + "pname": "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-g9Uiikrl+M40hYe0JMlGHe/lrR0+nN05YF64wzLmBBA=" + }, + { + "pname": "runtime.native.System", + "version": "4.3.0", + "hash": "sha256-ZBZaodnjvLXATWpXXakFgcy6P+gjhshFXmglrL5xD5Y=" + }, + { + "pname": "runtime.native.System.IO.Compression", + "version": "4.3.0", + "hash": "sha256-DWnXs4vlKoU6WxxvCArTJupV6sX3iBbZh8SbqfHace8=" + }, + { + "pname": "runtime.native.System.Net.Http", + "version": "4.3.0", + "hash": "sha256-c556PyheRwpYhweBjSfIwEyZHnAUB8jWioyKEcp/2dg=" + }, + { + "pname": "runtime.native.System.Security.Cryptography.Apple", + "version": "4.3.0", + "hash": "sha256-2IhBv0i6pTcOyr8FFIyfPEaaCHUmJZ8DYwLUwJ+5waw=" + }, + { + "pname": "runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-Jy01KhtcCl2wjMpZWH+X3fhHcVn+SyllWFY8zWlz/6I=" + }, + { + "pname": "runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-xqF6LbbtpzNC9n1Ua16PnYgXHU0LvblEROTfK4vIxX8=" + }, + { + "pname": "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-aJBu6Frcg6webvzVcKNoUP1b462OAqReF2giTSyBzCQ=" + }, + { + "pname": "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-Mpt7KN2Kq51QYOEVesEjhWcCGTqWckuPf8HlQ110qLY=" + }, + { + "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple", + "version": "4.3.0", + "hash": "sha256-serkd4A7F6eciPiPJtUyJyxzdAtupEcWIZQ9nptEzIM=" + }, + { + "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-JvMltmfVC53mCZtKDHE69G3RT6Id28hnskntP9MMP9U=" + }, + { + "pname": "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-QfFxWTVRNBhN4Dm1XRbCf+soNQpy81PsZed3x6op/bI=" + }, + { + "pname": "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-EaJHVc9aDZ6F7ltM2JwlIuiJvqM67CKRq682iVSo+pU=" + }, + { + "pname": "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-PHR0+6rIjJswn89eoiWYY1DuU8u6xRJLrtjykAMuFmA=" + }, + { + "pname": "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.2", + "hash": "sha256-LFkh7ua7R4rI5w2KGjcHlGXLecsncCy6kDXLuy4qD/Q=" + }, + { + "pname": "runtime.unix.Microsoft.Win32.Primitives", + "version": "4.3.0", + "hash": "sha256-LZb23lRXzr26tRS5aA0xyB08JxiblPDoA7HBvn6awXg=" + }, + { + "pname": "runtime.unix.System.Console", + "version": "4.3.1", + "hash": "sha256-dxyn/1Px4FKLZ2QMUrkFpW619Y1lhPeTiGLWYM6IbpY=" + }, + { + "pname": "runtime.unix.System.Diagnostics.Debug", + "version": "4.3.0", + "hash": "sha256-ReoazscfbGH+R6s6jkg5sIEHWNEvjEoHtIsMbpc7+tI=" + }, + { + "pname": "runtime.unix.System.IO.FileSystem", + "version": "4.3.0", + "hash": "sha256-Pf4mRl6YDK2x2KMh0WdyNgv0VUNdSKVDLlHqozecy5I=" + }, + { + "pname": "runtime.unix.System.Net.Primitives", + "version": "4.3.0", + "hash": "sha256-pHJ+I6i16MV6m77uhTC6GPY6jWGReE3SSP3fVB59ti0=" + }, + { + "pname": "runtime.unix.System.Net.Sockets", + "version": "4.3.0", + "hash": "sha256-IvgOeA2JuBjKl5yAVGjPYMPDzs9phb3KANs95H9v1w4=" + }, + { + "pname": "runtime.unix.System.Private.Uri", + "version": "4.3.0", + "hash": "sha256-c5tXWhE/fYbJVl9rXs0uHh3pTsg44YD1dJvyOA0WoMs=" + }, + { + "pname": "runtime.unix.System.Runtime.Extensions", + "version": "4.3.0", + "hash": "sha256-l8S9gt6dk3qYG6HYonHtdlYtBKyPb29uQ6NDjmrt3V4=" + }, + { + "pname": "Semver", + "version": "3.0.0", + "hash": "sha256-nX5ka27GY6pz9S73H6sLSQCrnAyyI9xDVdzrtlMp4BQ=" + }, + { + "pname": "SkiaSharp", + "version": "2.88.9", + "hash": "sha256-jZ/4nVXYJtrz9SBf6sYc/s0FxS7ReIYM4kMkrhZS+24=" + }, + { + "pname": "SkiaSharp.NativeAssets.Linux", + "version": "2.88.9", + "hash": "sha256-mQ/oBaqRR71WfS66mJCvcc3uKW7CNEHoPN2JilDbw/A=" + }, + { + "pname": "SkiaSharp.NativeAssets.macOS", + "version": "2.88.9", + "hash": "sha256-qvGuAmjXGjGKMzOPBvP9VWRVOICSGb7aNVejU0lLe/g=" + }, + { + "pname": "SkiaSharp.NativeAssets.WebAssembly", + "version": "2.88.9", + "hash": "sha256-vgFL4Pdy3O1RKBp+T9N3W4nkH9yurZ0suo8u3gPmmhY=" + }, + { + "pname": "SkiaSharp.NativeAssets.Win32", + "version": "2.88.9", + "hash": "sha256-kP5XM5GgwHGfNJfe4T2yO5NIZtiF71Ddp0pd1vG5V/4=" + }, + { + "pname": "System.AppContext", + "version": "4.3.0", + "hash": "sha256-yg95LNQOwFlA1tWxXdQkVyJqT4AnoDc+ACmrNvzGiZg=" + }, + { + "pname": "System.Buffers", + "version": "4.3.0", + "hash": "sha256-XqZWb4Kd04960h4U9seivjKseGA/YEIpdplfHYHQ9jk=" + }, + { + "pname": "System.Collections", + "version": "4.3.0", + "hash": "sha256-afY7VUtD6w/5mYqrce8kQrvDIfS2GXDINDh73IjxJKc=" + }, + { + "pname": "System.Collections.Concurrent", + "version": "4.3.0", + "hash": "sha256-KMY5DfJnDeIsa13DpqvyN8NkReZEMAFnlmNglVoFIXI=" + }, + { + "pname": "System.Collections.NonGeneric", + "version": "4.3.0", + "hash": "sha256-8/yZmD4jjvq7m68SPkJZLBQ79jOTOyT5lyzX4SCYAx8=" + }, + { + "pname": "System.Collections.Specialized", + "version": "4.3.0", + "hash": "sha256-QNg0JJNx+zXMQ26MJRPzH7THdtqjrNtGLUgaR1SdvOk=" + }, + { + "pname": "System.ComponentModel", + "version": "4.3.0", + "hash": "sha256-i00uujMO4JEDIEPKLmdLY3QJ6vdSpw6Gh9oOzkFYBiU=" + }, + { + "pname": "System.ComponentModel.Primitives", + "version": "4.3.0", + "hash": "sha256-IOMJleuIBppmP4ECB3uftbdcgL7CCd56+oAD/Sqrbus=" + }, + { + "pname": "System.ComponentModel.TypeConverter", + "version": "4.3.0", + "hash": "sha256-PSDiPYt8PgTdTUBz+GH6lHCaM1YgfObneHnZsc8Fz54=" + }, + { + "pname": "System.Console", + "version": "4.3.0", + "hash": "sha256-Xh3PPBZr0pDbDaK8AEHbdGz7ePK6Yi1ZyRWI1JM6mbo=" + }, + { + "pname": "System.Diagnostics.Debug", + "version": "4.3.0", + "hash": "sha256-fkA79SjPbSeiEcrbbUsb70u9B7wqbsdM9s1LnoKj0gM=" + }, + { + "pname": "System.Diagnostics.DiagnosticSource", + "version": "4.3.0", + "hash": "sha256-OFJRb0ygep0Z3yDBLwAgM/Tkfs4JCDtsNhwDH9cd1Xw=" + }, + { + "pname": "System.Diagnostics.Tools", + "version": "4.3.0", + "hash": "sha256-gVOv1SK6Ape0FQhCVlNOd9cvQKBvMxRX9K0JPVi8w0Y=" + }, + { + "pname": "System.Diagnostics.Tracing", + "version": "4.3.0", + "hash": "sha256-hCETZpHHGVhPYvb4C0fh4zs+8zv4GPoixagkLZjpa9Q=" + }, + { + "pname": "System.Drawing.Common", + "version": "9.0.10", + "hash": "sha256-D4E99H3HVNatH+MDKuCGxaJOP7pXTxibBLThNZBXwLc=" + }, + { + "pname": "System.Globalization", + "version": "4.3.0", + "hash": "sha256-caL0pRmFSEsaoeZeWN5BTQtGrAtaQPwFi8YOZPZG5rI=" + }, + { + "pname": "System.Globalization.Calendars", + "version": "4.3.0", + "hash": "sha256-uNOD0EOVFgnS2fMKvMiEtI9aOw00+Pfy/H+qucAQlPc=" + }, + { + "pname": "System.Globalization.Extensions", + "version": "4.3.0", + "hash": "sha256-mmJWA27T0GRVuFP9/sj+4TrR4GJWrzNIk2PDrbr7RQk=" + }, + { + "pname": "System.IO", + "version": "4.3.0", + "hash": "sha256-ruynQHekFP5wPrDiVyhNiRIXeZ/I9NpjK5pU+HPDiRY=" + }, + { + "pname": "System.IO.Compression", + "version": "4.3.0", + "hash": "sha256-f5PrQlQgj5Xj2ZnHxXW8XiOivaBvfqDao9Sb6AVinyA=" + }, + { + "pname": "System.IO.Compression.ZipFile", + "version": "4.3.0", + "hash": "sha256-WQl+JgWs+GaRMeiahTFUbrhlXIHapzcpTFXbRvAtvvs=" + }, + { + "pname": "System.IO.FileSystem", + "version": "4.3.0", + "hash": "sha256-vNIYnvlayuVj0WfRfYKpDrhDptlhp1pN8CYmlVd2TXw=" + }, + { + "pname": "System.IO.FileSystem.Primitives", + "version": "4.3.0", + "hash": "sha256-LMnfg8Vwavs9cMnq9nNH8IWtAtSfk0/Fy4s4Rt9r1kg=" + }, + { + "pname": "System.IO.Pipelines", + "version": "8.0.0", + "hash": "sha256-LdpB1s4vQzsOODaxiKstLks57X9DTD5D6cPx8DE1wwE=" + }, + { + "pname": "System.Linq", + "version": "4.3.0", + "hash": "sha256-R5uiSL3l6a3XrXSSL6jz+q/PcyVQzEAByiuXZNSqD/A=" + }, + { + "pname": "System.Linq.Expressions", + "version": "4.3.0", + "hash": "sha256-+3pvhZY7rip8HCbfdULzjlC9FPZFpYoQxhkcuFm2wk8=" + }, + { + "pname": "System.Net.Http", + "version": "4.3.4", + "hash": "sha256-FMoU0K7nlPLxoDju0NL21Wjlga9GpnAoQjsFhFYYt00=" + }, + { + "pname": "System.Net.NameResolution", + "version": "4.3.0", + "hash": "sha256-eGZwCBExWsnirWBHyp2sSSSXp6g7I6v53qNmwPgtJ5c=" + }, + { + "pname": "System.Net.Primitives", + "version": "4.3.0", + "hash": "sha256-MY7Z6vOtFMbEKaLW9nOSZeAjcWpwCtdO7/W1mkGZBzE=" + }, + { + "pname": "System.Net.Sockets", + "version": "4.3.0", + "hash": "sha256-il7dr5VT/QWDg/0cuh+4Es2u8LY//+qqiY9BZmYxSus=" + }, + { + "pname": "System.ObjectModel", + "version": "4.3.0", + "hash": "sha256-gtmRkWP2Kwr3nHtDh0yYtce38z1wrGzb6fjm4v8wN6Q=" + }, + { + "pname": "System.Private.Uri", + "version": "4.3.2", + "hash": "sha256-jB2+W3tTQ6D9XHy5sEFMAazIe1fu2jrENUO0cb48OgU=" + }, + { + "pname": "System.Reflection", + "version": "4.3.0", + "hash": "sha256-NQSZRpZLvtPWDlvmMIdGxcVuyUnw92ZURo0hXsEshXY=" + }, + { + "pname": "System.Reflection.Emit", + "version": "4.3.0", + "hash": "sha256-5LhkDmhy2FkSxulXR+bsTtMzdU3VyyuZzsxp7/DwyIU=" + }, + { + "pname": "System.Reflection.Emit.ILGeneration", + "version": "4.3.0", + "hash": "sha256-mKRknEHNls4gkRwrEgi39B+vSaAz/Gt3IALtS98xNnA=" + }, + { + "pname": "System.Reflection.Emit.Lightweight", + "version": "4.3.0", + "hash": "sha256-rKx4a9yZKcajloSZHr4CKTVJ6Vjh95ni+zszPxWjh2I=" + }, + { + "pname": "System.Reflection.Extensions", + "version": "4.3.0", + "hash": "sha256-mMOCYzUenjd4rWIfq7zIX9PFYk/daUyF0A8l1hbydAk=" + }, + { + "pname": "System.Reflection.Primitives", + "version": "4.3.0", + "hash": "sha256-5ogwWB4vlQTl3jjk1xjniG2ozbFIjZTL9ug0usZQuBM=" + }, + { + "pname": "System.Reflection.TypeExtensions", + "version": "4.3.0", + "hash": "sha256-4U4/XNQAnddgQIHIJq3P2T80hN0oPdU2uCeghsDTWng=" + }, + { + "pname": "System.Resources.ResourceManager", + "version": "4.3.0", + "hash": "sha256-idiOD93xbbrbwwSnD4mORA9RYi/D/U48eRUsn/WnWGo=" + }, + { + "pname": "System.Runtime", + "version": "4.3.0", + "hash": "sha256-51813WXpBIsuA6fUtE5XaRQjcWdQ2/lmEokJt97u0Rg=" + }, + { + "pname": "System.Runtime", + "version": "4.3.1", + "hash": "sha256-R9T68AzS1PJJ7v6ARz9vo88pKL1dWqLOANg4pkQjkA0=" + }, + { + "pname": "System.Runtime.Extensions", + "version": "4.3.0", + "hash": "sha256-wLDHmozr84v1W2zYCWYxxj0FR0JDYHSVRaRuDm0bd/o=" + }, + { + "pname": "System.Runtime.Handles", + "version": "4.3.0", + "hash": "sha256-KJ5aXoGpB56Y6+iepBkdpx/AfaJDAitx4vrkLqR7gms=" + }, + { + "pname": "System.Runtime.InteropServices", + "version": "4.3.0", + "hash": "sha256-8sDH+WUJfCR+7e4nfpftj/+lstEiZixWUBueR2zmHgI=" + }, + { + "pname": "System.Runtime.InteropServices.RuntimeInformation", + "version": "4.3.0", + "hash": "sha256-MYpl6/ZyC6hjmzWRIe+iDoldOMW1mfbwXsduAnXIKGA=" + }, + { + "pname": "System.Runtime.Numerics", + "version": "4.3.0", + "hash": "sha256-P5jHCgMbgFMYiONvzmaKFeOqcAIDPu/U8bOVrNPYKqc=" + }, + { + "pname": "System.Security.Claims", + "version": "4.3.0", + "hash": "sha256-Fua/rDwAqq4UByRVomAxMPmDBGd5eImRqHVQIeSxbks=" + }, + { + "pname": "System.Security.Cryptography.Algorithms", + "version": "4.3.0", + "hash": "sha256-tAJvNSlczYBJ3Ed24Ae27a55tq/n4D3fubNQdwcKWA8=" + }, + { + "pname": "System.Security.Cryptography.Cng", + "version": "4.3.0", + "hash": "sha256-u17vy6wNhqok91SrVLno2M1EzLHZm6VMca85xbVChsw=" + }, + { + "pname": "System.Security.Cryptography.Csp", + "version": "4.3.0", + "hash": "sha256-oefdTU/Z2PWU9nlat8uiRDGq/PGZoSPRgkML11pmvPQ=" + }, + { + "pname": "System.Security.Cryptography.Encoding", + "version": "4.3.0", + "hash": "sha256-Yuge89N6M+NcblcvXMeyHZ6kZDfwBv3LPMDiF8HhJss=" + }, + { + "pname": "System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-DL+D2sc2JrQiB4oAcUggTFyD8w3aLEjJfod5JPe+Oz4=" + }, + { + "pname": "System.Security.Cryptography.Primitives", + "version": "4.3.0", + "hash": "sha256-fnFi7B3SnVj5a+BbgXnbjnGNvWrCEU6Hp/wjsjWz318=" + }, + { + "pname": "System.Security.Cryptography.X509Certificates", + "version": "4.3.0", + "hash": "sha256-MG3V/owDh273GCUPsGGraNwaVpcydupl3EtPXj6TVG0=" + }, + { + "pname": "System.Security.Principal", + "version": "4.3.0", + "hash": "sha256-rjudVUHdo8pNJg2EVEn0XxxwNo5h2EaYo+QboPkXlYk=" + }, + { + "pname": "System.Security.Principal.Windows", + "version": "4.3.0", + "hash": "sha256-mbdLVUcEwe78p3ZnB6jYsizNEqxMaCAWI3tEQNhRQAE=" + }, + { + "pname": "System.Text.Encoding", + "version": "4.3.0", + "hash": "sha256-GctHVGLZAa/rqkBNhsBGnsiWdKyv6VDubYpGkuOkBLg=" + }, + { + "pname": "System.Text.Encoding.Extensions", + "version": "4.3.0", + "hash": "sha256-vufHXg8QAKxHlujPHHcrtGwAqFmsCD6HKjfDAiHyAYc=" + }, + { + "pname": "System.Text.RegularExpressions", + "version": "4.3.1", + "hash": "sha256-DxsEZ0nnPozyC1W164yrMUXwnAdHShS9En7ImD/GJMM=" + }, + { + "pname": "System.Threading", + "version": "4.3.0", + "hash": "sha256-ZDQ3dR4pzVwmaqBg4hacZaVenQ/3yAF/uV7BXZXjiWc=" + }, + { + "pname": "System.Threading.Tasks", + "version": "4.3.0", + "hash": "sha256-Z5rXfJ1EXp3G32IKZGiZ6koMjRu0n8C1NGrwpdIen4w=" + }, + { + "pname": "System.Threading.Tasks.Extensions", + "version": "4.3.0", + "hash": "sha256-X2hQ5j+fxcmnm88Le/kSavjiGOmkcumBGTZKBLvorPc=" + }, + { + "pname": "System.Threading.ThreadPool", + "version": "4.3.0", + "hash": "sha256-wW0QdvssRoaOfQLazTGSnwYTurE4R8FxDx70pYkL+gg=" + }, + { + "pname": "System.Threading.Timer", + "version": "4.3.0", + "hash": "sha256-pmhslmhQhP32TWbBzoITLZ4BoORBqYk25OWbru04p9s=" + }, + { + "pname": "System.Xml.ReaderWriter", + "version": "4.3.0", + "hash": "sha256-QQ8KgU0lu4F5Unh+TbechO//zaAGZ4MfgvW72Cn1hzA=" + }, + { + "pname": "System.Xml.XDocument", + "version": "4.3.0", + "hash": "sha256-rWtdcmcuElNOSzCehflyKwHkDRpiOhJJs8CeQ0l1CCI=" + }, + { + "pname": "Tmds.DBus.Protocol", + "version": "0.21.2", + "hash": "sha256-gaK/5aAummyin6ptnhaJbnA0ih4+2xADrtrLfFbHwYI=" + } +] diff --git a/packages/melonloader/disable-auto-updates.patch b/packages/melonloader/disable-auto-updates.patch new file mode 100644 index 0000000..5f5c81d --- /dev/null +++ b/packages/melonloader/disable-auto-updates.patch @@ -0,0 +1,19 @@ +Subject: [PATCH] Disable auto-updates +--- +Index: MelonLoader.Installer/Updater.cs +IDEA additional info: +Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP +<+>UTF-8 +=================================================================== +diff --git a/MelonLoader.Installer/Updater.cs b/MelonLoader.Installer/Updater.cs +--- a/MelonLoader.Installer/Updater.cs (revision 201f0da25ae5e576884f65c350046d7bb267b513) ++++ b/MelonLoader.Installer/Updater.cs (date 1769995332111) +@@ -18,7 +18,7 @@ + return null; + + // Don't auto-update on CI builds +- if (Program.Version.Revision > 0) ++ if (true) + { + State = UpdateState.AlreadyChecked; + return null; diff --git a/packages/melonloader/package.nix b/packages/melonloader/package.nix new file mode 100644 index 0000000..b085578 --- /dev/null +++ b/packages/melonloader/package.nix @@ -0,0 +1,61 @@ +{ + fetchFromGitHub, + dotnetCorePackages, + buildDotnetModule, + makeDesktopItem, + copyDesktopItems, + lib, + ... +}: +buildDotnetModule rec { + pname = "melonloader-installer"; + version = "4.2.1"; + + src = fetchFromGitHub { + owner = "LavaGang"; + repo = "MelonLoader.Installer"; + tag = version; + hash = "sha256-0hUc4f1avPfNDGAQDokLpRLK4sSrUFD5GkJZeP/Gu34="; + }; + + patches = [ + ./disable-auto-updates.patch + ]; + + projectFile = "MelonLoader.Installer/MelonLoader.Installer.csproj"; + dotnet-sdk = dotnetCorePackages.sdk_9_0; + dotnet-runtime = dotnetCorePackages.runtime_9_0; + nugetDeps = ./deps.json; + selfContainedBuild = true; + + nativeBuildInputs = [copyDesktopItems]; + + postInstall = '' + install -Dm644 Resources/ML_Icon.png $out/share/icons/MelonLoader.Installer.Linux.png + ''; + + desktopItems = [ + (makeDesktopItem { + name = pname; + desktopName = "MelonLoader Installer"; + exec = meta.mainProgram; + comment = meta.description; + categories = [ + "Game" + "Utility" + ]; + icon = meta.mainProgram; + }) + ]; + + passthru.updateScript = ./update.sh; + + meta = { + homepage = "https://melonwiki.xyz"; + mainProgram = "MelonLoader.Installer.Linux"; + description = "Automated installer for MelonLoader, the universal mod-loader for games built in the Unity Engine"; + license = lib.licenses.asl20; + platforms = ["x86_64-linux"]; + maintainers = with lib.maintainers; [WillemToorenburgh]; + }; +} diff --git a/packages/melonloader/update.sh b/packages/melonloader/update.sh new file mode 100644 index 0000000..481a62f --- /dev/null +++ b/packages/melonloader/update.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env nix-shell +#!nix-shell -I nixpkgs=./. -i bash -p curl jq common-updater-scripts +#shellcheck shell=bash + +# Implementation lovingly referenced and adapted from cavalier package's update.sh + +set -eu -o pipefail + +version=$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \ + https://api.github.com/repos/LavaGang/MelonLoader.Installer/releases/latest | jq -e -r .tag_name) +old_version=$(nix-instantiate --eval -A melonloader-installer.version | jq -e -r) + +if [[ $version == "$old_version" ]]; then + echo "New version same as old version, nothing to do." >&2 + exit 0 +fi + +update-source-version melonloader-installer "$version" + +$(nix-build -A melonloader-installer.fetch-deps --no-out-link) "$(dirname -- "${BASH_SOURCE[0]}")/deps.json" From aba1b552d95bd3f5e055ddebb85f9ef13d451637 Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:42:20 +1000 Subject: [PATCH 07/10] ensure mesa package matches hyprland internal package --- homes/modules/wm/mangowc.nix | 2 +- hosts/modules/wm/hyprland.nix | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/homes/modules/wm/mangowc.nix b/homes/modules/wm/mangowc.nix index 74248a2..737558e 100644 --- a/homes/modules/wm/mangowc.nix +++ b/homes/modules/wm/mangowc.nix @@ -100,7 +100,7 @@ autostart_sh = '' # REF: autostart.sh - # XDG_CURRENT_DESKTOP=Hyprland + # XDG_CURRENT_DESKTOP=mango # dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP ''; }; diff --git a/hosts/modules/wm/hyprland.nix b/hosts/modules/wm/hyprland.nix index 4aa1eb9..5fb29ea 100644 --- a/hosts/modules/wm/hyprland.nix +++ b/hosts/modules/wm/hyprland.nix @@ -1,10 +1,12 @@ { inputs, pkgs, + lib, system, ... }: let - # hyprpkgs = inputs.hyprland.packages.${system} + # hyprpkgs = inputs.hyprland.packages.${system}; + hyprpkgs = inputs.hyprland.inputs.nixpkgs.legacyPackages.${system}; in { environment.defaultPackages = with pkgs; [ hyprsunset @@ -14,11 +16,6 @@ in { enable = true; wlr.enable = true; - - # extraPortals = with pkgs; [ - # xdg-desktop-portal-hyprland - # xdg-desktop-portal-gtk - # ]; }; programs = { @@ -31,4 +28,9 @@ in { xwayland.enable = true; }; }; + + hardware.graphics = { + package = lib.mkForce hyprpkgs.mesa; + package32 = lib.mkForce hyprpkgs.pkgsi686Linux.mesa; + }; } From 2d67934e29b36291746f31b6a8ada0c648c77455 Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:42:57 +1000 Subject: [PATCH 08/10] package sddm themes --- groups/cryde/default.nix | 8 ++++++- overlays/default.nix | 33 +++++++++++++++------------- packages/sddm-theme/corners.nix | 24 ++++++++++++++++++++ packages/sddm-theme/sugar-dark.nix | 35 ++++++++++++++++++++++++++++++ 4 files changed, 84 insertions(+), 16 deletions(-) create mode 100755 packages/sddm-theme/corners.nix create mode 100755 packages/sddm-theme/sugar-dark.nix diff --git a/groups/cryde/default.nix b/groups/cryde/default.nix index 0596a01..91a41b9 100644 --- a/groups/cryde/default.nix +++ b/groups/cryde/default.nix @@ -1,6 +1,7 @@ { inputs, pkgs, + lib, config, ... }: { @@ -28,7 +29,7 @@ sddm = { enable = true; wayland.enable = ! config.services.xserver.enable; # experimental - # theme = "corners"; + # theme = lib.mkForce "silent"; }; # defaultSession = "mango"; # DEBUG @@ -54,6 +55,11 @@ mango.enable = true; + # silentSDDM = { + # enable = true; + # theme = "rei"; + # }; + # Thunar also uses: `services.tumbler` & `services.gvfs` thunar = { enable = true; diff --git a/overlays/default.nix b/overlays/default.nix index 1d0d61d..0d3a229 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -3,29 +3,32 @@ system, ... }: ( - self: super: { + self: super: let + pkgs = super; + inherit + (super) + lib + ; + in { angry-oxide = import ../packages/angryoxide { - pkgs = super; - inherit - (super) - lib - ; - }; - ekphos = import ../packages/ekphos { - pkgs = super; - }; - x86-manpages = import ../packages/x86-manpages { - pkgs = super; + inherit pkgs lib; }; - sddm-theme-corners = import ../packages/sddm-theme-corners { - pkgs = super; + ekphos = import ../packages/ekphos { + inherit pkgs; + }; + + x86-manpages = import ../packages/x86-manpages { + inherit pkgs; + }; + + sddm-theme-corners = import ../packages/sddm-theme/corners.nix { + inherit pkgs; }; sddm-theme-sugar-dark = import ../packages/sddm-theme/sugar-dark.nix { inherit pkgs; }; - # in wake of CVE-2022-3602/CVE-2022-3786 nginxStable = super.nginxStable.override {openssl = super.libressl;}; nginx = super.nginx.override {openssl = super.libressl;}; diff --git a/packages/sddm-theme/corners.nix b/packages/sddm-theme/corners.nix new file mode 100755 index 0000000..b0e3789 --- /dev/null +++ b/packages/sddm-theme/corners.nix @@ -0,0 +1,24 @@ +{pkgs}: +pkgs.stdenv.mkDerivation { + name = "sddm-theme-corners"; + version = "1.0.0"; + + installPhase = '' + mkdir -p $out/share/sddm/themes + cp -ar $src/corners $out/share/sddm/themes/ + ''; + src = pkgs.fetchFromGitHub { + owner = "aczw"; + repo = "sddm-theme-corners"; + rev = "6ff0ff455261badcae36cd7d151a34479f157a3c"; + sha256 = "0iiasrbl7ciyhq3z02la636as915zk9ph063ac7vm5iwny8vgwh8"; + }; + + buildInputs = with pkgs; [ + libsForQt5.qt5.qtgraphicaleffects + ]; + + nativeBuildInputs = with pkgs; [ + qt5.wrapQtAppsHook + ]; +} diff --git a/packages/sddm-theme/sugar-dark.nix b/packages/sddm-theme/sugar-dark.nix new file mode 100755 index 0000000..d60c046 --- /dev/null +++ b/packages/sddm-theme/sugar-dark.nix @@ -0,0 +1,35 @@ +{ pkgs }: + +let + #image = pkgs.fetchurl { + # url = "https://"; + # sha256 = ""; + #}; +in +pkgs.stdenv.mkDerivation { + name = "sddm-theme"; + src = pkgs.fetchFromGitHub { + owner = "MarianArlt"; + repo = "sddm-sugar-dark"; + rev = "ceb2c455663429be03ba62d9f898c571650ef7fe"; + sha256 = "0153z1kylbhc9d12nxy9vpn0spxgrhgy36wy37pk6ysq7akaqlvy"; + }; + # dependencies + buildInputs = with pkgs.libsForQt5; [ + qt5.qtbase + qt5.qtx11extras + qt5.qtquickcontrols2 + qt5.qtgraphicaleffects + qt5.wrapQtAppsHook + #libsForQt5.qt5.qtquickcontrols2 + #libsForQt5.qt5.qtgraphicaleffects + ]; + installPhase = '' + # move necessary files + mkdir -p $out + cp -R ./* $out/ + ''; + # set background + #rm $out/Background.jpg + #mv ${image} $out/Background.jpg +} From e0e7c820eaa310f7cd097dc5143c57fb1ffe2cfa Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:44:50 +1000 Subject: [PATCH 09/10] patch hyprland-git not working on nixpkgs stable glaze version mismatch --- flake.nix | 9 ++++++--- overlays/default.nix | 32 ++++++++++++++++++++++++++++++++ overlays/patches/glaze.patch | 16 ++++++++++++++++ 3 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 overlays/patches/glaze.patch diff --git a/flake.nix b/flake.nix index 4f8ab14..6891462 100644 --- a/flake.nix +++ b/flake.nix @@ -40,10 +40,13 @@ }; hyprland = { - url = "github:hyprwm/Hyprland"; + # FUCK HYPRLAND + # url = "github:hyprwm/Hyprland/4152ac76d0813d9d0f67d2f04653a13fa6e17433"; + url = "git+https://tearforge.net/cry/Hyprland"; + inputs = { - # nixpkgs.follows = "nixpkgs"; - # systems.follows = "systems"; + nixpkgs.follows = "nixpkgs"; + systems.follows = "systems"; }; }; diff --git a/overlays/default.nix b/overlays/default.nix index 0d3a229..c867adc 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -44,5 +44,37 @@ awww = inputs.awww.packages.${system}.awww; melonloader = import ../packages/melonloader/package.nix super; + + xdg-desktop-portal-hyprland = + lib.mkIf (inputs?hyprland) + inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland; + hyprland-git = + lib.mkIf (inputs?hyprland) + (inputs.hyprland.packages.${system}.hyprland.overrideAttrs (final: prev: { + patches = let + glaze_version = pkgs.glaze.version; + in + prev.patches + ++ [ + '' + diff --git a/hyprpm/CMakeLists.txt b/hyprpm/CMakeLists.txt + index 9f1318f4..7d5b8eda 100644 + --- a/hyprpm/CMakeLists.txt + +++ b/hyprpm/CMakeLists.txt + @@ -11,9 +11,9 @@ set(CMAKE_CXX_STANDARD 23) + + pkg_check_modules(hyprpm_deps REQUIRED IMPORTED_TARGET tomlplusplus hyprutils>=0.7.0) + + -find_package(glaze 7.0.0 QUIET) + +find_package(glaze ${glaze_version} QUIET) + if (NOT glaze_FOUND) + - set(GLAZE_VERSION v7.0.0) + + set(GLAZE_VERSION v${glaze_version}) + message(STATUS "glaze dependency not found, retrieving ''${GLAZE_VERSION} with FetchContent") + include(FetchContent) + FetchContent_Declare( + '' + ]; + })); } ) diff --git a/overlays/patches/glaze.patch b/overlays/patches/glaze.patch new file mode 100644 index 0000000..48c68bf --- /dev/null +++ b/overlays/patches/glaze.patch @@ -0,0 +1,16 @@ +diff --git a/hyprpm/CMakeLists.txt b/hyprpm/CMakeLists.txt +index 9f1318f4..7d5b8eda 100644 +--- a/hyprpm/CMakeLists.txt ++++ b/hyprpm/CMakeLists.txt +@@ -11,9 +11,9 @@ set(CMAKE_CXX_STANDARD 23) + + pkg_check_modules(hyprpm_deps REQUIRED IMPORTED_TARGET tomlplusplus hyprutils>=0.7.0) + +-find_package(glaze 7.0.0 QUIET) ++find_package(glaze 6.0.1 QUIET) + if (NOT glaze_FOUND) +- set(GLAZE_VERSION v7.0.0) ++ set(GLAZE_VERSION v6.0.1) + message(STATUS "glaze dependency not found, retrieving ${GLAZE_VERSION} with FetchContent") + include(FetchContent) + FetchContent_Declare( From 3f1132b7708e5f6766e4953853a06f5b52cad8f2 Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sat, 7 Mar 2026 16:45:42 +1000 Subject: [PATCH 10/10] use cerulean's v0.2.4-alpha snow.flake standard --- flake.lock | 417 ++++++++++++++++++++++++++++++++++++++++++++--------- flake.nix | 8 +- patches | 2 +- 3 files changed, 356 insertions(+), 71 deletions(-) diff --git a/flake.lock b/flake.lock index 1392e81..397532f 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,22 @@ { "nodes": { + "abseil-src": { + "flake": false, + "locked": { + "lastModified": 1722535511, + "narHash": "sha256-51jpDhdZ0n+KLmxh8KVaTz53pZAB0dHjmILFX+OLud4=", + "owner": "abseil", + "repo": "abseil-cpp", + "rev": "4447c7562e3bc702ade25105912dce503f0c4010", + "type": "github" + }, + "original": { + "owner": "abseil", + "ref": "20240722.0", + "repo": "abseil-cpp", + "type": "github" + } + }, "aquamarine": { "inputs": { "hyprutils": [ @@ -20,11 +37,11 @@ ] }, "locked": { - "lastModified": 1771610171, - "narHash": "sha256-+DeInuhbm6a6PpHDNUS7pozDouq2+8xSDefoNaZLW0E=", + "lastModified": 1772292445, + "narHash": "sha256-4F1Q7U313TKUDDovCC96m/Za4wZcJ3yqtu4eSrj8lk8=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "7f9eb087703ec4acc6b288d02fa9ea3db803cd3d", + "rev": "1dbbba659c1cef0b0202ce92cadfe13bae550e8f", "type": "github" }, "original": { @@ -33,6 +50,23 @@ "type": "github" } }, + "asio-src": { + "flake": false, + "locked": { + "lastModified": 1702548444, + "narHash": "sha256-8Xo6J6+dTvDtsthjbLMMTInHMDnMMM0rQwzbZu70J/s=", + "owner": "chriskohlhoff", + "repo": "asio", + "rev": "22ccfc94fc77356f7820601f9f33b9129a337d2d", + "type": "github" + }, + "original": { + "owner": "chriskohlhoff", + "ref": "asio-1-30-0", + "repo": "asio", + "type": "github" + } + }, "awww": { "inputs": { "flake-compat": "flake-compat", @@ -71,14 +105,34 @@ ] }, "locked": { - "lastModified": 1772502318, - "narHash": "sha256-7ZnsLuwU2/nDxWriEeccY2LvpJjPDyV13/hSKrdLFZ8=", - "path": "/home/me/cry/mk/cerulean", - "type": "path" + "lastModified": 1772846660, + "narHash": "sha256-BX9ZWoUvpamj2CJpQqqEnpjci1BukYd71UFdj5JXn8c=", + "owner": "cry128", + "repo": "cerulean", + "rev": "d9432d87a460c4f6dfb2602bba7e98267c2a0132", + "type": "github" }, "original": { - "path": "/home/me/cry/mk/cerulean", - "type": "path" + "owner": "cry128", + "repo": "cerulean", + "type": "github" + } + }, + "curl-src": { + "flake": false, + "locked": { + "lastModified": 1743572790, + "narHash": "sha256-huAGWNm2rYBmgzUuYQ21IYp2skyQECelEkXPMBJY3cE=", + "owner": "curl", + "repo": "curl", + "rev": "1c3149881769e7bd79b072e48374e4c2b3678b2f", + "type": "github" + }, + "original": { + "owner": "curl", + "ref": "curl-8_13_0", + "repo": "curl", + "type": "github" } }, "deploy-rs": { @@ -250,6 +304,23 @@ "type": "github" } }, + "fmt-src": { + "flake": false, + "locked": { + "lastModified": 1758127535, + "narHash": "sha256-AZDmIeU1HbadC+K0TIAGogvVnxt0oE9U6ocpawIgl6g=", + "owner": "fmtlib", + "repo": "fmt", + "rev": "e424e3f2e607da02742f73db84873b8084fc714c", + "type": "github" + }, + "original": { + "owner": "fmtlib", + "ref": "12.0.0", + "repo": "fmt", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -382,23 +453,27 @@ "hyprutils": "hyprutils", "hyprwayland-scanner": "hyprwayland-scanner", "hyprwire": "hyprwire", - "nixpkgs": "nixpkgs", + "nixpkgs": [ + "nixpkgs" + ], "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems_2", + "systems": [ + "systems" + ], "xdph": "xdph" }, "locked": { - "lastModified": 1772129629, - "narHash": "sha256-vUCMHuxPNd7PKy1mQsjRUDIHvI4eMbbJxl/iNwzWmGM=", - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "70cdd819e4bee3c4dcea6961d32e61e6afe4eeb0", - "type": "github" + "lastModified": 1772862346, + "narHash": "sha256-cfzHdBAkACrE2kuFlVPub2W7qZwobsrHcmYhoKVLtdY=", + "ref": "refs/heads/main", + "rev": "b41882c169f589848f0efb10c88c1dad383af04b", + "revCount": 6999, + "type": "git", + "url": "https://tearforge.net/cry/Hyprland" }, "original": { - "owner": "hyprwm", - "repo": "Hyprland", - "type": "github" + "type": "git", + "url": "https://tearforge.net/cry/Hyprland" } }, "hyprland-guiutils": { @@ -632,6 +707,91 @@ "type": "github" } }, + "incbin-src": { + "flake": false, + "locked": { + "lastModified": 1748303270, + "narHash": "sha256-vgOfViZnWTKpBB6vDNDJSB3YuuGGVhg++zsi9Ubatno=", + "owner": "graphitemaster", + "repo": "incbin", + "rev": "22061f51fe9f2f35f061f85c2b217b55dd75310d", + "type": "github" + }, + "original": { + "owner": "graphitemaster", + "repo": "incbin", + "rev": "22061f51fe9f2f35f061f85c2b217b55dd75310d", + "type": "github" + } + }, + "json-src": { + "flake": false, + "locked": { + "lastModified": 1744360948, + "narHash": "sha256-cECvDOLxgX7Q9R3IE86Hj9JJUxraDQvhoyPDF03B2CY=", + "owner": "nlohmann", + "repo": "json", + "rev": "55f93686c01528224f448c19128836e7df245f72", + "type": "github" + }, + "original": { + "owner": "nlohmann", + "ref": "v3.12.0", + "repo": "json", + "type": "github" + } + }, + "libgit2-src": { + "flake": false, + "locked": { + "lastModified": 1749227175, + "narHash": "sha256-/xI3v7LNhpgfjv/m+sZwYDhhYvS6kQYxiiiG3+EF8Mw=", + "owner": "libgit2", + "repo": "libgit2", + "rev": "0060d9cf5666f015b1067129bd874c6cc4c9c7ac", + "type": "github" + }, + "original": { + "owner": "libgit2", + "ref": "v1.9.1", + "repo": "libgit2", + "type": "github" + } + }, + "luajit-src": { + "flake": false, + "locked": { + "lastModified": 1763177035, + "narHash": "sha256-oYD86MqmlJpiCuEs4LwVtxvarPtz1RPWm8nJqNE0sBs=", + "owner": "SteamClientHomebrew", + "repo": "LuaJIT", + "rev": "89550023569c3e195e75e12951c067fe5591e0d2", + "type": "github" + }, + "original": { + "owner": "SteamClientHomebrew", + "ref": "v2.1", + "repo": "LuaJIT", + "type": "github" + } + }, + "luajson-src": { + "flake": false, + "locked": { + "lastModified": 1763065879, + "narHash": "sha256-5Mdp4jp+rqz2ufkBa1gMfd8nep+Um+mBdr6+Ut6yz9I=", + "owner": "SteamClientHomebrew", + "repo": "LuaJSON", + "rev": "0c1fabf07c42f3907287d1e4f729e0620c1fe6fd", + "type": "github" + }, + "original": { + "owner": "SteamClientHomebrew", + "repo": "LuaJSON", + "rev": "0c1fabf07c42f3907287d1e4f729e0620c1fe6fd", + "type": "github" + } + }, "mango": { "inputs": { "flake-parts": "flake-parts", @@ -676,6 +836,112 @@ "type": "github" } }, + "millennium": { + "inputs": { + "abseil-src": "abseil-src", + "asio-src": "asio-src", + "curl-src": "curl-src", + "fmt-src": "fmt-src", + "incbin-src": "incbin-src", + "json-src": "json-src", + "libgit2-src": "libgit2-src", + "luajit-src": "luajit-src", + "luajson-src": "luajson-src", + "millennium-src": "millennium-src", + "minhook-src": "minhook-src", + "mini-src": "mini-src", + "minizip-src": "minizip-src", + "nixpkgs": [ + "nixpkgs-unstable" + ], + "re2-src": "re2-src", + "websocketpp-src": "websocketpp-src", + "zlib-src": "zlib-src" + }, + "locked": { + "dir": "packages/nix", + "lastModified": 1772390578, + "narHash": "sha256-3yQlDZz9JZqPFiYYj8fQkpCXUzjlAw4s7zaZ2n0wFmE=", + "owner": "SteamClientHomebrew", + "repo": "millennium", + "rev": "41d8c701e1f1ed4362e8378d12bbe5cb0cb811d6", + "type": "github" + }, + "original": { + "dir": "packages/nix", + "owner": "SteamClientHomebrew", + "repo": "millennium", + "type": "github" + } + }, + "millennium-src": { + "flake": false, + "locked": { + "lastModified": 1770463863, + "narHash": "sha256-MceGTpXobCAh5Ll/1iTWcEf6/nHY3Ll1t06JxbYc+Co=", + "owner": "SteamClientHomebrew", + "repo": "Millennium", + "rev": "1bc62c94a06f25f7e8d7e269f11cd968cf576bff", + "type": "github" + }, + "original": { + "owner": "SteamClientHomebrew", + "repo": "Millennium", + "rev": "1bc62c94a06f25f7e8d7e269f11cd968cf576bff", + "type": "github" + } + }, + "minhook-src": { + "flake": false, + "locked": { + "lastModified": 1743163800, + "narHash": "sha256-0eGFfg365bb4zic1WTHMvKHbxuhhGp72/clu8OklHXs=", + "owner": "TsudaKageyu", + "repo": "minhook", + "rev": "c3fcafdc10146beb5919319d0683e44e3c30d537", + "type": "github" + }, + "original": { + "owner": "TsudaKageyu", + "ref": "v1.3.4", + "repo": "minhook", + "type": "github" + } + }, + "mini-src": { + "flake": false, + "locked": { + "lastModified": 1743356736, + "narHash": "sha256-zBFFOlECbie7+62fTGf+NP4gNmfv2Qddw3ys6xn7o9U=", + "owner": "metayeti", + "repo": "mINI", + "rev": "52b66e987cb56171dc91d96115cdf094b6e4d7a0", + "type": "github" + }, + "original": { + "owner": "metayeti", + "ref": "0.9.18", + "repo": "mINI", + "type": "github" + } + }, + "minizip-src": { + "flake": false, + "locked": { + "lastModified": 1746408966, + "narHash": "sha256-I3CZwtfJMsZYQOMdGhooUN8vssnQj6rCzv8F+rne3vg=", + "owner": "zlib-ng", + "repo": "minizip-ng", + "rev": "f3ed731e27a97e30dffe076ed5e0537daae5c1bd", + "type": "github" + }, + "original": { + "owner": "zlib-ng", + "ref": "4.0.10", + "repo": "minizip-ng", + "type": "github" + } + }, "nix-flatpak": { "locked": { "lastModified": 1767983141, @@ -777,16 +1043,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1771848320, - "narHash": "sha256-0MAd+0mun3K/Ns8JATeHT1sX28faLII5hVLq0L3BdZU=", - "owner": "NixOS", + "lastModified": 1771903837, + "narHash": "sha256-sdaqdnsQCv3iifzxwB22tUwN/fSHoN7j2myFW5EIkGk=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "2fc6539b481e1d2569f25f8799236694180c0993", + "rev": "e764fc9a405871f1f6ca3d1394fb422e0a0c3951", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-unstable", + "owner": "nixos", + "ref": "nixos-25.11", "repo": "nixpkgs", "type": "github" } @@ -854,22 +1120,6 @@ } }, "nixpkgs_2": { - "locked": { - "lastModified": 1771903837, - "narHash": "sha256-sdaqdnsQCv3iifzxwB22tUwN/fSHoN7j2myFW5EIkGk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "e764fc9a405871f1f6ca3d1394fb422e0a0c3951", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-25.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { "locked": { "lastModified": 1767313136, "narHash": "sha256-16KkgfdYqjaeRGBaYsNrhPRRENs0qzkQVUooNHtoy2w=", @@ -888,8 +1138,8 @@ "nt": { "inputs": { "nix-unit": "nix-unit", - "nixpkgs": "nixpkgs_3", - "systems": "systems_3" + "nixpkgs": "nixpkgs_2", + "systems": "systems_2" }, "locked": { "lastModified": 1770975056, @@ -915,11 +1165,11 @@ ] }, "locked": { - "lastModified": 1771858127, - "narHash": "sha256-Gtre9YoYl3n25tJH2AoSdjuwcqij5CPxL3U3xysYD08=", + "lastModified": 1772024342, + "narHash": "sha256-+eXlIc4/7dE6EcPs9a2DaSY3fTA9AE526hGqkNID3Wg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "49bbbfc218bf3856dfa631cead3b052d78248b83", + "rev": "6e34e97ed9788b17796ee43ccdbaf871a5c2b476", "type": "github" }, "original": { @@ -928,6 +1178,23 @@ "type": "github" } }, + "re2-src": { + "flake": false, + "locked": { + "lastModified": 1762353507, + "narHash": "sha256-0J1HVk+eR7VN0ymucW9dNlT36j16XIfCzcs1EVyEIEU=", + "owner": "google", + "repo": "re2", + "rev": "927f5d53caf8111721e734cf24724686bb745f55", + "type": "github" + }, + "original": { + "owner": "google", + "ref": "2025-11-05", + "repo": "re2", + "type": "github" + } + }, "root": { "inputs": { "awww": "awww", @@ -937,16 +1204,17 @@ "home-manager": "home-manager", "hyprland": "hyprland", "mango": "mango", + "millennium": "millennium", "nix-flatpak": "nix-flatpak", "nixcats": "nixcats", "nixcord": "nixcord", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs", "nixpkgs-master": "nixpkgs-master", "nixpkgs-unstable": "nixpkgs-unstable", "nt": "nt", "sddm-silent": "sddm-silent", "spicetify-nix": "spicetify-nix", - "systems": "systems_4" + "systems": "systems_3" } }, "rust-overlay": { @@ -1087,21 +1355,6 @@ } }, "systems_2": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_3": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -1116,7 +1369,7 @@ "type": "github" } }, - "systems_4": { + "systems_3": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", @@ -1171,6 +1424,23 @@ "type": "github" } }, + "websocketpp-src": { + "flake": false, + "locked": { + "lastModified": 1587320717, + "narHash": "sha256-9fIwouthv2GcmBe/UPvV7Xn9P2o0Kmn2hCI4jCh0hPM=", + "owner": "zaphoyd", + "repo": "websocketpp", + "rev": "56123c87598f8b1dd471be83ca841ceae07f95ba", + "type": "github" + }, + "original": { + "owner": "zaphoyd", + "ref": "0.8.2", + "repo": "websocketpp", + "type": "github" + } + }, "xdph": { "inputs": { "hyprland-protocols": [ @@ -1211,6 +1481,23 @@ "repo": "xdg-desktop-portal-hyprland", "type": "github" } + }, + "zlib-src": { + "flake": false, + "locked": { + "lastModified": 1754565515, + "narHash": "sha256-c2RYqHi3hj/ViBzJcYWoNib27GAbq/B1SJUfvG7CPG4=", + "owner": "zlib-ng", + "repo": "zlib-ng", + "rev": "425439062b114a0f6cf625022c41d929c7e879f9", + "type": "github" + }, + "original": { + "owner": "zlib-ng", + "ref": "2.2.5", + "repo": "zlib-ng", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 6891462..eb592da 100644 --- a/flake.nix +++ b/flake.nix @@ -16,7 +16,7 @@ nt.url = "git+https://tearforge.net/cry/nt"; cerulean = { - url = "github:cry128/cerulean/bleeding"; + url = "github:cry128/cerulean"; inputs = { nt.follows = "nt"; systems.follows = "systems"; @@ -91,8 +91,6 @@ extra-experimental-features = "pipe-operators"; }; - outputs = inputs: let - inherit (inputs.cerulean) snow; - in - snow.flake inputs ./.; + outputs = {cerulean, ...} @ inputs: + cerulean.snow.flake inputs ./.; } diff --git a/patches b/patches index 7be726f..6607af5 100644 --- a/patches +++ b/patches @@ -1,6 +1,6 @@ # add sddm profile pic systemd.tmpfiles.rules = let - imagePath = root + "/homes/aurora/profile.png"; + imagePath = /${root}/homes/aurora/profile.png; in lib.mkIf (builtins.pathExists imagePath) [ "L /var/lib/AccountsService/icons/${config.home.username} - - - - ${imagePath}"