diff options
Diffstat (limited to 'nixpkgs/pkgs/by-name/ye/yeahwm/package.nix')
-rw-r--r-- | nixpkgs/pkgs/by-name/ye/yeahwm/package.nix | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/by-name/ye/yeahwm/package.nix b/nixpkgs/pkgs/by-name/ye/yeahwm/package.nix new file mode 100644 index 000000000000..975c9e0b139d --- /dev/null +++ b/nixpkgs/pkgs/by-name/ye/yeahwm/package.nix @@ -0,0 +1,87 @@ +{ lib +, stdenv +, fetchurl +, installShellFiles +, lesstif +, libX11 +, libXext +, libXinerama +, libXmu +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "yeahwm"; + version = "0.3.5"; + + src = fetchurl { + url = "http://phrat.de/yeahwm_${finalAttrs.version}.tar.gz"; + hash = "sha256-ySzpiEjIuI2bZ8Eo4wcQlEwEpkVDECVFNcECsrb87gU="; + }; + + nativeBuildInputs = [ + installShellFiles + ]; + + buildInputs = [ + lesstif + libX11 + libXext + libXinerama + libXmu + ]; + + strictDeps = true; + + preBuild = let + includes = builtins.concatStringsSep " " + (builtins.map (l: "-I${lib.getDev l}/include") + finalAttrs.buildInputs); + ldpath = builtins.concatStringsSep " " + (builtins.map (l: "-L${lib.getLib l}/lib") + finalAttrs.buildInputs); + in '' + makeFlagsArray+=( CC="${stdenv.cc}/bin/cc" \ + XROOT="${libX11}" \ + INCLUDES="${includes}" \ + LDPATH="${ldpath}" \ + prefix="${placeholder "out"}" ) + ''; + + # Workaround build failure on -fno-common toolchains like upstream gcc-10. + # Otherwise build fails as: + # ld: screen.o:(.bss+0x40): multiple definition of `fg'; client.o:(.bss+0x40): first defined here + env.NIX_CFLAGS_COMPILE = "-fcommon"; + + postInstall = '' + installManPage yeahwm.1 + ''; + + meta = { + homepage = "http://phrat.de/index.html"; + 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. + ''; + changelog = "http://phrat.de/README"; + license = lib.licenses.isc; + mainProgram = "yeahwm"; + maintainers = with lib.maintainers; [ AndersonTorres ]; + inherit (libX11.meta) platforms; + }; +}) |