Skip to content

Instantly share code, notes, and snippets.

@pniedzwiedzinski
Created December 29, 2020 14:49
Show Gist options
  • Save pniedzwiedzinski/f67be56db8756cfdb57e31a2b02d896a to your computer and use it in GitHub Desktop.
Save pniedzwiedzinski/f67be56db8756cfdb57e31a2b02d896a to your computer and use it in GitHub Desktop.
hyperion-ng nix expression
{ stdenv, fetchurl, autoPatchelfHook, callPackage,
expat, glib, systemd, libX11, libXrandr, fontconfig, tlf, ncurses5, bzip2,
readline70, openssl, db, libglvnd, libusb }:
with stdenv.lib;
let
srcAarch64 = fetchurl {
url = "https://github.com/hyperion-project/hyperion.ng/releases/download/2.0.0-alpha.8/Hyperion-2.0.0-alpha.8-Linux-aarch64.tar.gz";
sha256 = "1f2gbzfyqw8kclq0lx1bajs4xfrq3f2x07jyxngv65a4pr5ppfxk";
};
srcX86 = fetchurl {
url = "https://github.com/hyperion-project/hyperion.ng/releases/download/2.0.0-alpha.8/Hyperion-2.0.0-alpha.8-Linux-x86_64.tar.gz";
sha256 = "1gkjzqkh6qbwzkrdrg9xmznh6b676kmdlw54drqwfycakb7riad2";
};
mpdecimal = callPackage ./mpdecimal.nix {};
bzip2_linked = stdenv.mkDerivation {
name = "bzip2-linked";
unpackPhase = "true";
installPhase = ''
mkdir -p $out/lib
cp -r ${bzip2.out}/lib/libbz2.so.1.0.6 $out/lib
ln -s $out/lib/libbz2.so.1.0.6 $out/lib/libbz2.so.1.0
'';
};
in
stdenv.mkDerivation {
name = "hyperion-ng";
src = srcX86;
nativeBuildInputs = [ autoPatchelfHook ];
buildInputs = [
systemd
stdenv.cc.cc.lib
fontconfig.lib
tlf
ncurses5
mpdecimal
glib
readline70
openssl
db
libglvnd
libusb
expat
libX11
libXrandr
bzip2_linked
];
sourceRoot = "share/hyperion";
buildPhase = "";
installPhase = ''
mkdir -p $out/bin $out/lib
cp -r bin $out
cp -r lib $out
#ln -s ${bzip2}/lib/libbz2.so.1.0.6 $out/lib/libbz2.so.1.0
'';
meta = {
description = "Hyperion is an open source ambient light software. Feel free to join us and contribute new features!";
homepage = "https://hyperion-project.org/";
};
}
{ stdenv, fetchurl }:
let
pname = "mpdecimal";
version = "2.5.0";
in
stdenv.mkDerivation {
inherit pname version;
src = fetchurl {
url = "https://www.bytereef.org/software/${pname}/releases/${pname}-${version}.tar.gz";
sha256 = "1jm0vzlcsapx9ilrvns4iyws6n5i48zpxykmklfpv98jivf7wh8m";
};
buildPhase = ''
./configure
sed -i 's/-Wl,//' libmpdec/Makefile
make
'';
installPhase = ''
mkdir -p $out/lib
cp libmpdec/*.so* $out/lib
'';
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment