diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml index 79db7528e9f5087..5f4e9940d2f7116 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml @@ -2670,6 +2670,14 @@ cp /var/lib/redis/dump.rdb "/var/lib/redis-mastodon/dump.rdb" like firefox. + + + The default scribus version is now 1.5, + while version 1.4 is still available as + scribus_1_4 + (#172700). + + The Nextcloud module now supports to create a Mysql database diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md index a558695b248def2..1583140a61627dd 100644 --- a/nixos/doc/manual/release-notes/rl-2205.section.md +++ b/nixos/doc/manual/release-notes/rl-2205.section.md @@ -928,6 +928,8 @@ In addition to numerous new and upgraded packages, this release has the followin - The `nss` package was split into `nss_esr` and `nss_latest`, with `nss` being an alias for `nss_esr`. This was done to ease maintenance of `nss` and dependent high-profile packages like `firefox`. +- The default `scribus` version is now 1.5, while version 1.4 is still available as `scribus_1_4` ([#172700](https://github.com/NixOS/nixpkgs/pull/172700)). + - The Nextcloud module now supports to create a Mysql database automatically with `services.nextcloud.database.createLocally` enabled. diff --git a/pkgs/applications/office/scribus/1_4.nix b/pkgs/applications/office/scribus/1_4.nix new file mode 100644 index 000000000000000..a6427d0f890b86b --- /dev/null +++ b/pkgs/applications/office/scribus/1_4.nix @@ -0,0 +1,52 @@ +{ lib, stdenv, fetchurl, pkg-config, freetype, lcms, libtiff, libxml2 +, libart_lgpl, qt4, python2, cups, fontconfig, libjpeg +, zlib, libpng, xorg, cairo, podofo, hunspell, boost, cmake, imagemagick, ghostscript }: + +let + icon = fetchurl { + url = "https://gist.githubusercontent.com/ejpcmac/a74b762026c9bc4000be624c3d085517/raw/18edc497c5cb6fdeef1c8aede37a0ee68413f9d3/scribus-icon-centered.svg"; + sha256 = "0hq3i7c2l50445an9glhhg47kj26y16svfajc6naqn307ph9vzc3"; + }; + + pythonEnv = python2.withPackages(ps: [ps.tkinter ps.pillow]); +in stdenv.mkDerivation rec { + pname = "scribus"; + version = "1.4.8"; + + src = fetchurl { + url = "mirror://sourceforge/${pname}/${pname}/${pname}-${version}.tar.xz"; + sha256 = "0bq433myw6h1siqlsakxv6ghb002rp3mfz5k12bg68s0k6skn992"; + }; + + nativeBuildInputs = [ pkg-config cmake ]; + buildInputs = with xorg; + [ freetype lcms libtiff libxml2 libart_lgpl qt4 + pythonEnv cups fontconfig + libjpeg zlib libpng podofo hunspell cairo + boost # for internal 2geom library + libXaw libXext libX11 libXtst libXi libXinerama + libpthreadstubs libXau libXdmcp + imagemagick # To build the icon + ]; + + postPatch = '' + substituteInPlace scribus/util_ghostscript.cpp \ + --replace 'QString gsName("gs");' \ + 'QString gsName("${ghostscript}/bin/gs");' + ''; + + postInstall = '' + for i in 16 24 48 64 96 128 256 512; do + mkdir -p $out/share/icons/hicolor/''${i}x''${i}/apps + convert -background none -resize ''${i}x''${i} ${icon} $out/share/icons/hicolor/''${i}x''${i}/apps/scribus.png + done + ''; + + meta = { + maintainers = [ lib.maintainers.marcweber ]; + platforms = lib.platforms.linux; + description = "Desktop Publishing (DTP) and Layout program for Linux"; + homepage = "https://www.scribus.net"; + license = lib.licenses.gpl2; + }; +} diff --git a/pkgs/applications/office/scribus/default.nix b/pkgs/applications/office/scribus/default.nix index a6427d0f890b86b..d3f706bbf054911 100644 --- a/pkgs/applications/office/scribus/default.nix +++ b/pkgs/applications/office/scribus/default.nix @@ -1,52 +1,143 @@ -{ lib, stdenv, fetchurl, pkg-config, freetype, lcms, libtiff, libxml2 -, libart_lgpl, qt4, python2, cups, fontconfig, libjpeg -, zlib, libpng, xorg, cairo, podofo, hunspell, boost, cmake, imagemagick, ghostscript }: +{ boost +, cairo +, cmake +, cups +, fetchurl +, fetchpatch +, fontconfig +, freetype +, harfbuzzFull +, hunspell +, lcms2 +, libjpeg +, libtiff +, libxml2 +, mkDerivation +, pixman +, pkg-config +, podofo +, poppler +, poppler_data +, python3 +, qtbase +, qtimageformats +, qttools +, lib +}: let - icon = fetchurl { - url = "https://gist.githubusercontent.com/ejpcmac/a74b762026c9bc4000be624c3d085517/raw/18edc497c5cb6fdeef1c8aede37a0ee68413f9d3/scribus-icon-centered.svg"; - sha256 = "0hq3i7c2l50445an9glhhg47kj26y16svfajc6naqn307ph9vzc3"; - }; - - pythonEnv = python2.withPackages(ps: [ps.tkinter ps.pillow]); -in stdenv.mkDerivation rec { + pythonEnv = python3.withPackages ( + ps: [ + ps.pillow + ps.tkinter + ] + ); +in +mkDerivation rec { pname = "scribus"; - version = "1.4.8"; + + version = "1.5.7"; src = fetchurl { - url = "mirror://sourceforge/${pname}/${pname}/${pname}-${version}.tar.xz"; - sha256 = "0bq433myw6h1siqlsakxv6ghb002rp3mfz5k12bg68s0k6skn992"; + url = "mirror://sourceforge/${pname}/${pname}-devel/${pname}-${version}.tar.xz"; + sha256 = "sha256-MYMWss/Hp2GR0+DT+MImUUfa6gVwFiAo4kPCktgm+M4="; }; - nativeBuildInputs = [ pkg-config cmake ]; - buildInputs = with xorg; - [ freetype lcms libtiff libxml2 libart_lgpl qt4 - pythonEnv cups fontconfig - libjpeg zlib libpng podofo hunspell cairo - boost # for internal 2geom library - libXaw libXext libX11 libXtst libXi libXinerama - libpthreadstubs libXau libXdmcp - imagemagick # To build the icon - ]; + patches = [ + # For harfbuzz >= 2.9.0 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/1b546978bc4ea0b2a73fbe4d7cf947887e865162.patch"; + sha256 = "sha256-noRCaN63ZYFfXmAluEYXdFPNOk3s5W3KBAsLU1Syxv4="; + }) + # For harfbuzz >= 3.0 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/68ec41169eaceea4a6e1d6f359762a191c7e61d5.patch"; + sha256 = "sha256-xhp65qVvaof0md1jb3XHZw7uFX1RtNxPfUOaVnvZV1Y="; + }) + # For Poppler 22.02 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/85c0dff3422fa3c26fbc2e8d8561f597ec24bd92.patch"; + sha256 = "YR0ii09EVU8Qazz6b8KAIWsUMTwPIwO8JuQPymAWKdw="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/f75c1613db67f4067643d0218a2db3235e42ec9f.patch"; + sha256 = "vJU8HsKHE3oXlhcXQk9uCYINPYVPF5IGmrWYFQ6Py5c="; + }) + # For Poppler 22.03 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/553d1fd5f76ffb3743583b88c78a7232b076a965.patch"; + sha256 = "56JrEG3eCzyALTH04yjzurKRj2PocpjO6b4PusMRxjY="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/1f82e38be0782b065910f5fb4cece23f690349ae.patch"; + sha256 = "qektUfel5KeA327D3THyqi8dznP1SQQFToUC5Kd0+W4="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/f19410ac3b27e33dd62105746784e61e85b90a1d.patch"; + sha256 = "JHdgntYcioYatPeqpmym3c9dORahj0CinGOzbGtA4ds="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/e013e8126d2100e8e56dea5b836ad43275429389.patch"; + sha256 = "+siPNtJq9Is9V2PgADeQJB+b4lkl5g8uk6zKBu10Jqw="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/48263954a7dee0be815b00f417ae365ab26cdd85.patch"; + sha256 = "1WE9kALFw79bQH88NUafXaZ1Y/vJEKTIWxlk5c+opsQ="; + }) + # For Poppler 22.04 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/f2237b8f0b5cf7690e864a22ef7a63a6d769fa36.patch"; + sha256 = "FXpLoX/a2Jy3GcfzrUUyVUfEAp5wAy2UfzfVA5lhwJw="; + }) + ]; + + nativeBuildInputs = [ + cmake + pkg-config + ]; - postPatch = '' - substituteInPlace scribus/util_ghostscript.cpp \ - --replace 'QString gsName("gs");' \ - 'QString gsName("${ghostscript}/bin/gs");' - ''; - - postInstall = '' - for i in 16 24 48 64 96 128 256 512; do - mkdir -p $out/share/icons/hicolor/''${i}x''${i}/apps - convert -background none -resize ''${i}x''${i} ${icon} $out/share/icons/hicolor/''${i}x''${i}/apps/scribus.png - done - ''; - - meta = { - maintainers = [ lib.maintainers.marcweber ]; - platforms = lib.platforms.linux; + buildInputs = [ + boost + cairo + cups + fontconfig + freetype + harfbuzzFull + hunspell + lcms2 + libjpeg + libtiff + libxml2 + pixman + podofo + poppler + poppler_data + pythonEnv + qtbase + qtimageformats + qttools + ]; + + cmakeFlags = [ + # poppler uses std::optional + "-DWANT_CPP17=ON" + ]; + + meta = with lib; { + maintainers = with maintainers; [ + erictapen + kiwi + ]; + platforms = platforms.linux; description = "Desktop Publishing (DTP) and Layout program for Linux"; homepage = "https://www.scribus.net"; - license = lib.licenses.gpl2; + # There are a lot of licenses... + # https://github.com/scribusproject/scribus/blob/20508d69ca4fc7030477db8dee79fd1e012b52d2/COPYING#L15-L19 + license = with licenses; [ + bsd3 + gpl2Plus + mit + publicDomain + ]; }; } diff --git a/pkgs/applications/office/scribus/unstable.nix b/pkgs/applications/office/scribus/unstable.nix deleted file mode 100644 index d3f706bbf054911..000000000000000 --- a/pkgs/applications/office/scribus/unstable.nix +++ /dev/null @@ -1,143 +0,0 @@ -{ boost -, cairo -, cmake -, cups -, fetchurl -, fetchpatch -, fontconfig -, freetype -, harfbuzzFull -, hunspell -, lcms2 -, libjpeg -, libtiff -, libxml2 -, mkDerivation -, pixman -, pkg-config -, podofo -, poppler -, poppler_data -, python3 -, qtbase -, qtimageformats -, qttools -, lib -}: - -let - pythonEnv = python3.withPackages ( - ps: [ - ps.pillow - ps.tkinter - ] - ); -in -mkDerivation rec { - pname = "scribus"; - - version = "1.5.7"; - - src = fetchurl { - url = "mirror://sourceforge/${pname}/${pname}-devel/${pname}-${version}.tar.xz"; - sha256 = "sha256-MYMWss/Hp2GR0+DT+MImUUfa6gVwFiAo4kPCktgm+M4="; - }; - - patches = [ - # For harfbuzz >= 2.9.0 - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/1b546978bc4ea0b2a73fbe4d7cf947887e865162.patch"; - sha256 = "sha256-noRCaN63ZYFfXmAluEYXdFPNOk3s5W3KBAsLU1Syxv4="; - }) - # For harfbuzz >= 3.0 - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/68ec41169eaceea4a6e1d6f359762a191c7e61d5.patch"; - sha256 = "sha256-xhp65qVvaof0md1jb3XHZw7uFX1RtNxPfUOaVnvZV1Y="; - }) - # For Poppler 22.02 - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/85c0dff3422fa3c26fbc2e8d8561f597ec24bd92.patch"; - sha256 = "YR0ii09EVU8Qazz6b8KAIWsUMTwPIwO8JuQPymAWKdw="; - }) - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/f75c1613db67f4067643d0218a2db3235e42ec9f.patch"; - sha256 = "vJU8HsKHE3oXlhcXQk9uCYINPYVPF5IGmrWYFQ6Py5c="; - }) - # For Poppler 22.03 - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/553d1fd5f76ffb3743583b88c78a7232b076a965.patch"; - sha256 = "56JrEG3eCzyALTH04yjzurKRj2PocpjO6b4PusMRxjY="; - }) - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/1f82e38be0782b065910f5fb4cece23f690349ae.patch"; - sha256 = "qektUfel5KeA327D3THyqi8dznP1SQQFToUC5Kd0+W4="; - }) - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/f19410ac3b27e33dd62105746784e61e85b90a1d.patch"; - sha256 = "JHdgntYcioYatPeqpmym3c9dORahj0CinGOzbGtA4ds="; - }) - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/e013e8126d2100e8e56dea5b836ad43275429389.patch"; - sha256 = "+siPNtJq9Is9V2PgADeQJB+b4lkl5g8uk6zKBu10Jqw="; - }) - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/48263954a7dee0be815b00f417ae365ab26cdd85.patch"; - sha256 = "1WE9kALFw79bQH88NUafXaZ1Y/vJEKTIWxlk5c+opsQ="; - }) - # For Poppler 22.04 - (fetchpatch { - url = "https://github.com/scribusproject/scribus/commit/f2237b8f0b5cf7690e864a22ef7a63a6d769fa36.patch"; - sha256 = "FXpLoX/a2Jy3GcfzrUUyVUfEAp5wAy2UfzfVA5lhwJw="; - }) - ]; - - nativeBuildInputs = [ - cmake - pkg-config - ]; - - buildInputs = [ - boost - cairo - cups - fontconfig - freetype - harfbuzzFull - hunspell - lcms2 - libjpeg - libtiff - libxml2 - pixman - podofo - poppler - poppler_data - pythonEnv - qtbase - qtimageformats - qttools - ]; - - cmakeFlags = [ - # poppler uses std::optional - "-DWANT_CPP17=ON" - ]; - - meta = with lib; { - maintainers = with maintainers; [ - erictapen - kiwi - ]; - platforms = platforms.linux; - description = "Desktop Publishing (DTP) and Layout program for Linux"; - homepage = "https://www.scribus.net"; - # There are a lot of licenses... - # https://github.com/scribusproject/scribus/blob/20508d69ca4fc7030477db8dee79fd1e012b52d2/COPYING#L15-L19 - license = with licenses; [ - bsd3 - gpl2Plus - mit - publicDomain - ]; - }; -} diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 3e22483eb07f52e..f5613d493680edc 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -19,7 +19,7 @@ , openjpeg , pkg-config , python3 -, scribusUnstable +, scribus , texlive , zlib , withData ? true, poppler_data @@ -35,7 +35,7 @@ let in stdenv.mkDerivation rec { pname = "poppler-${suffix}"; - version = "22.04.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + version = "22.04.0"; # beware: updates often break cups-filters build, check texlive and scribus too! outputs = [ "out" "dev" ]; @@ -97,7 +97,7 @@ stdenv.mkDerivation rec { passthru = { tests = { # These depend on internal poppler code that frequently changes. - inherit inkscape cups-filters texlive scribusUnstable; + inherit inkscape cups-filters texlive scribus; }; }; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 129a06484139390..51f51534635e9c7 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1207,6 +1207,7 @@ mapAliases ({ scallion = throw "scallion has been removed, because it is currently unmaintained upstream"; # added 2021-12-15 scim = throw "'scim' has been renamed to/replaced by 'sc-im'"; # Converted to throw 2022-02-22 scollector = throw "'scollector' has been renamed to/replaced by 'bosun'"; # Converted to throw 2022-02-22 + scribusUnstable = throw "'scribusUnstable' has been renamed to 'scribus'"; # Added 2022-05-13 scyther = throw "scyther has been removed since it currently only supports Python 2, see https://github.com/cascremers/scyther/issues/20"; # Added 2021-10-07 sdlmame = mame; # Added 2019-10-30 seeks = throw "seeks has been removed from nixpkgs, as it was unmaintained"; # Added 2020-06-21 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a7ab64e642255e0..187b6fedb47931a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -29433,11 +29433,12 @@ with pkgs; scli = callPackage ../applications/misc/scli { }; - scribus = callPackage ../applications/office/scribus { + scribus_1_4 = callPackage ../applications/office/scribus/1_4.nix { inherit (gnome2) libart_lgpl; }; - scribusUnstable = libsForQt5.callPackage ../applications/office/scribus/unstable.nix { }; + scribus_1_5 = libsForQt5.callPackage ../applications/office/scribus/default.nix { }; + scribus = scribus_1_5; seafile-client = libsForQt5.callPackage ../applications/networking/seafile-client { };