diff options
author | Frederik Rietdijk <fridh@fridh.nl> | 2019-05-28 08:32:03 +0200 |
---|---|---|
committer | Frederik Rietdijk <fridh@fridh.nl> | 2019-05-28 08:32:03 +0200 |
commit | 36a6746f2178141465761ce36de888389bc2968a (patch) | |
tree | 5c04c72e71624722e8f004b407712ff297c73ead /pkgs/desktops | |
parent | 8809ebe42a6e2ebd4fd8e742efbebb343f422572 (diff) | |
parent | 2a56ea3593aa0702a61313572c2211ef947f4d1f (diff) | |
download | nixlib-36a6746f2178141465761ce36de888389bc2968a.tar nixlib-36a6746f2178141465761ce36de888389bc2968a.tar.gz nixlib-36a6746f2178141465761ce36de888389bc2968a.tar.bz2 nixlib-36a6746f2178141465761ce36de888389bc2968a.tar.lz nixlib-36a6746f2178141465761ce36de888389bc2968a.tar.xz nixlib-36a6746f2178141465761ce36de888389bc2968a.tar.zst nixlib-36a6746f2178141465761ce36de888389bc2968a.zip |
Merge master into staging-next
Diffstat (limited to 'pkgs/desktops')
-rw-r--r-- | pkgs/desktops/enlightenment/terminology.nix | 8 | ||||
-rw-r--r-- | pkgs/desktops/gnome-3/core/evince/default.nix | 10 | ||||
-rw-r--r-- | pkgs/desktops/lumina/default.nix | 98 | ||||
-rw-r--r-- | pkgs/desktops/lumina/lumina-calculator/default.nix | 32 | ||||
-rw-r--r-- | pkgs/desktops/lumina/lumina-pdf/default.nix | 38 | ||||
-rw-r--r-- | pkgs/desktops/lumina/lumina/LuminaOS-NixOS.cpp.patch (renamed from pkgs/desktops/lumina/LuminaOS-NixOS.cpp.patch) | 0 | ||||
-rw-r--r-- | pkgs/desktops/lumina/lumina/avoid-absolute-path-on-sessdir.patch (renamed from pkgs/desktops/lumina/avoid-absolute-path-on-sessdir.patch) | 0 | ||||
-rw-r--r-- | pkgs/desktops/lumina/lumina/default.nix | 89 |
8 files changed, 193 insertions, 82 deletions
diff --git a/pkgs/desktops/enlightenment/terminology.nix b/pkgs/desktops/enlightenment/terminology.nix index 5c8aba4d882f..a2cd8ee192d0 100644 --- a/pkgs/desktops/enlightenment/terminology.nix +++ b/pkgs/desktops/enlightenment/terminology.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, meson, ninja, pkgconfig, efl, pcre, mesa_noglu, makeWrapper }: stdenv.mkDerivation rec { - name = "terminology-${version}"; - version = "1.4.0"; + pname = "terminology"; + version = "1.4.1"; src = fetchurl { - url = "http://download.enlightenment.org/rel/apps/terminology/${name}.tar.xz"; - sha256 = "0q1y7fadj42n23aspx9y8hm4w4xlc316wc3415wnf75ibsx08ngd"; + url = "http://download.enlightenment.org/rel/apps/${pname}/${pname}-${version}.tar.xz"; + sha256 = "0mm9v5a94369is3kaarnr3a28wy42wslzi1mcisaidlcldgv7f6p"; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome-3/core/evince/default.nix b/pkgs/desktops/gnome-3/core/evince/default.nix index 4b0ae91d78f5..6e7f0716eefb 100644 --- a/pkgs/desktops/gnome-3/core/evince/default.nix +++ b/pkgs/desktops/gnome-3/core/evince/default.nix @@ -1,5 +1,6 @@ { fetchFromGitLab , stdenv +, fetchpatch , meson , ninja , pkgconfig @@ -50,6 +51,15 @@ stdenv.mkDerivation rec { sha256 = "1klq8j70q8r8hyqv1wi6jcx8g76yh46bh8614y82zzggn4cx6y3r"; }; + + patches = [ + (fetchpatch { + name = "CVE-2019-11459.patch"; + url = "https://gitlab.gnome.org/GNOME/evince/commit/3e38d5ad724a042eebadcba8c2d57b0f48b7a8c7.patch"; + sha256 = "1ds6iwr2r9i86nwrly8cx7p1kbvf1gljjplcffa67znxqmwx4n74"; + }) + ]; + postPatch = '' chmod +x meson_post_install.py patchShebangs meson_post_install.py diff --git a/pkgs/desktops/lumina/default.nix b/pkgs/desktops/lumina/default.nix index 00ebfd8a7253..10e75eea38f0 100644 --- a/pkgs/desktops/lumina/default.nix +++ b/pkgs/desktops/lumina/default.nix @@ -1,84 +1,26 @@ -{ stdenv, fetchFromGitHub, fluxbox, xscreensaver, desktop-file-utils, - numlockx, xorg, qtbase, qtsvg, qtmultimedia, qtx11extras, qmake, - qttools, poppler, wrapGAppsHook -}: +{ pkgs, libsForQt5 }: -stdenv.mkDerivation rec { - name = "lumina-${version}"; - version = "1.4.0-p1"; +let + packages = self: with self; { - src = fetchFromGitHub { - owner = "trueos"; - repo = "lumina"; - rev = "v${version}"; - sha256 = "0jin0a2s6pjbpw7w1bz67dgqp0xlpw1a7nh8zv0qwdf954zczanp"; - }; - - nativeBuildInputs = [ - qmake - qttools - wrapGAppsHook - ]; - - buildInputs = [ - xorg.libxcb - xorg.libXdamage - xorg.xcbutilwm - xorg.xcbutilimage - qtbase - qtsvg - qtmultimedia - qtx11extras - poppler - fluxbox - xscreensaver - desktop-file-utils - numlockx - ]; - - patches = [ - ./avoid-absolute-path-on-sessdir.patch - ./LuminaOS-NixOS.cpp.patch - ]; - - prePatch = '' - # Copy Gentoo setup as NixOS setup and then patch it - # TODO: write a complete NixOS setup? - cp -a src-qt5/core/libLumina/LuminaOS-Gentoo.cpp src-qt5/core/libLumina/LuminaOS-NixOS.cpp - ''; + lumina = callPackage ./lumina { }; + lumina-calculator = callPackage ./lumina-calculator { }; + lumina-pdf = callPackage ./lumina-pdf { }; - postPatch = '' - # Fix location of poppler-qt5.h - substituteInPlace src-qt5/desktop-utils/lumina-pdf/mainUI.h \ - --replace '#include <poppler-qt5.h>' '#include <poppler/qt5/poppler-qt5.h>' + preRequisitePackages = [ + pkgs.fluxbox + pkgs.libsForQt5.kwindowsystem + pkgs.numlockx + pkgs.qt5.qtsvg + pkgs.xscreensaver + ]; - # Fix plugin dir - substituteInPlace src-qt5/core/lumina-theme-engine/lthemeengine.pri \ - --replace "\$\$[QT_INSTALL_PLUGINS]" "$out/$qtPluginPrefix" + corePackages = [ + lumina + lumina-calculator + lumina-pdf + ]; - # Fix location of fluxbox styles - substituteInPlace src-qt5/core-utils/lumina-config/pages/page_fluxbox_settings.cpp \ - --replace 'LOS::AppPrefix()+"share/fluxbox' "\"${fluxbox}/share/fluxbox" - ''; - - qmakeFlags = [ - "LINUX_DISTRO=NixOS" - "CONFIG+=WITH_I18N" - "LRELEASE=${stdenv.lib.getDev qttools}/bin/lrelease" - ]; - - enableParallelBuilding = true; - - meta = with stdenv.lib; { - description = "A lightweight, portable desktop environment"; - longDescription = '' - The Lumina Desktop Environment is a lightweight system interface - that is designed for use on any Unix-like operating system. It - is based on QT5. - ''; - homepage = https://lumina-desktop.org; - license = licenses.bsd3; - platforms = platforms.unix; - maintainers = [ maintainers.romildo ]; }; -} + +in pkgs.lib.makeScope libsForQt5.newScope packages diff --git a/pkgs/desktops/lumina/lumina-calculator/default.nix b/pkgs/desktops/lumina/lumina-calculator/default.nix new file mode 100644 index 000000000000..70e0f2e3511c --- /dev/null +++ b/pkgs/desktops/lumina/lumina-calculator/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchFromGitHub, qmake, qtbase, qttools }: + +stdenv.mkDerivation rec { + pname = "lumina-calculator"; + version = "2019-04-27"; + + src = fetchFromGitHub { + owner = "lumina-desktop"; + repo = pname; + rev = "ccb792fc713aa7163fffd37fc20c83ffe9ca7523"; + sha256 = "0cdyz94znycsc3qxg5bmg51bwms7586d4ja1bsmj8cb9pd3lv980"; + }; + + sourceRoot = "source/src-qt5"; + + nativeBuildInputs = [ qmake qttools ]; + + buildInputs = [ qtbase ]; + + qmakeFlags = [ + "CONFIG+=WITH_I18N" + "LRELEASE=${stdenv.lib.getDev qttools}/bin/lrelease" + ]; + + meta = with stdenv.lib; { + description = "Scientific calculator for the Lumina Desktop"; + homepage = https://github.com/lumina-desktop/lumina-calculator; + license = licenses.bsd3; + platforms = platforms.unix; + maintainers = [ maintainers.romildo ]; + }; +} diff --git a/pkgs/desktops/lumina/lumina-pdf/default.nix b/pkgs/desktops/lumina/lumina-pdf/default.nix new file mode 100644 index 000000000000..62d59d18cc55 --- /dev/null +++ b/pkgs/desktops/lumina/lumina-pdf/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchFromGitHub, qmake, qtbase, qttools, poppler }: + +stdenv.mkDerivation rec { + pname = "lumina-pdf"; + version = "2019-04-27"; + + src = fetchFromGitHub { + owner = "lumina-desktop"; + repo = pname; + rev = "645ed591ef91c3607d3ab87dd86f7acfd08b05c9"; + sha256 = "0gl943jb9c9rcgb5wksx3946hwlifghfd27r97skm9is8ih6k0vn"; + }; + + sourceRoot = "source/src-qt5"; + + nativeBuildInputs = [ qmake qttools ]; + + buildInputs = [ qtbase poppler ]; + + postPatch = '' + sed -i '1i\#include <memory>\' Renderer-poppler.cpp + ''; + + qmakeFlags = [ + "CONFIG+=WITH_I18N" + "LRELEASE=${stdenv.lib.getDev qttools}/bin/lrelease" + ]; + + enableParallelBuilding = false; + + meta = with stdenv.lib; { + description = "PDF viewer for the Lumina Desktop"; + homepage = https://github.com/lumina-desktop/lumina-pdf; + license = licenses.bsd3; + platforms = platforms.unix; + maintainers = [ maintainers.romildo ]; + }; +} diff --git a/pkgs/desktops/lumina/LuminaOS-NixOS.cpp.patch b/pkgs/desktops/lumina/lumina/LuminaOS-NixOS.cpp.patch index 6ddd9c76591b..6ddd9c76591b 100644 --- a/pkgs/desktops/lumina/LuminaOS-NixOS.cpp.patch +++ b/pkgs/desktops/lumina/lumina/LuminaOS-NixOS.cpp.patch diff --git a/pkgs/desktops/lumina/avoid-absolute-path-on-sessdir.patch b/pkgs/desktops/lumina/lumina/avoid-absolute-path-on-sessdir.patch index f5ef6cba41f6..f5ef6cba41f6 100644 --- a/pkgs/desktops/lumina/avoid-absolute-path-on-sessdir.patch +++ b/pkgs/desktops/lumina/lumina/avoid-absolute-path-on-sessdir.patch diff --git a/pkgs/desktops/lumina/lumina/default.nix b/pkgs/desktops/lumina/lumina/default.nix new file mode 100644 index 000000000000..c758fc38a1b9 --- /dev/null +++ b/pkgs/desktops/lumina/lumina/default.nix @@ -0,0 +1,89 @@ +{ stdenv, + fetchFromGitHub, + desktop-file-utils, + fluxbox, + numlockx, + qmake, + qtbase, + qtmultimedia, + qtsvg, + qttools, + qtx11extras, + xorg, + xscreensaver, + wrapGAppsHook +}: + +stdenv.mkDerivation rec { + pname = "lumina"; + version = "1.5.0"; + + src = fetchFromGitHub { + owner = "lumina-desktop"; + repo = pname; + rev = "v${version}"; + sha256 = "0rj2gzifr98db7i82cg3hg7l5yfik810pjpawg6n54qbzq987z25"; + }; + + nativeBuildInputs = [ + qmake + qttools + wrapGAppsHook + ]; + + buildInputs = [ + xorg.libxcb + xorg.libXcursor + xorg.libXdamage + xorg.xcbutilwm + xorg.xcbutilimage + qtbase + qtsvg + qtmultimedia + qtx11extras + fluxbox + xscreensaver + desktop-file-utils + numlockx + ]; + + patches = [ + ./avoid-absolute-path-on-sessdir.patch + ./LuminaOS-NixOS.cpp.patch + ]; + + prePatch = '' + # Copy Gentoo setup as NixOS setup and then patch it + # TODO: write a complete NixOS setup? + cp -a src-qt5/core/libLumina/LuminaOS-Gentoo.cpp src-qt5/core/libLumina/LuminaOS-NixOS.cpp + ''; + + postPatch = '' + # Fix plugin dir + substituteInPlace src-qt5/core/lumina-theme-engine/lthemeengine.pri \ + --replace "\$\$[QT_INSTALL_PLUGINS]" "$out/$qtPluginPrefix" + + # Fix location of fluxbox styles + substituteInPlace src-qt5/core-utils/lumina-config/pages/page_fluxbox_settings.cpp \ + --replace 'LOS::AppPrefix()+"share/fluxbox' "\"${fluxbox}/share/fluxbox" + ''; + + qmakeFlags = [ + "LINUX_DISTRO=NixOS" + "CONFIG+=WITH_I18N" + "LRELEASE=${stdenv.lib.getDev qttools}/bin/lrelease" + ]; + + meta = with stdenv.lib; { + description = "A lightweight, portable desktop environment"; + longDescription = '' + The Lumina Desktop Environment is a lightweight system interface + that is designed for use on any Unix-like operating system. It + is based on QT5. + ''; + homepage = https://lumina-desktop.org; + license = licenses.bsd3; + platforms = platforms.unix; + maintainers = [ maintainers.romildo ]; + }; +} |