about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorAnderson Torres <torres.anderson.85@protonmail.com>2020-05-14 22:22:07 -0300
committerGitHub <noreply@github.com>2020-05-14 22:22:07 -0300
commit0687add56e46eee1364b58d0a2424c6af1949a11 (patch)
tree48ae78360a0169163a3a38b9c0bc1b63b295380c /pkgs/applications
parentec7dbdb74c0e74c8985836684dde836e6c5ea916 (diff)
parent1c2c0b2eb8ead11d06bd840e9a1d6b4d1f86d49e (diff)
downloadnixlib-0687add56e46eee1364b58d0a2424c6af1949a11.tar
nixlib-0687add56e46eee1364b58d0a2424c6af1949a11.tar.gz
nixlib-0687add56e46eee1364b58d0a2424c6af1949a11.tar.bz2
nixlib-0687add56e46eee1364b58d0a2424c6af1949a11.tar.lz
nixlib-0687add56e46eee1364b58d0a2424c6af1949a11.tar.xz
nixlib-0687add56e46eee1364b58d0a2424c6af1949a11.tar.zst
nixlib-0687add56e46eee1364b58d0a2424c6af1949a11.zip
Merge pull request #87716 from AndersonTorres/weird-window-mangers-upload
Small window managers:

- berry: init at 0.1.5
- smallwm: init at 2020-02-28
- yeahwm: init at 0.3.5
- lwm: init at 1.2.4
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/window-managers/berry/default.nix47
-rw-r--r--pkgs/applications/window-managers/lwm/default.nix45
-rw-r--r--pkgs/applications/window-managers/smallwm/default.nix38
-rw-r--r--pkgs/applications/window-managers/yeahwm/default.nix58
4 files changed, 188 insertions, 0 deletions
diff --git a/pkgs/applications/window-managers/berry/default.nix b/pkgs/applications/window-managers/berry/default.nix
new file mode 100644
index 000000000000..2a41a3d3c073
--- /dev/null
+++ b/pkgs/applications/window-managers/berry/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub
+, libX11, libXft, libXinerama, fontconfig, freetype }:
+
+stdenv.mkDerivation rec {
+  pname = "berry";
+  version = "0.1.5";
+
+  src = fetchFromGitHub {
+    owner = "JLErvin";
+    repo = "berry";
+    rev = version;
+    sha256 = "1wxbjzpwqb9x7vd7kb095fiqj271rki980dnwcxjxpqlmmrmjzyl";
+  };
+
+  buildInputs = [ libX11 libXft libXinerama fontconfig freetype ];
+
+  preBuild = ''
+    makeFlagsArray+=( PREFIX="${placeholder "out"}"
+                      X11INC="${libX11.dev}/include"
+                      X11LIB="${libX11}/lib"
+                      XINERAMALIBS="-lXinerama"
+                      XINERAMAFLAGS="-DXINERAMA"
+                      FREETYPELIBS="-lfontconfig -lXft"
+                      FREETYPEINC="${freetype.dev}/include/freetype2" )
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A healthy, bite-sized window manager";
+    longDescription = ''
+      berry is a healthy, bite-sized window manager written in C for unix
+      systems. Its main features include:
+
+      - Controlled via a powerful command-line client, allowing users to control
+        windows via a hotkey daemon such as sxhkd or expand functionality via
+        shell scripts.
+      - Small, hackable source code.
+      - Extensible themeing options with double borders, title bars, and window
+        text.
+      - Intuitively place new windows in unoccupied spaces.
+      - Virtual desktops.
+    '';
+    homepage = "https://berrywm.org/";
+    license = licenses.mit;
+    maintainers = [ maintainers.AndersonTorres ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/window-managers/lwm/default.nix b/pkgs/applications/window-managers/lwm/default.nix
new file mode 100644
index 000000000000..49cdc81b9ce0
--- /dev/null
+++ b/pkgs/applications/window-managers/lwm/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl
+, imake, libX11, libSM, libXext, libICE }:
+
+stdenv.mkDerivation rec {
+  pname = "lwm";
+  version = "1.2.4";
+
+  src = fetchurl {
+    url = "http://www.jfc.org.uk/files/lwm/${pname}-${version}.tar.gz";
+    sha256 = "1bcdr173f0gl61fyl43p3gr145angci7lvjqb8rl00y9f9amvh3y";
+  };
+
+  nativeBuildInputs = [ imake ];
+
+  buildInputs = [ libX11 libSM libXext libICE ];
+
+  dontConfigure = true;
+
+  preBuild = ''
+    sed -i 's|^LOCAL_LIBRARIES.*|& $(ICELIB)|' Imakefile
+    xmkmf
+  '';
+
+  installPhase = ''
+    install -dm755 $out/bin $out/share/man/man1
+    install -m755 lwm $out/bin/lwm
+    install -m644 lwm.man $out/share/man/man1/lwm.1
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Lightweight Window Manager";
+    longDescription = ''
+      lwm is a window manager for X that tries to keep out of your face. There
+      are no icons, no button bars, no icon docks, no root menus, no nothing: if
+      you want all that, then other programs can provide it. There's no
+      configurability either: if you want that, you want a different window
+      manager; one that helps your operating system in its evil conquest of your
+      disc space and its annexation of your physical memory.
+    '';
+    homepage = "http://www.jfc.org.uk/software/lwm.html";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.AndersonTorres ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/window-managers/smallwm/default.nix b/pkgs/applications/window-managers/smallwm/default.nix
new file mode 100644
index 000000000000..b6d3821e8d06
--- /dev/null
+++ b/pkgs/applications/window-managers/smallwm/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchFromGitHub
+, doxygen, graphviz, libX11, libXrandr }:
+
+stdenv.mkDerivation rec {
+
+  pname = "smallwm";
+  version = "2020-02-28";
+
+  src = fetchFromGitHub {
+    owner = "adamnew123456";
+    repo = "SmallWM";
+    rev = "c2dc72afa87241bcf7e646630f4aae216ce78613";
+    sha256 = "0cqhy81ymdcdyvgi55a401rr96h2akskcxi9ddzjbln4a71yjlz8";
+  };
+
+  nativeBuildInputs = [ doxygen graphviz ];
+  buildInputs = [ libX11 libXrandr ];
+
+  dontConfigure = true;
+
+  makeFlags = [ "CC=${stdenv.cc}/bin/cc" "CXX=${stdenv.cc}/bin/c++" ];
+
+  buildFlags = [ "all" "doc" ];
+
+  installPhase = ''
+    install -dm755 $out/bin $out/share/doc/${pname}-${version}
+    install -m755 bin/smallwm -t $out/bin
+    cp -r README.markdown doc/html doc/latex $out/share/doc/${pname}-${version}
+  '';
+
+  meta = with stdenv.lib;{
+    description = "A small X window manager, extended from tinywm";
+    homepage = "https://github.com/adamnew123456/SmallWM";
+    license = licenses.bsd2;
+    maintainers = [ maintainers.AndersonTorres ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/window-managers/yeahwm/default.nix b/pkgs/applications/window-managers/yeahwm/default.nix
new file mode 100644
index 000000000000..a8323ff1d386
--- /dev/null
+++ b/pkgs/applications/window-managers/yeahwm/default.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchurl
+, lesstif
+, libX11, libXext, libXmu, libXinerama }:
+
+stdenv.mkDerivation rec {
+
+  pname = "yeahwm";
+  version = "0.3.5";
+
+  src = fetchurl {
+    url = "http://phrat.de/${pname}_${version}.tar.gz";
+    sha256 = "01gfzjvb40n16m2ja4238nk08k4l203y6a61cydqvf68924fjb69";
+  };
+
+  buildInputs = [ lesstif libX11 libXext libXinerama libXmu ];
+
+  dontConfigure = true;
+
+  preBuild = ''
+    makeFlagsArray+=( CC="${stdenv.cc}/bin/cc" \
+                      XROOT="${libX11}" \
+                      INCLUDES="-I${libX11.dev}/include -I${libXext.dev}/include -I${libXinerama.dev}/include -I${libXmu.dev}/include" \
+                      LDPATH="-L${libX11}/lib -L${libXext}/lib -L${libXinerama}/lib -L${libXmu}/lib" \
+                      prefix="${placeholder "out"}" )
+  '';
+
+  postInstall = ''
+    gzip -9 --stdout yeahwm.1 > yeahwm.1.gz
+    install -m644 yeahwm.1.gz ${placeholder "out"}/share/man/man1/
+  '';
+
+  meta = with stdenv.lib;{
+    description = "An X window manager based on evilwm and aewm";
+    longDescription = ''
+      YeahWM is a h* window manager for X based on evilwm and aewm.
+
+      Features
+      - Sloppy Focus.
+      - BeOS-like tabbed titles, which can be repositioned.
+      - Support for Xinerama.
+      - Simple Appearance.
+      - Good keyboard control.
+      - Creative usage of the mouse.
+      - Respects aspect size hints.
+      - Solid resize and move operations.
+      - Virtual Desktops.
+      - "Magic" Screen edges for desktop switching.
+      - Snapping to other windows and screen borders when moving windows.
+      - Small binary size(ca. 23kb).
+      - Little resource usage.
+      - It's slick.
+    '';
+    homepage = "http://phrat.de/index.html";
+    license = licenses.isc;
+    maintainers = [ maintainers.AndersonTorres ];
+    platforms = libX11.meta.platforms;
+  };
+}