AfterStep (version 2.2.12): New Package

AfterStep is a beautiful window manager, inspired by NEXTStep interface

Closes #4177
This commit is contained in:
AndersonTorres 2014-09-02 19:42:54 -03:00 committed by Mateusz Kowalczyk
parent 4f85f64153
commit 90fcd66599
3 changed files with 77 additions and 1 deletions

View file

@ -0,0 +1,28 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.xserver.windowManager.afterstep;
in
{
###### interface
options = {
services.xserver.windowManager.afterstep.enable = mkOption {
default = false;
description = "Enable the Afterstep window manager.";
};
};
###### implementation
config = mkIf cfg.enable {
services.xserver.windowManager.session = singleton {
name = "afterstep";
start = ''
${pkgs.afterstep}/bin/afterstep &
waitPID=$!
'';
};
environment.systemPackages = [ pkgs.afterstep ];
};
}

View file

@ -0,0 +1,42 @@
{ stdenv, fetchurl, pkgconfig
, libjpeg, libtiff, libpng, freetype
, fltk, gtk
, libX11, libXext, libICE
, dbus, dbus_libs
}:
stdenv.mkDerivation rec {
name = "afterstep-${version}";
version = "2.2.12";
sourceName = "AfterStep-${version}";
src = fetchurl {
urls = [ "ftp://ftp.afterstep.org/stable/${sourceName}.tar.bz2" ];
sha256 = "1j7vkx1ig4kzwffdxnkqv3kld9qi3sam4w2nhq18waqjsi8xl5gz";
};
buildInputs = [ pkgconfig libjpeg libtiff libpng freetype fltk gtk libX11 libXext libICE dbus dbus_libs ];
# A strange type of bug: dbus is not immediately found by pkgconfig
preConfigure = ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config dbus-1 --cflags)"
'';
meta = with stdenv.lib; {
description = "A NEXTStep-inspired window manager";
longDescription = ''
AfterStep is a window manager for the Unix X Window
System. Originally based on the look and feel of the NeXTStep
interface, it provides end users with a consistent, clean, and
elegant desktop. The goal of AfterStep development is to provide
for flexibility of desktop configuration, improving aestetics,
and efficient use of system resources.
'';
homepage = http://www.afterstep.org/;
license = licenses.gpl2;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View file

@ -167,7 +167,7 @@ let
x11 = xlibsWrapper;
# `xlibs' is the set of X library components. This used to be the
# old modular X llibraries project (called `xlibs') but now it's just
# old modular X libraries project (called `xlibs') but now it's just
# the set of packages in the modular X.org tree (which also includes
# non-library components like the server, drivers, fonts, etc.).
xlibs = xorg // {xlibs = xlibsWrapper;};
@ -8456,6 +8456,12 @@ let
aewan = callPackage ../applications/editors/aewan { };
afterstep = callPackage ../applications/window-managers/afterstep {
inherit (xlibs) libX11 libXext libICE;
fltk = fltk13;
gtk = gtk2;
};
alchemy = callPackage ../applications/graphics/alchemy { };
alock = callPackage ../misc/screensavers/alock { };