From 63cbdf67ae20521d26e34aae181bc1eea3ec8588 Mon Sep 17 00:00:00 2001 From: Artturi Date: Mon, 30 May 2022 22:57:37 +0300 Subject: [PATCH] fix font fallout from extraPostFetch -> postFetch (#175381) * gdouros-fonts: fix build some hashes were changed since ods files are now installed * camingo-code: fix build contents not changed * hannom: fix build * helvetica-neue-lt-std: fix build perms changed so the hash changed too * liberastika: fix build hash changed due to no doc dir anymore * kochi-substitute-naga10: fix build * xkcd-font: use a simpler method to remove unneeded files * fonts: also remove hidden files --- pkgs/data/fonts/camingo-code/default.nix | 10 ++++--- pkgs/data/fonts/gdouros/default.nix | 30 +++++++++++-------- pkgs/data/fonts/hannom/default.nix | 9 ++++-- .../fonts/helvetica-neue-lt-std/default.nix | 9 ++++-- .../fonts/kochi-substitute-naga10/default.nix | 12 +++++--- pkgs/data/fonts/liberastika/default.nix | 12 +++++--- pkgs/data/fonts/xkcd-font/default.nix | 18 ++++------- 7 files changed, 58 insertions(+), 42 deletions(-) diff --git a/pkgs/data/fonts/camingo-code/default.nix b/pkgs/data/fonts/camingo-code/default.nix index 3db1f672818..626ff9f1c0a 100644 --- a/pkgs/data/fonts/camingo-code/default.nix +++ b/pkgs/data/fonts/camingo-code/default.nix @@ -7,11 +7,13 @@ in fetchzip rec { url = "https://github.com/chrissimpkins/codeface/releases/download/font-collection/codeface-fonts.zip"; postFetch = '' - unzip $downloadedFile - install -m444 -Dt $out/share/fonts/truetype fonts/camingo-code/*.ttf - install -m444 -Dt $out/share/doc/${name} fonts/camingo-code/*.txt + install -Dm644 $out/camingo-code/*.ttf -t $out/share/fonts/truetype + install -Dm644 $out/camingo-code/*.txt -t $out/share/doc/${name} + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob ''; - sha256 = "16iqjwwa7pnswvcc4w8nglkd0m0fz50qsz96i1kcpqip3nwwvw7y"; + sha256 = "sha256-/vDNuR034stmiCZ9jUH5DlTQJn0WccLY5treoziXOJo="; meta = with lib; { homepage = "https://www.myfonts.com/fonts/jan-fromm/camingo-code/"; diff --git a/pkgs/data/fonts/gdouros/default.nix b/pkgs/data/fonts/gdouros/default.nix index a707d6f25a4..171520e3d12 100644 --- a/pkgs/data/fonts/gdouros/default.nix +++ b/pkgs/data/fonts/gdouros/default.nix @@ -2,25 +2,29 @@ let fonts = { - aegan = { version = "13.00"; file = "Aegean.zip"; sha256 = "1w4ks341jw12p6zi1fy1hb3kqiqv61yn8i2hr9ybng9n8xdw03li"; description = "Aegean"; }; - aegyptus = { version = "13.00"; file = "Aegyptus.zip"; sha256 = "16j8rj3mr2cddag7laxvzpm5w3yk467fwzsk60nq8pnh6ab1v05y"; description = "Egyptian Hieroglyphs, Coptic, Meroitic"; }; - akkadian = { version = "13.00"; file = "Akkadian.zip"; sha256 = "1f2v9cjk307c5lw0si9hwjcll5wb9nwwy5im0y16kvpgwh2ccshc"; description = "Sumero-Akkadian Cuneiform"; }; - assyrian = { version = "13.00"; file = "Assyrian.zip"; sha256 = "18nx6ayfk3ba6wg1rp37r9fll5ajrwq2mp5w2l3y1q1kk92frkid"; description = "Neo-Assyrian in Unicode with OpenType"; }; - eemusic = { version = "13.00"; file = "EEMusic.zip"; sha256 = "1kk5rd3wd7y13z9bqcg1k9idbwad4l3hfmi3lbfk4y1w895vgxk2"; description = "Byzantine Musical Notation in Unicode with OpenType"; }; - maya = { version = "13.00"; file = "Maya%20Hieroglyphs.zip"; sha256 = "0fzzrlkd4m2dj2phg97nz782w0afmw0f0ykdvlwyp29j1ak7yyp1"; description = "Maya Hieroglyphs"; }; - symbola = { version = "13.00"; file = "Symbola.zip"; sha256 = "04pxh5agvlkyg8mvv2szwshnmzi3n0m7va4xsyq401zbsa147rmi"; description = "Basic Latin, Greek, Cyrillic and many Symbol blocks of Unicode"; }; - textfonts = { version = "13.00"; file = "Textfonts.zip"; sha256 = "1xp8qlfpvcf5n96zgm07zij3ndlzvqjlii8gx9sbj5aa56rxkdgb"; description = "Aroania, Anaktoria, Alexander, Avdira and Asea"; }; - unidings = { version = "13.00"; file = "Unidings.zip"; sha256 = "0cvnxblk9wsr8mxm5lrdpdm456vi7lln7qh53b67npg4baf0as63"; description = "Glyphs and Icons for blocks of The Unicode Standard"; }; + aegan = { version = "13.00"; file = "Aegean.zip"; sha256 = "sha256-1DnbfL6bKn8Upht/ZYfKIp9kuDHq7y9E+jkt2Yhr38A="; description = "Aegean"; }; + aegyptus = { version = "13.00"; file = "Aegyptus.zip"; sha256 = "sha256-tObgHlhaquq6Akn/HdYKNfnKHHJP42yAT7lIn5qdCzY="; description = "Egyptian Hieroglyphs, Coptic, Meroitic"; }; + akkadian = { version = "13.00"; file = "Akkadian.zip"; sha256 = "sha256-iHiXfxMS9FIlrRgT23MfxzCqYJMQrKuKYDShrqB74vU="; description = "Sumero-Akkadian Cuneiform"; }; + assyrian = { version = "13.00"; file = "Assyrian.zip"; sha256 = "sha256-YjTQjv1Vybr14Sn9pUdbGYVf4ZIjGT+cpB1qCIg1NNQ="; description = "Neo-Assyrian in Unicode with OpenType"; }; + eemusic = { version = "13.00"; file = "EEMusic.zip"; sha256 = "sha256-PaYBJOV+dmRV1ehY7TwDNL9dz1jPo58I3N8lWX1Vmy8="; description = "Byzantine Musical Notation in Unicode with OpenType"; }; + maya = { version = "13.00"; file = "Maya%20Hieroglyphs.zip"; sha256 = "sha256-9uqGo4hweV1ydI+pEp76IqmHslWvxr87rTvziQs35bQ="; description = "Maya Hieroglyphs"; }; + symbola = { version = "13.00"; file = "Symbola.zip"; sha256 = "sha256-C9HmforXr/Hqopb3go+bzqRFcWPv+0rz0JZsXc3mcxw="; description = "Basic Latin, Greek, Cyrillic and many Symbol blocks of Unicode"; }; + textfonts = { version = "13.00"; file = "Textfonts.zip"; sha256 = "sha256-1bDi5mwrT2I8gx6QdhnWjXATFdNAU9nt77BiFIci6C8="; description = "Aroania, Anaktoria, Alexander, Avdira and Asea"; }; + unidings = { version = "13.00"; file = "Unidings.zip"; sha256 = "sha256-6lSkDb603XIrBGy4fZhY7xYDd3x0qA0PRQOlQ9Roig0="; description = "Glyphs and Icons for blocks of The Unicode Standard"; }; }; mkpkg = name_: {version, file, sha256, description}: fetchzip rec { name = "${name_}-${version}"; url = "https://dn-works.com/wp-content/uploads/2020/UFAS-Fonts/${file}"; + stripRoot = false; postFetch = '' - mkdir -p $out/share/{fonts,doc} - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype - unzip -j $downloadedFile \*.odt \*.pdf \*.xlsx -d "$out/share/doc/${name}" || true # unpack docs if any - rmdir "$out/share/doc/${name}" $out/share/doc || true # remove dirs if empty + mkdir -p $out/share/{fonts/opentype,doc/${name_}} + mv $out/*.otf -t "$out/share/fonts/opentype" + mv $out/*.{odt,ods,pdf,xlsx} -t "$out/share/doc/${name_}" || true # install docs if any + find $out -type d -empty -delete + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob ''; inherit sha256; diff --git a/pkgs/data/fonts/hannom/default.nix b/pkgs/data/fonts/hannom/default.nix index 0ca15b1b0d2..fa586caa79c 100644 --- a/pkgs/data/fonts/hannom/default.nix +++ b/pkgs/data/fonts/hannom/default.nix @@ -7,9 +7,14 @@ in fetchzip { url = "mirror://sourceforge/vietunicode/hannom/hannom%20v${version}/hannomH.zip"; + stripRoot = false; + postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype + mkdir -p $out/share/fonts/truetype + mv $out/*.ttf -t $out/share/fonts/truetype + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob ''; sha256 = "sha256-zOYJxEHl4KM0ncVQDBs9+e3z8DxzF2ef3pRj0OVSuUo="; diff --git a/pkgs/data/fonts/helvetica-neue-lt-std/default.nix b/pkgs/data/fonts/helvetica-neue-lt-std/default.nix index 19092cb06a5..7e69ff70d62 100644 --- a/pkgs/data/fonts/helvetica-neue-lt-std/default.nix +++ b/pkgs/data/fonts/helvetica-neue-lt-std/default.nix @@ -7,12 +7,17 @@ in fetchzip { url = "https://web.archive.org/web/20190823153624/http://ephifonts.com/downloads/helvetica-neue-lt-std.zip"; + stripRoot = false; + postFetch = '' mkdir -p $out/share/fonts - unzip -j $downloadedFile "Helvetica Neue LT Std/*.otf" -d $out/share/fonts/opentype + install -Dm644 $out/'Helvetica Neue LT Std'/*.otf -t $out/share/fonts/opentype + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob ''; - sha256 = "0ampp9vf9xw0sdppl4lb9i9h75ywljhdcqmzh45mx2x9m7h6xgg9"; + sha256 = "sha256-gM/QXrKI2xrrCBYt4R+Fk5Tj0AIkrnCP/pwgh0A/MyI="; meta = with lib; { homepage = "https://web.archive.org/web/20190926040940/http://www.ephifonts.com/free-helvetica-font-helvetica-neue-lt-std.html"; diff --git a/pkgs/data/fonts/kochi-substitute-naga10/default.nix b/pkgs/data/fonts/kochi-substitute-naga10/default.nix index 1b63223f0bf..63ca3cf3e43 100644 --- a/pkgs/data/fonts/kochi-substitute-naga10/default.nix +++ b/pkgs/data/fonts/kochi-substitute-naga10/default.nix @@ -7,14 +7,18 @@ fetchzip { url = "mirror://osdn/efont/5411/kochi-substitute-${version}.tar.bz2"; + stripRoot = false; + postFetch = '' - tar -xjf $downloadedFile --strip-components=1 mkdir -p $out/share/fonts/truetype - cp ./kochi-gothic-subst.ttf $out/share/fonts/truetype/kochi-gothic-subst-naga10.ttf - cp ./kochi-mincho-subst.ttf $out/share/fonts/truetype/kochi-mincho-subst-naga10.ttf + mv $out/*/kochi-gothic-subst.ttf $out/share/fonts/truetype/kochi-gothic-subst-naga10.ttf + mv $out/*/kochi-mincho-subst.ttf $out/share/fonts/truetype/kochi-mincho-subst-naga10.ttf + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob ''; - sha256 = "1bjb5cr3wf3d5y7xj1ly2mkv4ndwvg615rb1ql6lsqc2icjxk7j9"; + sha256 = "sha256-SZ7ZJYuCYU0NxWHlEszbvFmyZxWeBtmPL204PjIrS64="; meta = { description = "Japanese font, non-free replacement for MS Gothic and MS Mincho"; diff --git a/pkgs/data/fonts/liberastika/default.nix b/pkgs/data/fonts/liberastika/default.nix index c42bc9f7563..26420ab9e6e 100644 --- a/pkgs/data/fonts/liberastika/default.nix +++ b/pkgs/data/fonts/liberastika/default.nix @@ -7,13 +7,17 @@ in fetchzip rec { url = "mirror://sourceforge/project/lib-ka/liberastika-ttf-${version}.zip"; + stripRoot = false; + postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile AUTHORS ChangeLog COPYING README -d "$out/share/doc/${name}" + mkdir -p $out/share/fonts + install -Dm644 $out/*.ttf -t $out/share/fonts/truetype + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob ''; - sha256 = "1a9dvl1pzch2vh8sqyyn1d1wz4n624ffazl6hzlc3s5k5lzrb6jp"; + sha256 = "sha256-1hoETOjPRUIzzM+NUR+g/Ph16jXmH2ARSlZHjgEwoeM="; meta = with lib; { description = "Liberation Sans fork with improved cyrillic support"; diff --git a/pkgs/data/fonts/xkcd-font/default.nix b/pkgs/data/fonts/xkcd-font/default.nix index af79e7f1d8f..cfdd3c0eae0 100644 --- a/pkgs/data/fonts/xkcd-font/default.nix +++ b/pkgs/data/fonts/xkcd-font/default.nix @@ -11,20 +11,12 @@ in fetchFromGitHub { rev = "5632fde618845dba5c22f14adc7b52bf6c52d46d"; postFetch = '' - pushd $out + install -Dm444 -t $out/share/fonts/opentype/ $out/xkcd/build/xkcd.otf + install -Dm444 -t $out/share/fonts/truetype/ $out/xkcd-script/font/xkcd-script.ttf - install -Dm444 -t $out/share/fonts/opentype/ xkcd/build/xkcd.otf - install -Dm444 -t $out/share/fonts/truetype/ xkcd-script/font/xkcd-script.ttf - - # remove unrelated files - for f in * .*; do - case "$f" in - share|.|..) ;; - *) rm -rf "$f" ;; - esac - done - - popd + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob ''; sha256 = "sha256-ITsJPs+ZXwUWYe2AmwyVZib8RV7bpiWHOUD8qEZRHHY=";