diff options
Diffstat (limited to 'pkgs/desktops/gnome-3/core/gucharmap/default.nix')
-rw-r--r-- | pkgs/desktops/gnome-3/core/gucharmap/default.nix | 86 |
1 files changed, 74 insertions, 12 deletions
diff --git a/pkgs/desktops/gnome-3/core/gucharmap/default.nix b/pkgs/desktops/gnome-3/core/gucharmap/default.nix index 6c291c1874f..ce5e073ac06 100644 --- a/pkgs/desktops/gnome-3/core/gucharmap/default.nix +++ b/pkgs/desktops/gnome-3/core/gucharmap/default.nix @@ -1,11 +1,48 @@ -{ stdenv, intltool, fetchFromGitLab, pkgconfig, gtk3, adwaita-icon-theme -, glib, desktop-file-utils, gtk-doc, autoconf, automake, libtool -, wrapGAppsHook, gnome3, itstool, libxml2, yelp-tools -, docbook_xsl, docbook_xml_dtd_412, gsettings-desktop-schemas -, callPackage, unzip, gobject-introspection }: +{ stdenv +, intltool +, fetchFromGitLab +, fetchpatch +, pkgconfig +, gtk3 +, adwaita-icon-theme +, glib +, desktop-file-utils +, gtk-doc +, autoconf +, automake +, libtool +, wrapGAppsHook +, gnome3 +, itstool +, libxml2 +, yelp-tools +, docbook_xsl +, docbook_xml_dtd_412 +, gsettings-desktop-schemas +, callPackage +, unzip +, unicode-character-database +, unihan-database +, runCommand +, symlinkJoin +, gobject-introspection +}: let - unicode-data = callPackage ./unicode-data.nix {}; + # TODO: make upstream patch allowing to use the uncompressed file, + # preferably from XDG_DATA_DIRS. + # https://gitlab.gnome.org/GNOME/gucharmap/issues/13 + unihanZip = runCommand "unihan" {} '' + mkdir -p $out/share/unicode + ln -s ${unihan-database.src} $out/share/unicode/Unihan.zip + ''; + ucd = symlinkJoin { + name = "ucd+unihan"; + paths = [ + unihanZip + unicode-character-database + ]; + }; in stdenv.mkDerivation rec { pname = "gucharmap"; version = "12.0.1"; @@ -20,16 +57,41 @@ in stdenv.mkDerivation rec { sha256 = "0si3ymyfzc5v7ly0dmcs3qgw2wp8cyasycq5hmcr8frl09lr6gkw"; }; + patches = [ + # fix build with Unicode 12.1 + (fetchpatch { + url = "https://salsa.debian.org/gnome-team/gucharmap/raw/de079ad494a15f662416257fca2f2b8db757f4ea/debian/patches/update-to-unicode-12.1.patch"; + sha256 = "093gqsxfpp3s0b88p1dgkskr4ng3hv8irmxc60l3fdrkl8am00xh"; + }) + ]; + nativeBuildInputs = [ - pkgconfig wrapGAppsHook unzip intltool itstool - autoconf automake libtool gtk-doc docbook_xsl docbook_xml_dtd_412 - yelp-tools libxml2 desktop-file-utils gobject-introspection + pkgconfig + wrapGAppsHook + unzip + intltool + itstool + autoconf + automake + libtool + gtk-doc + docbook_xsl + docbook_xml_dtd_412 + yelp-tools + libxml2 + desktop-file-utils + gobject-introspection ]; - buildInputs = [ gtk3 glib gsettings-desktop-schemas adwaita-icon-theme ]; + buildInputs = [ + gtk3 + glib + gsettings-desktop-schemas + adwaita-icon-theme + ]; configureFlags = [ - "--with-unicode-data=${unicode-data}" + "--with-unicode-data=${ucd}/share/unicode" "--enable-gtk-doc" ]; @@ -51,7 +113,7 @@ in stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "GNOME Character Map, based on the Unicode Character Database"; - homepage = https://wiki.gnome.org/Apps/Gucharmap; + homepage = "https://wiki.gnome.org/Apps/Gucharmap"; license = licenses.gpl3; maintainers = gnome3.maintainers; platforms = platforms.linux; |