From 86c72072fd7f0474c405f3ba7785a2e736b1b5f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Mon, 12 Apr 2021 15:58:53 -0300 Subject: [PATCH 1/2] e16: init at 1.0.23 --- .../window-managers/e16/default.nix | 62 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 64 insertions(+) create mode 100644 pkgs/applications/window-managers/e16/default.nix diff --git a/pkgs/applications/window-managers/e16/default.nix b/pkgs/applications/window-managers/e16/default.nix new file mode 100644 index 000000000000..7028dcfc09dc --- /dev/null +++ b/pkgs/applications/window-managers/e16/default.nix @@ -0,0 +1,62 @@ +{ lib +, stdenv +, fetchurl +, pkg-config +, freetype +, imlib2 +, libSM +, libXcomposite +, libXdamage +, libXext +, libXfixes +, libXft +, libXinerama +, libXrandr +, libpulseaudio +, libsndfile +, pango +, perl +}: + +stdenv.mkDerivation rec { + pname = "e16"; + version = "1.0.23"; + + src = fetchurl { + url = "mirror://sourceforge/enlightenment/e16-${version}.tar.xz"; + sha256 = "028rn1plggacsvdd035qnnph4xw8nya34mmjvvl7d4gqj9pj293f"; + }; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + freetype + imlib2 + libSM + libXcomposite + libXdamage + libXext + libXfixes + libXft + libXinerama + libXrandr + libpulseaudio + libsndfile + pango + perl + ]; + + postPatch = '' + substituteInPlace scripts/e_gen_menu --replace "/usr/local:" "/run/current-system/sw:/usr/local:" + ''; + + meta = with lib; { + homepage = "https://www.enlightenment.org/e16"; + description = "Enlightenment DR16 window manager"; + license = licenses.bsd2; + platforms = platforms.linux; + maintainers = [ maintainers.romildo ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5b99669220f6..329e01515e55 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22475,6 +22475,8 @@ in dzen2 = callPackage ../applications/window-managers/dzen2 { }; + e16 = callPackage ../applications/window-managers/e16 { }; + eaglemode = callPackage ../applications/misc/eaglemode { }; ebumeter = callPackage ../applications/audio/ebumeter { }; From 728c4f81b8d36ae8a84d9b7dce81bb94bc63ba94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Mon, 12 Apr 2021 16:00:05 -0300 Subject: [PATCH 2/2] nixos/e16: add e16 module --- .../services/x11/window-managers/default.nix | 1 + .../services/x11/window-managers/e16.nix | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 nixos/modules/services/x11/window-managers/e16.nix diff --git a/nixos/modules/services/x11/window-managers/default.nix b/nixos/modules/services/x11/window-managers/default.nix index 9ca24310e567..f7797bac6e98 100644 --- a/nixos/modules/services/x11/window-managers/default.nix +++ b/nixos/modules/services/x11/window-managers/default.nix @@ -15,6 +15,7 @@ in ./cwm.nix ./clfswm.nix ./dwm.nix + ./e16.nix ./evilwm.nix ./exwm.nix ./fluxbox.nix diff --git a/nixos/modules/services/x11/window-managers/e16.nix b/nixos/modules/services/x11/window-managers/e16.nix new file mode 100644 index 000000000000..3e1a22c4dabd --- /dev/null +++ b/nixos/modules/services/x11/window-managers/e16.nix @@ -0,0 +1,26 @@ +{ config , lib , pkgs , ... }: + +with lib; + +let + cfg = config.services.xserver.windowManager.e16; +in +{ + ###### interface + options = { + services.xserver.windowManager.e16.enable = mkEnableOption "e16"; + }; + + ###### implementation + config = mkIf cfg.enable { + services.xserver.windowManager.session = singleton { + name = "E16"; + start = '' + ${pkgs.e16}/bin/e16 & + waitPID=$! + ''; + }; + + environment.systemPackages = [ pkgs.e16 ]; + }; +}