From 90f2688ec5e25b272cd00a1b8278929b822e0666 Mon Sep 17 00:00:00 2001 From: William Date: Sat, 31 Aug 2024 11:54:19 -0300 Subject: [PATCH] Added sgdboop pkg and created custom overlay --- flake.nix | 23 +++++++++++++++++++++-- hosts/desktops/common/packages.nix | 1 + hosts/desktops/io.nix | 8 +++++--- packages/sgdboop.nix | 26 ++++++++++++++++++++++++++ 4 files changed, 53 insertions(+), 5 deletions(-) create mode 100644 packages/sgdboop.nix diff --git a/flake.nix b/flake.nix index 3492598..a541511 100644 --- a/flake.nix +++ b/flake.nix @@ -56,7 +56,10 @@ home-manager.nixosModules.default impermanence.nixosModules.impermanence nix-index-db.nixosModules.nix-index - { nixpkgs.overlays = [ agenix.overlays.default ]; } + { + nixpkgs.overlays = + [ agenix.overlays.default self.overlays.custom ]; + } ]; }; @@ -69,7 +72,10 @@ home-manager.nixosModules.default impermanence.nixosModules.impermanence nix-index-db.nixosModules.nix-index - { nixpkgs.overlays = [ agenix.overlays.default ]; } + { + nixpkgs.overlays = + [ agenix.overlays.default self.overlays.custom ]; + } ]; }; @@ -130,6 +136,19 @@ # }; # }; + packages."x86_64-linux" = { + sgdboop = nixpkgs.legacyPackages."x86_64-linux".callPackage + ./packages/sgdboop.nix { }; + chromeos-ectool = nixpkgs.legacyPackages."x86_64-linux".callPackage + ./packages/chromeos-ectool.nix { }; + }; + + overlays = { + custom = final: prev: { + inherit (self.packages."x86_64-linux") sgdboop chromeos-ectool; + }; + }; + deploy = { autoRollback = true; magicRollback = false; diff --git a/hosts/desktops/common/packages.nix b/hosts/desktops/common/packages.nix index f39b0c8..a49ed40 100644 --- a/hosts/desktops/common/packages.nix +++ b/hosts/desktops/common/packages.nix @@ -50,6 +50,7 @@ in { pulseaudio qbittorrent ripgrep + sgdboop solvespace space-cadet-pinball sparrow diff --git a/hosts/desktops/io.nix b/hosts/desktops/io.nix index 8601c1e..57b7b91 100644 --- a/hosts/desktops/io.nix +++ b/hosts/desktops/io.nix @@ -14,8 +14,6 @@ let cp -R $wttsrc/{cml,sof-rt5682} $out/share/alsa/ucm2/conf.d ''; }; - - ectool = (pkgs.callPackage ../../packages/chromeos-ectool.nix { }); in { imports = [ # Host-common imports @@ -43,7 +41,11 @@ in { }; environment = { - systemPackages = with pkgs; [ maliit-keyboard sof-firmware ectool ]; + systemPackages = with pkgs; [ + maliit-keyboard + sof-firmware + custom.chormeos-ectool + ]; sessionVariables.ALSA_CONFIG_UCM2 = "${cml-ucm-conf}/share/alsa/ucm2"; }; diff --git a/packages/sgdboop.nix b/packages/sgdboop.nix new file mode 100644 index 0000000..da2649a --- /dev/null +++ b/packages/sgdboop.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchurl, autoPatchelfHook, openssl, curl, gtk3, gdk-pixbuf, pango +, cairo, glib }: +stdenv.mkDerivation rec { + pname = "sgdboop"; + version = "1.2.8"; + + src = fetchurl { + url = + "https://github.com/SteamGridDB/SGDBoop/releases/download/v${version}/sgdboop-linux64.tar.gz"; + sha256 = "sha256-LrP0qFg4kOhAicWtORfnW3TvIegvcJf/GiYTHcOeJK4="; + }; + + sourceRoot = "."; + + nativeBuildInputs = [ autoPatchelfHook ]; + + buildInputs = [ openssl curl gtk3 gdk-pixbuf glib pango cairo ]; + + installPhase = '' + runHook preInstall + install -m755 -D SGDBoop $out/bin/SGDBoop + install -m444 -D libiup.so $out/lib/libiup.so + install -m444 -D com.steamgriddb.SGDBoop.desktop -t $out/share/applications/ + runHook postInstall + ''; +}