diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2016-11-15 00:20:19 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2016-11-15 00:20:19 +0100 |
commit | b5e89fe9bf52e3c0e1b305c326c39319276761f6 (patch) | |
tree | 0147a358c20d3e2f419c48a02fd738ca6ea8fda9 /pkgs/desktops | |
parent | e3c2e66f432acb3decc48f4c7273dff609ff513d (diff) | |
parent | 7f51891baa083254914358f782d3e1bed2727e55 (diff) |
Merge branch 'master' into staging
Diffstat (limited to 'pkgs/desktops')
-rw-r--r-- | pkgs/desktops/lumina/LuminaOS-NixOS.cpp.patch | 26 | ||||
-rw-r--r-- | pkgs/desktops/lumina/avoid-absolute-path-on-sessdir.patch | 11 | ||||
-rw-r--r-- | pkgs/desktops/lumina/default.nix | 69 |
3 files changed, 106 insertions, 0 deletions
diff --git a/pkgs/desktops/lumina/LuminaOS-NixOS.cpp.patch b/pkgs/desktops/lumina/LuminaOS-NixOS.cpp.patch new file mode 100644 index 0000000000000..6ddd9c76591b1 --- /dev/null +++ b/pkgs/desktops/lumina/LuminaOS-NixOS.cpp.patch @@ -0,0 +1,26 @@ +diff --git a/src-qt5/core/libLumina/LuminaOS-NixOS.cpp b/src-qt5/core/libLumina/LuminaOS-NixOS.cpp +index b92d1b0..441b1bf 100644 +--- a/src-qt5/core/libLumina/LuminaOS-NixOS.cpp ++++ b/src-qt5/core/libLumina/LuminaOS-NixOS.cpp +@@ -13,17 +13,17 @@ + //can't read xbrightness settings - assume invalid until set + static int screenbrightness = -1; + +-QString LOS::OSName(){ return "Gentoo Linux"; } ++QString LOS::OSName(){ return "NixOS"; } + + //OS-specific prefix(s) + // NOTE: PREFIX, L_ETCDIR, L_SHAREDIR are defined in the OS-detect.pri project file and passed in + QString LOS::LuminaShare(){ return (L_SHAREDIR+"/lumina-desktop/"); } //Install dir for Lumina share files +-QString LOS::AppPrefix(){ return "/usr/"; } //Prefix for applications +-QString LOS::SysPrefix(){ return "/"; } //Prefix for system ++QString LOS::AppPrefix(){ return PREFIX+"/usr"; } //Prefix for applications ++QString LOS::SysPrefix(){ return PREFIX; } //Prefix for system + + //OS-specific application shortcuts (*.desktop files) + QString LOS::ControlPanelShortcut(){ return ""; } //system control panel +-QString LOS::AppStoreShortcut(){ return LOS::AppPrefix() + "/share/applications/porthole.desktop"; } //graphical app/pkg manager ++QString LOS::AppStoreShortcut(){ return ""; } //graphical app/pkg manager + //OS-specific RSS feeds (Format: QStringList[ <name>::::<url> ]; ) + QStringList LOS::RSSFeeds(){ return QStringList(); } + diff --git a/pkgs/desktops/lumina/avoid-absolute-path-on-sessdir.patch b/pkgs/desktops/lumina/avoid-absolute-path-on-sessdir.patch new file mode 100644 index 0000000000000..f5ef6cba41f6a --- /dev/null +++ b/pkgs/desktops/lumina/avoid-absolute-path-on-sessdir.patch @@ -0,0 +1,11 @@ +diff -Naur lumina-1.0.0-Release-p1-OLD/src-qt5/OS-detect.pri lumina-1.0.0-Release-p1-PATCH/src-qt5/OS-detect.pri +--- lumina-1.0.0-Release-p1-OLD/src-qt5/OS-detect.pri 2016-08-09 12:04:30.000000000 -0300 ++++ lumina-1.0.0-Release-p1-PATCH/src-qt5/OS-detect.pri 2016-08-13 17:32:18.272137900 -0300 +@@ -55,7 +55,6 @@ + #Use the defaults for everything else + + }else : linux-*{ +- L_SESSDIR=/usr/share/xsessions + OS=Linux + LIBS += -L/usr/local/lib -L/usr/lib -L/lib + diff --git a/pkgs/desktops/lumina/default.nix b/pkgs/desktops/lumina/default.nix new file mode 100644 index 0000000000000..dcacabc39c1ee --- /dev/null +++ b/pkgs/desktops/lumina/default.nix @@ -0,0 +1,69 @@ +{ stdenv, fetchFromGitHub, fluxbox, xscreensaver, desktop_file_utils, + numlockx, xorg, qt5, kde5 +}: + +stdenv.mkDerivation rec { + name = "lumina-${version}"; + version = "1.1.0-p1"; + + src = fetchFromGitHub { + owner = "trueos"; + repo = "lumina"; + rev = "v${version}"; + sha256 = "1kkb6v6p6w5mx1qdmcrq3r674k9ahpc6wlsb9pi2lq8qk9yaid0m"; + }; + + nativeBuildInputs = [ + qt5.qmakeHook + qt5.qttools + ]; + + buildInputs = [ + xorg.libxcb + xorg.xcbutilwm + xorg.xcbutilimage + qt5.qtbase + qt5.qtsvg + qt5.qtmultimedia + qt5.qtx11extras + kde5.oxygen-icons5 + 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 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" ]; + + 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 ]; + }; +} |