uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
|
|
@ -0,0 +1,148 @@
|
|||
{ lib, stdenv, fetchurl, makeWrapper, makeDesktopItem, zlib, glib, libpng, freetype, openssl
|
||||
, xorg, fontconfig, qtbase, qtwebengine, qtwebchannel, qtsvg, qtwebsockets, xkeyboard_config
|
||||
, alsa-lib, libpulseaudio ? null, libredirect, quazip, which, unzip, llvmPackages_10, writeShellScriptBin
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
arch = if stdenv.is64bit then "amd64" else "x86";
|
||||
|
||||
libDir = if stdenv.is64bit then "lib64" else "lib";
|
||||
|
||||
deps =
|
||||
[ zlib glib libpng freetype xorg.libSM xorg.libICE xorg.libXrender openssl
|
||||
xorg.libXrandr xorg.libXfixes xorg.libXcursor xorg.libXinerama
|
||||
xorg.libxcb fontconfig xorg.libXext xorg.libX11 alsa-lib qtbase qtwebengine qtwebchannel qtsvg
|
||||
qtwebsockets libpulseaudio quazip llvmPackages_10.libcxx llvmPackages_10.libcxxabi # llvmPackages_11 and higher crash https://github.com/NixOS/nixpkgs/issues/161395
|
||||
];
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "teamspeak";
|
||||
exec = "ts3client";
|
||||
icon = "teamspeak";
|
||||
comment = "The TeamSpeak voice communication tool";
|
||||
desktopName = "TeamSpeak";
|
||||
genericName = "TeamSpeak";
|
||||
categories = [ "Network" ];
|
||||
};
|
||||
|
||||
fakeLess = writeShellScriptBin "less" "cat";
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "teamspeak-client";
|
||||
|
||||
version = "3.5.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://files.teamspeak-services.com/releases/client/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run";
|
||||
sha256 = if stdenv.is64bit
|
||||
then "sha256:0hjai1bd4mq3g2dlyi0zkn8s4zlgxd38skw77mb78nc4di5gvgpg"
|
||||
else "sha256:1y1c65nap91nv9xkvd96fagqbfl56p9n0rl6iac0i29bkysdmija";
|
||||
};
|
||||
|
||||
# grab the plugin sdk for the desktop icon
|
||||
pluginsdk = fetchurl {
|
||||
url = "http://dl.4players.de/ts/client/pluginsdk/pluginsdk_3.1.1.1.zip";
|
||||
sha256 = "1bywmdj54glzd0kffvr27r84n4dsd0pskkbmh59mllbxvj0qwy7f";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper fakeLess which unzip ];
|
||||
|
||||
unpackPhase =
|
||||
''
|
||||
echo -e '\ny' | sh -xe $src
|
||||
cd TeamSpeak*
|
||||
'';
|
||||
|
||||
buildPhase =
|
||||
''
|
||||
mv ts3client_linux_${arch} ts3client
|
||||
echo "patching ts3client..."
|
||||
patchelf --replace-needed libquazip.so ${quazip}/lib/libquazip1-qt5.so ts3client
|
||||
patchelf \
|
||||
--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath ${lib.makeLibraryPath deps}:$(cat $NIX_CC/nix-support/orig-cc)/${libDir} \
|
||||
--force-rpath \
|
||||
ts3client
|
||||
'';
|
||||
|
||||
installPhase =
|
||||
''
|
||||
# Delete unecessary libraries - these are provided by nixos.
|
||||
rm *.so.* *.so
|
||||
rm QtWebEngineProcess
|
||||
rm qt.conf
|
||||
rm -r platforms # contains libqxcb.so
|
||||
|
||||
# Install files.
|
||||
mkdir -p $out/lib/teamspeak
|
||||
mv * $out/lib/teamspeak/
|
||||
|
||||
# Make a desktop item
|
||||
mkdir -p $out/share/applications/ $out/share/icons/hicolor/64x64/apps/
|
||||
unzip ${pluginsdk}
|
||||
cp pluginsdk/docs/client_html/images/logo.png $out/share/icons/hicolor/64x64/apps/teamspeak.png
|
||||
cp ${desktopItem}/share/applications/* $out/share/applications/
|
||||
|
||||
# Make a symlink to the binary from bin.
|
||||
mkdir -p $out/bin/
|
||||
ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client
|
||||
|
||||
wrapProgram $out/bin/ts3client \
|
||||
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
|
||||
--set QT_PLUGIN_PATH "${qtbase}/${qtbase.qtPluginPrefix}" \
|
||||
--set NIX_REDIRECTS /usr/share/X11/xkb=${xkeyboard_config}/share/X11/xkb
|
||||
'';
|
||||
|
||||
dontStrip = true;
|
||||
dontPatchELF = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "The TeamSpeak voice communication tool";
|
||||
homepage = "https://teamspeak.com/";
|
||||
license = {
|
||||
fullName = "Teamspeak client license";
|
||||
url = "https://www.teamspeak.com/en/privacy-and-terms/";
|
||||
free = false;
|
||||
};
|
||||
maintainers = with maintainers; [ lhvwb lukegb ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
||||
/*
|
||||
License issues:
|
||||
Date: Mon, 10 Dec 2007 19:55:16 -0500
|
||||
From: TeamSpeak Sales <sales@tritoncia.com>
|
||||
To: 'Marc Weber' <marco-oweber@gmx.de>
|
||||
Subject: RE: teamspeak on nix?
|
||||
|
||||
Yes, that would be fine. As long as you are not renting servers or selling
|
||||
TeamSpeak then you are more than welcome to distribute it.
|
||||
|
||||
Thank you,
|
||||
|
||||
TeamSpeak Sales Team
|
||||
________________________________
|
||||
e-Mail: sales@tritoncia.com
|
||||
TeamSpeak: http://www.TeamSpeak.com
|
||||
Account Login: https://sales.TritonCIA.com/users
|
||||
|
||||
|
||||
|
||||
-----Original Message-----
|
||||
From: Marc Weber [mailto:marco-oweber@gmx.de]
|
||||
Sent: Monday, December 10, 2007 5:03 PM
|
||||
To: sales@tritoncia.com
|
||||
Subject: teamspeak on nix?
|
||||
|
||||
Hello,
|
||||
|
||||
nix is very young software distribution system (http://nix.cs.uu.nl/)
|
||||
I'd like to ask wether you permit us to add teamspeak (server/ client?)
|
||||
|
||||
Sincerly
|
||||
Marc Weber (small nix contributor)
|
||||
*/
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
{ lib, stdenv, fetchurl, postgresql, autoPatchelfHook, writeScript }:
|
||||
|
||||
let
|
||||
arch = if stdenv.is64bit then "amd64" else "x86";
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "teamspeak-server";
|
||||
version = "3.13.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://files.teamspeak-services.com/releases/server/${version}/teamspeak3-server_linux_${arch}-${version}.tar.bz2";
|
||||
sha256 = if stdenv.is64bit
|
||||
then "sha256-U3BNJ4Jjhd39gD7iMsHT8CGtm/GFQDE2kYQa2btyK+w="
|
||||
else "sha256-8UKiFedv6w5bmqNvo3AXwQnUROwbZnU0ZTh9V17zmxQ=";
|
||||
};
|
||||
|
||||
buildInputs = [ stdenv.cc.cc postgresql.lib ];
|
||||
|
||||
nativeBuildInputs = [ autoPatchelfHook ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
# Install files.
|
||||
mkdir -p $out/lib/teamspeak
|
||||
mv * $out/lib/teamspeak/
|
||||
|
||||
# Make symlinks to the binaries from bin.
|
||||
mkdir -p $out/bin/
|
||||
ln -s $out/lib/teamspeak/ts3server $out/bin/ts3server
|
||||
ln -s $out/lib/teamspeak/tsdns/tsdnsserver $out/bin/tsdnsserver
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = writeScript "update-teampeak-server" ''
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p common-updater-scripts curl gnugrep gnused jq pup
|
||||
|
||||
set -eu -o pipefail
|
||||
|
||||
version=$( \
|
||||
curl https://www.teamspeak.com/en/downloads/ \
|
||||
| pup "#server .linux .version json{}" \
|
||||
| jq -r ".[0].text"
|
||||
)
|
||||
|
||||
versionOld=$(nix-instantiate --eval --strict -A "teamspeak_server.version")
|
||||
|
||||
nixFile=pkgs/applications/networking/instant-messengers/teamspeak/server.nix
|
||||
|
||||
update-source-version teamspeak_server "$version" --system=i686-linux
|
||||
|
||||
sed -i -e "s/version = \"$version\";/version = $versionOld;/" "$nixFile"
|
||||
|
||||
update-source-version teamspeak_server "$version" --system=x86_64-linux
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "TeamSpeak voice communication server";
|
||||
homepage = "https://teamspeak.com/";
|
||||
license = licenses.unfreeRedistributable;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ arobyn gerschtli ];
|
||||
};
|
||||
}
|
||||
|
||||
/*
|
||||
License issues:
|
||||
Date: Mon, 10 Dec 2007 19:55:16 -0500
|
||||
From: TeamSpeak Sales <sales@tritoncia.com>
|
||||
To: 'Marc Weber' <marco-oweber@gmx.de>
|
||||
Subject: RE: teamspeak on nix?
|
||||
|
||||
Yes, that would be fine. As long as you are not renting servers or selling
|
||||
TeamSpeak then you are more than welcome to distribute it.
|
||||
|
||||
Thank you,
|
||||
|
||||
TeamSpeak Sales Team
|
||||
________________________________
|
||||
e-Mail: sales@tritoncia.com
|
||||
TeamSpeak: http://www.TeamSpeak.com
|
||||
Account Login: https://sales.TritonCIA.com/users
|
||||
|
||||
|
||||
|
||||
-----Original Message-----
|
||||
From: Marc Weber [mailto:marco-oweber@gmx.de]
|
||||
Sent: Monday, December 10, 2007 5:03 PM
|
||||
To: sales@tritoncia.com
|
||||
Subject: teamspeak on nix?
|
||||
|
||||
Hello,
|
||||
|
||||
nix is very young software distribution system (http://nix.cs.uu.nl/)
|
||||
I'd like to ask wether you permit us to add teamspeak (server/ client?)
|
||||
|
||||
Sincerly
|
||||
Marc Weber (small nix contributor)
|
||||
*/
|
||||
Loading…
Add table
Add a link
Reference in a new issue