diff --git a/.github/workflows/nix-build.yml b/.github/workflows/nix-build.yml index fa4564ea..c7e22a84 100644 --- a/.github/workflows/nix-build.yml +++ b/.github/workflows/nix-build.yml @@ -19,7 +19,7 @@ jobs: with: name: alyraffauf authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - - name: Build default package + - name: Build adjustor package run: nix build --accept-flake-config .#packages.x86_64-linux.adjustor clean-install-build: runs-on: ubuntu-latest @@ -33,8 +33,22 @@ jobs: with: name: alyraffauf authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - - name: Build default package + - name: Build clean-install package run: nix build --accept-flake-config .#packages.x86_64-linux.clean-install + emudeck-build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@main + with: + fetch-depth: 1 + - uses: DeterminateSystems/nix-installer-action@main + - uses: DeterminateSystems/magic-nix-cache-action@main + - uses: cachix/cachix-action@master + with: + name: alyraffauf + authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' + - name: Build emudeck package + run: nix build --accept-flake-config .#packages.x86_64-linux.emudeck hhd-ui-build: runs-on: ubuntu-latest steps: @@ -47,7 +61,7 @@ jobs: with: name: alyraffauf authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - - name: Build default package + - name: Build hhd-ui package run: nix build --accept-flake-config .#packages.x86_64-linux.hhd-ui rofi-bluetooth-build: runs-on: ubuntu-latest @@ -61,7 +75,7 @@ jobs: with: name: alyraffauf authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - - name: Build default package + - name: Build rofi-bluetooth package run: nix build --accept-flake-config .#packages.x86_64-linux.rofi-bluetooth fallarbor-build: runs-on: ubuntu-latest diff --git a/flake.nix b/flake.nix index b7447298..f2c8b3e8 100644 --- a/flake.nix +++ b/flake.nix @@ -208,6 +208,7 @@ text = ./flake/clean-install.sh; }; + emudeck = pkgs.callPackage ./pkgs/emudeck.nix {}; hhd-ui = pkgs.callPackage ./pkgs/hhd-ui.nix {}; rofi-bluetooth = pkgs.callPackage ./pkgs/rofi-bluetooth.nix {}; }); diff --git a/overlays/default.nix b/overlays/default.nix index e7ee38b8..16867e24 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -2,5 +2,6 @@ {self}: final: prev: { adjustor = self.packages.${prev.system}.adjustor; hhd-ui = self.packages.${prev.system}.hhd-ui; + emudeck = self.packages.${prev.system}.emudeck; rofi-bluetooth = self.packages.${prev.system}.rofi-bluetooth; } diff --git a/pkgs/emudeck.nix b/pkgs/emudeck.nix new file mode 100644 index 00000000..7ce647f6 --- /dev/null +++ b/pkgs/emudeck.nix @@ -0,0 +1,35 @@ +{ + appimageTools, + fetchurl, + lib, +}: +appimageTools.wrapType2 rec { + pname = "emudeck"; + version = "2.3.0"; + + src = fetchurl { + hash = "sha256-BVlATLKbE9wwMs4844UpXCTZsLW1oRFWf9hujVUpa4k="; + url = "https://github.com/EmuDeck/emudeck-electron/releases/download/v${version}/EmuDeck-${version}.AppImage"; + }; + + extraPkgs = pkgs: + with pkgs; [ + bash + flatpak + fuse2 + git + jq + newt + rsync + unzip + zenity + ]; + + meta = with lib; { + description = "EmuDeck utility to manage ROMs on handheld PCs"; + homepage = "https://github.com/EmuDeck/emudeck-electron"; + license = licenses.mit; + mainProgram = "emudeck"; + platforms = platforms.linux; + }; +}