clean up and final touches

This commit is contained in:
2026-03-06 13:22:54 -05:00
parent d51bb39659
commit 3bb0ac8aee
2 changed files with 26 additions and 11 deletions

View File

@@ -1,11 +1,11 @@
let
let
nixpkgs = fetchTarball "https://github.com/NixOS/nixpkgs/tarball/nixos-25.11";
pkgs = import nixpkgs { config = {}; overlays = []; };
in
in
{
pinepods = pkgs.callPackage ./pinepods.nix {
# Pin wasm-bindgen-cli to exactly the version PinePods requires
wasm-bindgen-cli = pkgs.wasm-bindgen-cli_0_2_105;
inherit (pkgs) binaryen tailwindcss_3 libayatana-appindicator gst_all_1;
};
pinepods-frontend = (pkgs.callPackage ./pinepods.nix { }).frontend;
}
}

View File

@@ -120,7 +120,7 @@ rustPlatform.buildRustPackage {
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-ugly
gst_all_1.gst-libav # for audio codec support
gst_all_1.gst-libav
];
OPENSSL_NO_VENDOR = "1";
@@ -128,12 +128,12 @@ rustPlatform.buildRustPackage {
preBuild = ''
chmod -R u+w $NIX_BUILD_TOP/source
# Link the pre-built frontend where tauri.conf.json expects it
ln -s ${frontend} $NIX_BUILD_TOP/source/web/dist
# Remove devUrl so Tauri uses frontendDist instead of dev server
# Remove devUrl so Tauri serves embedded assets instead of connecting to a dev server
sed -i '/"devUrl"/d' $NIX_BUILD_TOP/source/web/src-tauri/tauri.conf.json
echo "=== tauri.conf.json ==="
cat $NIX_BUILD_TOP/source/web/src-tauri/tauri.conf.json | head -10
'';
installPhase = ''
@@ -141,17 +141,32 @@ rustPlatform.buildRustPackage {
install -Dm755 target/x86_64-unknown-linux-gnu/release/app $out/bin/pinepods
# Desktop entry
if [ -f ../../pinepods.desktop ]; then
install -Dm644 ../../pinepods.desktop $out/share/applications/pinepods.desktop
install -Dm644 ../../pinepods.desktop \
$out/share/applications/pinepods.desktop
fi
for size in 32x32 64x64 128x128 256x256; do
# Icons
for size in 32x32 128x128 256x256; do
if [ -f icons/''${size}.png ]; then
install -Dm644 icons/''${size}.png \
$out/share/icons/hicolor/''${size}/apps/pinepods.png
fi
done
# Tray icon install as the app icon so the taskbar uses it
if [ -f icons/icon.png ]; then
install -Dm644 icons/icon.png \
$out/share/icons/hicolor/256x256/apps/com.gooseberrydevelopment.pinepods.png
fi
# AppStream metadata
if [ -f com.gooseberrydevelopment.pinepods.metainfo.xml ]; then
install -Dm644 com.gooseberrydevelopment.pinepods.metainfo.xml \
$out/share/metainfo/com.gooseberrydevelopment.pinepods.metainfo.xml
fi
runHook postInstall
'';
@@ -160,7 +175,7 @@ rustPlatform.buildRustPackage {
--set WEBKIT_DISABLE_COMPOSITING_MODE 1 \
--set WEBKIT_FORCE_SANDBOX 0 \
--prefix LD_LIBRARY_PATH : "${libayatana-appindicator}/lib" \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "${gst_all_1.gst-plugins-base}/lib/gstreamer-1.0:${gst_all_1.gst-plugins-good}/lib/gstreamer-1.0:${gst_all_1.gst-plugins-bad}/lib/gstreamer-1.0:${gst_all_1.gst-plugins-ugly}/lib/gstreamer-1.0:${gst_all_1.gst-libav}/lib/gstreamer-1.0" \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "${gst_all_1.gstreamer}/lib/gstreamer-1.0:${gst_all_1.gst-plugins-base}/lib/gstreamer-1.0:${gst_all_1.gst-plugins-good}/lib/gstreamer-1.0:${gst_all_1.gst-plugins-bad}/lib/gstreamer-1.0:${gst_all_1.gst-plugins-ugly}/lib/gstreamer-1.0:${gst_all_1.gst-libav}/lib/gstreamer-1.0" \
--prefix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}" \
--prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules"
'';