mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-21 12:23:55 +00:00
Merge pull request #131349 from kwohlfahrt/houdini-18.5
houdini: 18.0 -> 18.5
This commit is contained in:
commit
14e8688309
@ -1,18 +1,37 @@
|
||||
{ callPackage, buildFHSUserEnv, undaemonize, unwrapped ? callPackage ./runtime.nix {} }:
|
||||
{ lib, stdenv, writeScript, callPackage, buildFHSUserEnv, undaemonize, unwrapped ? callPackage ./runtime.nix {} }:
|
||||
|
||||
let
|
||||
houdini-runtime = callPackage ./runtime.nix { };
|
||||
in buildFHSUserEnv {
|
||||
name = "houdini-${houdini-runtime.version}";
|
||||
buildFHSUserEnv rec {
|
||||
name = "houdini-${unwrapped.version}";
|
||||
|
||||
extraBuildCommands = ''
|
||||
mkdir -p $out/usr/lib/sesi
|
||||
'';
|
||||
targetPkgs = pkgs: with pkgs; [
|
||||
libGLU libGL alsa-lib fontconfig zlib libpng dbus nss nspr expat pciutils
|
||||
libxkbcommon libudev tbb
|
||||
] ++ (with xorg; [
|
||||
libICE libSM libXmu libXi libXext libX11 libXrender libXcursor libXfixes
|
||||
libXrender libXcomposite libXdamage libXtst libxcb libXScrnSaver
|
||||
]);
|
||||
|
||||
passthru = {
|
||||
unwrapped = houdini-runtime;
|
||||
inherit unwrapped;
|
||||
};
|
||||
|
||||
runScript = "${undaemonize}/bin/undaemonize ${houdini-runtime}/bin/houdini";
|
||||
}
|
||||
extraInstallCommands = let
|
||||
executables = [ "bin/houdini" "bin/hkey" "houdini/sbin/sesinetd" ];
|
||||
in ''
|
||||
WRAPPER=$out/bin/${name}
|
||||
EXECUTABLES="${lib.concatStringsSep " " executables}"
|
||||
for executable in $EXECUTABLES; do
|
||||
mkdir -p $out/$(dirname $executable)
|
||||
|
||||
echo "#!${stdenv.shell}" >> $out/$executable
|
||||
echo "$WRAPPER ${unwrapped}/$executable \$@" >> $out/$executable
|
||||
done
|
||||
|
||||
cd $out
|
||||
chmod +x $EXECUTABLES
|
||||
'';
|
||||
|
||||
runScript = writeScript "${name}-wrapper" ''
|
||||
exec $@
|
||||
'';
|
||||
}
|
||||
|
@ -1,50 +1,14 @@
|
||||
{ lib, stdenv, requireFile, zlib, libpng, libSM, libICE, fontconfig, xorg, libGLU, libGL, alsa-lib
|
||||
, dbus, xkeyboardconfig, nss, nspr, expat, pciutils, libxkbcommon, bc, addOpenGLRunpath
|
||||
}:
|
||||
{ lib, stdenv, requireFile, bc }:
|
||||
|
||||
let
|
||||
# NOTE: Some dependencies only show in errors when run with QT_DEBUG_PLUGINS=1
|
||||
ld_library_path = builtins.concatStringsSep ":" [
|
||||
"${stdenv.cc.cc.lib}/lib64"
|
||||
(lib.makeLibraryPath [
|
||||
libGLU
|
||||
libGL
|
||||
xorg.libXmu
|
||||
xorg.libXi
|
||||
xorg.libXext
|
||||
xorg.libX11
|
||||
xorg.libXrender
|
||||
xorg.libXcursor
|
||||
xorg.libXfixes
|
||||
xorg.libXrender
|
||||
xorg.libXcomposite
|
||||
xorg.libXdamage
|
||||
xorg.libXtst
|
||||
xorg.libxcb
|
||||
xorg.libXScrnSaver
|
||||
alsa-lib
|
||||
fontconfig
|
||||
libSM
|
||||
libICE
|
||||
zlib
|
||||
libpng
|
||||
dbus
|
||||
addOpenGLRunpath.driverLink
|
||||
nss
|
||||
nspr
|
||||
expat
|
||||
pciutils
|
||||
libxkbcommon
|
||||
])
|
||||
];
|
||||
license_dir = "~/.config/houdini";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
version = "18.0.460";
|
||||
version = "18.5.596";
|
||||
pname = "houdini-runtime";
|
||||
src = requireFile rec {
|
||||
name = "houdini-${version}-linux_x86_64_gcc6.3.tar.gz";
|
||||
sha256 = "18rbwszcks2zfn9zbax62rxmq50z9mc3h39b13jpd39qjqdd3jsd";
|
||||
name = "houdini-py3-${version}-linux_x86_64_gcc6.3.tar.gz";
|
||||
sha256 = "1b1k7rkn7svmciijqdwvi9p00srsf81vkb55grjg6xa7fgyidjx1";
|
||||
url = meta.homepage;
|
||||
};
|
||||
|
||||
@ -52,37 +16,25 @@ stdenv.mkDerivation rec {
|
||||
installPhase = ''
|
||||
patchShebangs houdini.install
|
||||
mkdir -p $out
|
||||
sed -i "s|/usr/lib/sesi|${license_dir}|g" houdini.install
|
||||
./houdini.install --install-houdini \
|
||||
--install-license \
|
||||
--no-install-menus \
|
||||
--no-install-bin-symlink \
|
||||
--auto-install \
|
||||
--no-root-check \
|
||||
--accept-EULA \
|
||||
--accept-EULA 2020-05-05 \
|
||||
$out
|
||||
echo -e "localValidatorDir = ${license_dir}\nlicensingMode = localValidator" > $out/houdini/Licensing.opt
|
||||
sed -i "s|/usr/lib/sesi|${license_dir}|g" $out/houdini/sbin/sesinetd_safe
|
||||
sed -i "s|/usr/lib/sesi|${license_dir}|g" $out/houdini/sbin/sesinetd.startup
|
||||
echo "export LD_LIBRARY_PATH=${ld_library_path}" >> $out/bin/app_init.sh
|
||||
echo "export QT_XKB_CONFIG_ROOT="${xkeyboardconfig}/share/X11/xkb"" >> $out/bin/app_init.sh
|
||||
echo "export LD_LIBRARY_PATH=${ld_library_path}" >> $out/houdini/sbin/app_init.sh
|
||||
echo "export QT_XKB_CONFIG_ROOT="${xkeyboardconfig}/share/X11/xkb"" >> $out/houdini/sbin/app_init.sh
|
||||
echo "licensingMode = localValidator" >> $out/houdini/Licensing.opt
|
||||
'';
|
||||
postFixup = ''
|
||||
INTERPRETER="$(cat "$NIX_CC"/nix-support/dynamic-linker)"
|
||||
for BIN in $(find $out/bin -type f -executable); do
|
||||
if patchelf $BIN 2>/dev/null ; then
|
||||
echo "Patching ELF $BIN"
|
||||
patchelf --set-interpreter "$INTERPRETER" "$BIN"
|
||||
fi
|
||||
done
|
||||
'';
|
||||
meta = {
|
||||
|
||||
dontFixup = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "3D animation application software";
|
||||
homepage = "https://www.sidefx.com";
|
||||
license = lib.licenses.unfree;
|
||||
platforms = lib.platforms.linux;
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
hydraPlatforms = [ ]; # requireFile src's should be excluded
|
||||
maintainers = with lib.maintainers; [ canndrew kwohlfahrt ];
|
||||
maintainers = with maintainers; [ canndrew kwohlfahrt ];
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user