Merge pull request #183209 from AndersonTorres/nscde

fvwm3: init at 1.0.4
This commit is contained in:
Anderson Torres 2022-07-29 21:10:55 -03:00 committed by GitHub
commit a34e3f299c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 211 additions and 56 deletions

View File

@ -19,7 +19,8 @@ in
./evilwm.nix
./exwm.nix
./fluxbox.nix
./fvwm.nix
./fvwm2.nix
./fvwm3.nix
./herbstluftwm.nix
./i3.nix
./jwm.nix

View File

@ -1,41 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.xserver.windowManager.fvwm;
fvwm = pkgs.fvwm.override { enableGestures = cfg.gestures; };
in
{
###### interface
options = {
services.xserver.windowManager.fvwm = {
enable = mkEnableOption "Fvwm window manager";
gestures = mkOption {
default = false;
type = types.bool;
description = "Whether or not to enable libstroke for gesture support";
};
};
};
###### implementation
config = mkIf cfg.enable {
services.xserver.windowManager.session = singleton
{ name = "fvwm";
start =
''
${fvwm}/bin/fvwm &
waitPID=$!
'';
};
environment.systemPackages = [ fvwm ];
};
}

View File

@ -0,0 +1,47 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.xserver.windowManager.fvwm2;
fvwm2 = pkgs.fvwm2.override { enableGestures = cfg.gestures; };
in
{
imports = [
(mkRenamedOptionModule
[ "services" "xserver" "windowManager" "fvwm" ]
[ "services" "xserver" "windowManager" "fvwm2" ])
];
###### interface
options = {
services.xserver.windowManager.fvwm2 = {
enable = mkEnableOption "Fvwm2 window manager";
gestures = mkOption {
default = false;
type = types.bool;
description = "Whether or not to enable libstroke for gesture support";
};
};
};
###### implementation
config = mkIf cfg.enable {
services.xserver.windowManager.session = singleton
{ name = "fvwm2";
start =
''
${fvwm2}/bin/fvwm &
waitPID=$!
'';
};
environment.systemPackages = [ fvwm2 ];
};
}

View File

@ -0,0 +1,35 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.xserver.windowManager.fvwm3;
inherit (pkgs) fvwm3;
in
{
###### interface
options = {
services.xserver.windowManager.fvwm3 = {
enable = mkEnableOption "Fvwm3 window manager";
};
};
###### implementation
config = mkIf cfg.enable {
services.xserver.windowManager.session = singleton
{ name = "fvwm3";
start =
''
${fvwm3}/bin/fvwm3 &
waitPID=$!
'';
};
environment.systemPackages = [ fvwm3 ];
};
}

View File

@ -1,6 +1,25 @@
{ autoreconfHook, enableGestures ? false, lib, stdenv, fetchFromGitHub
, pkg-config, cairo, fontconfig, freetype, libXft, libXcursor, libXinerama
, libXpm, libXt, librsvg, libpng, fribidi, perl, libstroke, readline, libxslt }:
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, cairo
, fontconfig
, freetype
, fribidi
, libXcursor
, libXft
, libXinerama
, libXpm
, libXt
, libpng
, librsvg
, libstroke
, libxslt
, perl
, pkg-config
, readline
, enableGestures ? false
}:
stdenv.mkDerivation rec {
pname = "fvwm";
@ -10,34 +29,38 @@ stdenv.mkDerivation rec {
owner = "fvwmorg";
repo = pname;
rev = version;
sha256 = "14jwckhikc9n4h93m00pzjs7xm2j0dcsyzv3q5vbcnknp6p4w5dh";
hash = "sha256-sBVOrrl2WrZ2wWN/r1kDUtR+tPwXgDoSJDaxGeFkXJI=";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [
cairo
fontconfig
freetype
libXft
fribidi
libXcursor
libXft
libXinerama
libXpm
libXt
librsvg
libpng
fribidi
librsvg
libxslt
perl
readline
libxslt
] ++ lib.optional enableGestures libstroke;
configureFlags = [ "--enable-mandoc" "--disable-htmldoc" ];
configureFlags = [
"--enable-mandoc"
"--disable-htmldoc"
];
meta = {
meta = with lib; {
homepage = "http://fvwm.org";
description = "A multiple large virtual desktop window manager";
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ edanaher ];
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ edanaher ];
};
}

View File

@ -0,0 +1,88 @@
{ lib
, stdenv
, fetchFromGitHub
, asciidoctor
, autoreconfHook
, cairo
, fontconfig
, freetype
, fribidi
, imlib
, libSM
, libX11
, libXcursor
, libXft
, libXi
, libXinerama
, libXpm
, libXrandr
, libXt
, libevent
, libintl
, libpng
, librsvg
, libstroke
, libxslt
, perl
, pkg-config
, python3
, readline
, sharutils
}:
stdenv.mkDerivation (finalAttrs: {
pname = "fvwm3";
version = "1.0.4";
src = fetchFromGitHub {
owner = "fvwmorg";
repo = "fvwm3";
rev = finalAttrs.version;
hash = "sha256-ByMSX4nwXkp+ly39C2+cYy3e9B0vnGcJlyIiS7V6zoI=";
};
nativeBuildInputs = [
autoreconfHook
asciidoctor
pkg-config
];
buildInputs = [
cairo
fontconfig
freetype
fribidi
imlib
libSM
libX11
libXcursor
libXft
libXi
libXinerama
libXpm
libXrandr
libXt
libevent
libintl
libpng
librsvg
libstroke
libxslt
perl
python3
readline
sharutils
];
configureFlags = [
"--enable-mandoc"
];
meta = with lib; {
homepage = "http://fvwm.org";
description = "A multiple large virtual desktop window manager - Version 3";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres ];
inherit (libX11.meta) platforms;
};
})

View File

@ -26943,7 +26943,9 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) CoreAudio CoreMIDI CoreServices Cocoa;
};
fvwm = callPackage ../applications/window-managers/fvwm { };
fvwm = fvwm2;
fvwm2 = callPackage ../applications/window-managers/fvwm/2.6.nix { };
fvwm3 = callPackage ../applications/window-managers/fvwm/3.nix { };
ganttproject-bin = callPackage ../applications/misc/ganttproject-bin { };