Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 boost, 3 cairo, 4 cmake, 5 cups, 6 fetchurl, 7 fetchpatch, 8 fontconfig, 9 freetype, 10 graphicsmagick, 11 harfbuzzFull, 12 hunspell, 13 lcms2, 14 libcdr, 15 libfreehand, 16 libjpeg, 17 libjxl, 18 libmspub, 19 libpagemaker, 20 libqxp, 21 librevenge, 22 libsysprof-capture, 23 libtiff, 24 libvisio, 25 libwpg, 26 libxml2, 27 libzmf, 28 pixman, 29 pkg-config, 30 podofo_0_10, 31 poppler, 32 poppler_data, 33 python3, 34 lib, 35 stdenv, 36 qt6, 37}: 38 39let 40 pythonEnv = python3.withPackages (ps: [ 41 ps.pillow 42 ps.tkinter 43 ]); 44in 45stdenv.mkDerivation (finalAttrs: { 46 pname = "scribus"; 47 48 version = "1.7.0"; 49 50 src = fetchurl { 51 url = "mirror://sourceforge/scribus/scribus-devel/scribus-${finalAttrs.version}.tar.xz"; 52 hash = "sha256-+lnWIh/3z/qTcjV5l+hlcBYuHhiRNza3F2/RD0jCQ/Y="; 53 }; 54 55 nativeBuildInputs = [ 56 cmake 57 pkg-config 58 qt6.wrapQtAppsHook 59 ]; 60 61 buildInputs = [ 62 boost 63 cairo 64 cups 65 fontconfig 66 freetype 67 graphicsmagick 68 harfbuzzFull 69 hunspell 70 lcms2 71 libcdr 72 libfreehand 73 libjpeg 74 libjxl 75 libpagemaker 76 libqxp 77 librevenge 78 libsysprof-capture 79 libtiff 80 libvisio 81 libwpg 82 libxml2 83 libzmf 84 pixman 85 podofo_0_10 86 poppler 87 poppler_data 88 pythonEnv 89 qt6.qt5compat 90 qt6.qtbase 91 qt6.qtdeclarative 92 qt6.qtimageformats 93 qt6.qtsvg 94 qt6.qttools 95 ] 96 ++ lib.optionals libmspub.meta.available [ libmspub ]; 97 98 cmakeFlags = [ (lib.cmakeBool "WANT_GRAPHICSMAGICK" true) ]; 99 100 patches = [ 101 (fetchpatch { 102 url = "https://aur.archlinux.org/cgit/aur.git/plain/fix_build_with_qt_6.9.0.patch?h=scribus-unstable"; 103 hash = "sha256-hzd9XpoVVqbwvZ40QPGBqqWkIFXug/tSojf/Ikc4nn4="; 104 }) 105 (fetchpatch { 106 url = "https://aur.archlinux.org/cgit/aur.git/plain/fix_build_with_poppler_25.02.0.patch?h=scribus-unstable"; 107 hash = "sha256-t9xJA6KGMGAdUFyjI8OlTNilewyMr1FFM7vjHOM15Xg="; 108 }) 109 ]; 110 111 meta = { 112 maintainers = with lib.maintainers; [ arthsmn ]; 113 description = "Desktop Publishing (DTP) and Layout program"; 114 mainProgram = "scribus"; 115 homepage = "https://www.scribus.net"; 116 # There are a lot of licenses... 117 # https://github.com/scribusproject/scribus/blob/20508d69ca4fc7030477db8dee79fd1e012b52d2/COPYING#L15-L19 118 license = with lib.licenses; [ 119 bsd3 120 gpl2Plus 121 mit 122 publicDomain 123 ]; 124 platforms = lib.platforms.all; 125 broken = stdenv.hostPlatform.isDarwin; 126 }; 127})