mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-24 07:53:19 +00:00
system-config-printer: 1.5.7 -> 1.5.9
Use gappsWrapHook.
This commit is contained in:
parent
a02b18998f
commit
5565728670
@ -1,19 +1,19 @@
|
||||
{ stdenv, fetchurl, udev, intltool, pkgconfig, glib, xmlto
|
||||
{ stdenv, fetchurl, udev, intltool, pkgconfig, glib, xmlto, wrapGAppsHook
|
||||
, makeWrapper, gtk3, docbook_xml_dtd_412, docbook_xsl
|
||||
, libxml2, desktop_file_utils, libusb1, cups, gdk_pixbuf, pango, atk, libnotify
|
||||
, gobjectIntrospection, libgnome_keyring3
|
||||
, cups-filters
|
||||
, pythonPackages
|
||||
, withGUI ? true
|
||||
}:
|
||||
|
||||
let majorVersion = "1.5";
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "system-config-printer-${majorVersion}.7";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "system-config-printer-${version}";
|
||||
version = "1.5.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://cyberelk.net/tim/data/system-config-printer/${majorVersion}/${name}.tar.xz";
|
||||
sha256 = "1vxczk22f58nbikvj47s2x1gzh6q4mbgwnf091p00h3b6nxppdgn";
|
||||
url = "https://github.com/zdohnal/system-config-printer/releases/download/v${version}/${name}.tar.gz";
|
||||
sha256 = "03bwlpsiqpxzcwd78a7rmwiww4jnqd7kl7il4kx78l1r57lasd2r";
|
||||
};
|
||||
|
||||
patches = [ ./detect_serverbindir.patch ];
|
||||
@ -22,8 +22,12 @@ in stdenv.mkDerivation rec {
|
||||
[ intltool pkgconfig glib udev libusb1 cups xmlto
|
||||
libxml2 docbook_xml_dtd_412 docbook_xsl desktop_file_utils
|
||||
pythonPackages.python pythonPackages.wrapPython
|
||||
libnotify gobjectIntrospection gdk_pixbuf pango atk
|
||||
libgnome_keyring3
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ wrapGAppsHook ];
|
||||
|
||||
pythonPath = with pythonPackages;
|
||||
[ pycups pycurl dbus-python pygobject3 requests2 pycairo pythonPackages.pycurl ];
|
||||
|
||||
@ -33,36 +37,22 @@ in stdenv.mkDerivation rec {
|
||||
"--with-systemdsystemunitdir=$(out)/etc/systemd/system"
|
||||
];
|
||||
|
||||
stripDebugList = "bin lib etc/udev";
|
||||
stripDebugList = [ "bin" "lib" "etc/udev" ];
|
||||
|
||||
postInstall =
|
||||
let
|
||||
giTypelibPath = stdenv.lib.makeSearchPath "lib/girepository-1.0" [ gdk_pixbuf.out gtk3.out pango.out atk.out libnotify.out ];
|
||||
in
|
||||
''
|
||||
export makeWrapperArgs="--set prefix $out \
|
||||
--set GI_TYPELIB_PATH ${giTypelibPath} \
|
||||
--set CUPS_DATADIR ${cups-filters}/share/cups"
|
||||
wrapPythonPrograms
|
||||
|
||||
# The program imports itself, so we need to move shell wrappers to a proper place.
|
||||
fixupWrapper() {
|
||||
mv "$out/share/system-config-printer/$2.py" \
|
||||
"$out/bin/$1"
|
||||
sed -i "s/.$2.py-wrapped/$2.py/g" "$out/bin/$1"
|
||||
mv "$out/share/system-config-printer/.$2.py-wrapped" \
|
||||
"$out/share/system-config-printer/$2.py"
|
||||
}
|
||||
fixupWrapper scp-dbus-service scp-dbus-service
|
||||
fixupWrapper system-config-printer system-config-printer
|
||||
fixupWrapper system-config-printer-applet applet
|
||||
# This __init__.py is both executed and imported.
|
||||
( cd $out/share/system-config-printer/troubleshoot
|
||||
mv .__init__.py-wrapped __init__.py
|
||||
buildPythonPath "$out $pythonPath"
|
||||
gappsWrapperArgs+=(
|
||||
--prefix PATH "$program_PATH"
|
||||
--set CUPS_DATADIR "${cups-filters}/share/cups"
|
||||
)
|
||||
|
||||
find $out/share/system-config-printer -name \*.py -type f -perm -0100 -print0 | while read -d "" f; do
|
||||
patchPythonScript "$f"
|
||||
done
|
||||
|
||||
# The below line will be unneeded when the next upstream release arrives.
|
||||
sed -i -e "s|/usr/bin|$out/bin|" "$out/share/dbus-1/services/org.fedoraproject.Config.Printing.service"
|
||||
sed -i -e "s|/usr/local/bin|$out/bin|" "$out/share/dbus-1/services/org.fedoraproject.Config.Printing.service"
|
||||
|
||||
# Manually expand literal "$(out)", which have failed to expand
|
||||
sed -e "s|ExecStart=\$(out)|ExecStart=$out|" \
|
||||
|
Loading…
Reference in New Issue
Block a user