From accf87eeb1482cd9835a20a3a0d483384ea5a772 Mon Sep 17 00:00:00 2001 From: Kjetil Orbekk Date: Sat, 25 Feb 2017 13:52:09 -0500 Subject: Nix packages. --- nixos/packages/gupnp_dlna/default.nix | 14 ++++++++ nixos/packages/pulseaudio-dlna/default.nix | 26 +++++++++++++++ nixos/packages/rygel/default.nix | 53 ++++++++++++++++++++++++++++++ nixos/stardew-valley.nix | 45 +++++++++++++++++++++++++ 4 files changed, 138 insertions(+) create mode 100644 nixos/packages/gupnp_dlna/default.nix create mode 100644 nixos/packages/pulseaudio-dlna/default.nix create mode 100644 nixos/packages/rygel/default.nix create mode 100644 nixos/stardew-valley.nix diff --git a/nixos/packages/gupnp_dlna/default.nix b/nixos/packages/gupnp_dlna/default.nix new file mode 100644 index 0000000..70b77a1 --- /dev/null +++ b/nixos/packages/gupnp_dlna/default.nix @@ -0,0 +1,14 @@ +{ stdenv, fetchurl, pkgconfig, libxml2, glib, gst_all_1 }: + +stdenv.mkDerivation rec { + name = "gupnp-dlna-${version}"; + majorVersion = "0.10"; + version = "${majorVersion}.4"; + + buildInputs = [ pkgconfig libxml2 glib gst_all_1.gst-plugins-base ]; + + src = fetchurl { + url = "mirror://gnome/sources/gupnp-dlna/${majorVersion}/${name}.tar.xz"; + sha256 = "5641134baa8fe3a2e129de15fc6a992f2fe1006ea446b7566483eada4840e1d6"; + }; +} diff --git a/nixos/packages/pulseaudio-dlna/default.nix b/nixos/packages/pulseaudio-dlna/default.nix new file mode 100644 index 0000000..509920f --- /dev/null +++ b/nixos/packages/pulseaudio-dlna/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchFromGitHub, python27Packages }: + +python27Packages.buildPythonApplication rec { + name = "pulseaudio-dlna-${version}"; + version = "0.5.2"; + + src = fetchFromGitHub { + owner = "masmu"; + repo = "pulseaudio-dlna"; + rev = version; + sha256 = "1y8mhd537x0nfippy8mn9a0iq9xdisixign0372ldp9pwy8w7fd4"; + }; + + propagatedBuildInputs = with python27Packages; [ + docopt requests2 setproctitle protobuf notify2 psutil futures chardet + netaddr netifaces lxml zeroconf pygobject2 + ]; + + meta = with stdenv.lib; { + homepage = https://github.com/masmu/pulseaudio-dlna; + description = "A DLNA server which brings DLNA / UPNP support to PulseAudio"; + license = licenses.gpl3; + maintainers = with maintainers; [ orbekk ]; + platforms = platforms.linux; + }; +} diff --git a/nixos/packages/rygel/default.nix b/nixos/packages/rygel/default.nix new file mode 100644 index 0000000..4354a75 --- /dev/null +++ b/nixos/packages/rygel/default.nix @@ -0,0 +1,53 @@ +{ stdenv +, fetchurl +, glib +, gnome3 +, gobjectIntrospection +, gst_all_1 +, gst_plugins ? with gst_all_1; [ gst-plugins-base gst-plugins-good gst-plugins-ugly ] +, gupnp +, gupnp_av +, gupnp_dlna +, intltool +, makeWrapper +, pkgconfig +, sqlite +}: + +stdenv.mkDerivation rec { + name = "rygel-${version}"; + version = "0.28.3"; + + enableParallelBuilding = true; + + buildInputs = [ + gnome3.libgee + gnome3.libmediaart + gst_all_1.gstreamer + gupnp + gupnp_av + intltool + makeWrapper + pkgconfig + sqlite + ] ++ gst_plugins; + + propagatedBuildInputs = [ + gnome3.tracker + gobjectIntrospection + ]; + + preConfigure = '' + export PKG_CONFIG_PATH="${gupnp_dlna}/lib/pkgconfig:$PKG_CONFIG_PATH" + ''; + + postInstall = '' + wrapProgram "$out/bin/rygel" \ + --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" + ''; + + src = fetchurl { + url = "http://ftp.gnome.org/pub/GNOME/sources/rygel/0.28/rygel-${version}.tar.xz"; + sha256 = "bedb76ecb1f36b721914b5c65934f8cd01f281f9ab40c22c583902c22f169c77"; + }; +} diff --git a/nixos/stardew-valley.nix b/nixos/stardew-valley.nix new file mode 100644 index 0000000..ef2bb55 --- /dev/null +++ b/nixos/stardew-valley.nix @@ -0,0 +1,45 @@ +{stdenv, glibc, coreutils, patchelf, requireFile, unzip, xorg, makeWrapper, libpulseaudio }: + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "stardew-valley-${version}"; + version = "2.3.0.4"; + src = requireFile { + name = "gog_stardew_valley_${version}.sh"; + sha256 = "88e1fae7226c7bfa91cb28c137c24867e12b1a0b6e824e6ffe73e1eefc166aac"; + url = "https://gog.com"; + }; + + buildInputs = [ coreutils unzip makeWrapper ]; + + unpackPhase = '' + mkdir src + cd src + unzip $src || true + # offset=$(${stdenv.shell} -c "$(grep -axm1 -e 'offset=.*' $src); echo \$offset" $src) + # dd if="$src" ibs=$offset skip=1 | gzip -cd | tar xvf - || true + ''; + + libPath = stdenv.lib.makeLibraryPath [ glibc xorg.libX11 xorg.libXext libpulseaudio ]; + + buildPhase = '' + patchelf \ + --set-rpath "${stdenv.lib.makeLibraryPath [ xorg.libX11 ]}" \ + --set-interpreter "$(cat ${stdenv.cc}/nix-support/dynamic-linker)" \ + ./data/noarch/game/mcs.bin.x86_64 + patchelf \ + --set-rpath "${stdenv.lib.makeLibraryPath [ xorg.libX11 ]}" \ + --set-interpreter "$(cat ${stdenv.cc}/nix-support/dynamic-linker)" \ + ./data/noarch/game/StardewValley.bin.x86_64 + ''; + + installPhase = '' + mkdir $out + cp -r * $out/ + makeWrapper \ + "$out/data/noarch/start.sh" \ + "$out/bin/stardew-valley" \ + --prefix LD_LIBRARY_PATH : "${libPath}" + ''; +} -- cgit v1.2.3