Files
nixpkgs/pkgs/by-name/nu/nuclear/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

40 lines
1.3 KiB
Nix

{
appimageTools,
lib,
fetchurl,
}:
let
pname = "nuclear";
version = "0.6.48";
src = fetchurl {
# Nuclear currently only publishes AppImage releases for x86_64, which is hardcoded in
# the package name. We also hardcode the host arch in the release name, but should upstream
# provide more arches, we should use stdenv.hostPlatform to determine the arch and choose
# source URL accordingly.
url = "https://github.com/nukeop/nuclear/releases/download/v${version}/${pname}-v${version}-x86_64.AppImage";
hash = "sha256-k3qGWPn+O4kazsrrZAYHIvSrrix9LNnnJgZGJqlJbJE=";
};
appimageContents = appimageTools.extract { inherit pname version src; };
in
appimageTools.wrapType2 {
inherit pname version src;
extraInstallCommands = ''
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace-fail 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
'';
meta = {
description = "Streaming music player that finds free music for you";
homepage = "https://nuclear.js.org/";
license = lib.licenses.agpl3Plus;
maintainers = [ lib.maintainers.NotAShelf ];
platforms = [ "x86_64-linux" ];
mainProgram = "nuclear";
};
}