mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-09-01 13:14:42 +00:00
Also migrates away from them with these commands, using ast-grep 0.43.0
with these commands in bash (assisted by ChatGPT):
```bash
for old in extractType1 extractType2; do
ast-grep \
--lang nix \
--pattern "\$TOOLS.$old" \
--rewrite '$TOOLS.extract' \
--update-all \
pkgs
done
ast-grep \
--lang nix \
--pattern '$TOOLS.wrapType1' \
--rewrite '$TOOLS.wrapType2' \
--update-all \
pkgs
```
Assisted-by: GPT-5.6-Sol Medium via ChatGPT
50 lines
1.5 KiB
Nix
50 lines
1.5 KiB
Nix
{
|
|
lib,
|
|
fetchurl,
|
|
appimageTools,
|
|
makeWrapper,
|
|
}:
|
|
|
|
let
|
|
pname = "plexamp";
|
|
version = "4.13.2";
|
|
|
|
src = fetchurl {
|
|
url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage";
|
|
name = "${pname}-${version}.AppImage";
|
|
hash = "sha512-Ww/QfMgmeghthfuGfc4Plv7vUKLikLf4R+SImG6TuYg0pDJ5psuHtXQezV0BurVRm6eQ+Ori+YGK2A52tCkcfw==";
|
|
};
|
|
|
|
appimageContents = appimageTools.extract {
|
|
inherit pname version src;
|
|
};
|
|
in
|
|
appimageTools.wrapType2 {
|
|
inherit pname version src;
|
|
|
|
extraInstallCommands = ''
|
|
install -m 444 -D ${appimageContents}/plexamp.desktop $out/share/applications/plexamp.desktop
|
|
install -m 444 -D ${appimageContents}/plexamp.svg \
|
|
$out/share/icons/hicolor/scalable/apps/plexamp.svg
|
|
substituteInPlace $out/share/applications/${pname}.desktop \
|
|
--replace 'Exec=AppRun' 'Exec=${pname}'
|
|
source "${makeWrapper}/nix-support/setup-hook"
|
|
wrapProgram "$out/bin/plexamp" \
|
|
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
|
|
'';
|
|
|
|
passthru.updateScript = ./update-plexamp.sh;
|
|
|
|
meta = {
|
|
description = "Beautiful Plex music player for audiophiles, curators, and hipsters";
|
|
homepage = "https://plexamp.com/";
|
|
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/84";
|
|
license = lib.licenses.unfree;
|
|
maintainers = with lib.maintainers; [
|
|
killercup
|
|
redhawk
|
|
];
|
|
platforms = [ "x86_64-linux" ];
|
|
};
|
|
}
|