compton: 0.1_beta2.5 -> 6.2 (#61681)
* compton-git: 5.1-rc2 -> 6.2 vsync is now a boolean option, see: https://github.com/yshui/compton/pull/130 menu-opacity is deprecated and there's a warning that says: Please use the wintype option `opacity` of `popup_menu` and `dropdown_menu` instead. * nixos/compton: Keep vSync option backwards compatible The new upstream option tries to make the best choice for the user. Therefore the behaviour should stay the same with this backwards compatibility patch. * compton-git: Remove DRM option It's deprecated and shouldn't be used. https://github.com/yshui/compton/pull/130/files#r285505456 * compton-git: Remove new_backends option Was removed in "Let old/new backends co-exist" b0c5db9f5aa500dc3568cc6fe68493df98794d4d * compton: 0.1_beta2.5 -> 6.2 Drop the legacy, unmaintained version and use the fork for real.
This commit is contained in:
parent
53b08beea6
commit
eccb90a2d9
4 changed files with 75 additions and 105 deletions
|
@ -37,7 +37,12 @@ let
|
|||
# opacity
|
||||
active-opacity = ${cfg.activeOpacity};
|
||||
inactive-opacity = ${cfg.inactiveOpacity};
|
||||
menu-opacity = ${cfg.menuOpacity};
|
||||
|
||||
wintypes:
|
||||
{
|
||||
popup_menu = { opacity = ${cfg.menuOpacity}; }
|
||||
dropdown_menu = { opacity = ${cfg.menuOpacity}; }
|
||||
};
|
||||
|
||||
opacity-rule = [
|
||||
${opacityRules}
|
||||
|
@ -45,7 +50,7 @@ let
|
|||
|
||||
# other options
|
||||
backend = ${toJSON cfg.backend};
|
||||
vsync = ${toJSON cfg.vSync};
|
||||
vsync = ${lib.boolToString cfg.vSync};
|
||||
refresh-rate = ${toString cfg.refreshRate};
|
||||
'' + cfg.extraOptions);
|
||||
|
||||
|
@ -189,15 +194,22 @@ in {
|
|||
};
|
||||
|
||||
vSync = mkOption {
|
||||
type = types.enum [
|
||||
"none" "drm" "opengl"
|
||||
"opengl-oml" "opengl-swc" "opengl-mswc"
|
||||
];
|
||||
default = "none";
|
||||
example = "opengl-swc";
|
||||
type = with types; either bool
|
||||
(enum [ "none" "drm" "opengl" "opengl-oml" "opengl-swc" "opengl-mswc" ]);
|
||||
default = false;
|
||||
apply = x:
|
||||
let
|
||||
res = x != "none";
|
||||
msg = "The type of services.compton.vSync has changed to bool:"
|
||||
+ " interpreting ${x} as ${lib.boolToString res}";
|
||||
in
|
||||
if isBool x then x
|
||||
else warn msg res;
|
||||
|
||||
description = ''
|
||||
Enable vertical synchronization using the specified method.
|
||||
See <literal>compton(1)</literal> man page an explanation.
|
||||
Enable vertical synchronization. Chooses the best method
|
||||
(drm, opengl, opengl-oml, opengl-swc, opengl-mswc) automatically.
|
||||
The bool value should be used, the others are just for backwards compatibility.
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -3,110 +3,67 @@
|
|||
, xorgproto, libxcb ,xcbutilrenderutil, xcbutilimage, pixman, libev
|
||||
, dbus, libconfig, libdrm, libGL, pcre, libX11, libXcomposite, libXdamage
|
||||
, libXinerama, libXrandr, libXrender, libXext, xwininfo, libxdg_basedir }:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "compton";
|
||||
version = "6.2";
|
||||
|
||||
let
|
||||
common = source: stdenv.mkDerivation (source // rec {
|
||||
name = "${source.pname}-${source.version}";
|
||||
COMPTON_VERSION = "v${version}";
|
||||
|
||||
nativeBuildInputs = (source.nativeBuildInputs or []) ++ [
|
||||
pkgconfig
|
||||
asciidoc
|
||||
docbook_xml_dtd_45
|
||||
docbook_xsl
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/compton-trans \
|
||||
--prefix PATH : ${lib.makeBinPath [ xwininfo ]}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A fork of XCompMgr, a sample compositing manager for X servers";
|
||||
longDescription = ''
|
||||
A fork of XCompMgr, which is a sample compositing manager for X
|
||||
servers supporting the XFIXES, DAMAGE, RENDER, and COMPOSITE
|
||||
extensions. It enables basic eye-candy effects. This fork adds
|
||||
additional features, such as additional effects, and a fork at a
|
||||
well-defined and proper place.
|
||||
'';
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ertes enzime twey ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
});
|
||||
|
||||
stableSource = rec {
|
||||
pname = "compton";
|
||||
version = "0.1_beta2.5";
|
||||
|
||||
COMPTON_VERSION = version;
|
||||
|
||||
buildInputs = [
|
||||
dbus libX11 libXcomposite libXdamage libXrender libXrandr libXext
|
||||
libXinerama libdrm pcre libxml2 libxslt libconfig libGL
|
||||
];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "chjj";
|
||||
repo = "compton";
|
||||
rev = "b7f43ee67a1d2d08239a2eb67b7f50fe51a592a8";
|
||||
sha256 = "1p7ayzvm3c63q42na5frznq3rlr1lby2pdgbvzm1zl07wagqss18";
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/chjj/compton/;
|
||||
};
|
||||
src = fetchFromGitHub {
|
||||
owner = "yshui";
|
||||
repo = "compton";
|
||||
rev = COMPTON_VERSION;
|
||||
sha256 = "03fi9q8zw2qrwpkmy1bnavgfh91ci9in5fdi17g4s5s0n2l7yil7";
|
||||
};
|
||||
|
||||
gitSource = rec {
|
||||
pname = "compton-git";
|
||||
version = "5.1-rc2";
|
||||
nativeBuildInputs = [
|
||||
meson ninja
|
||||
pkgconfig
|
||||
asciidoc
|
||||
docbook_xml_dtd_45
|
||||
docbook_xsl
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
COMPTON_VERSION = "v${version}";
|
||||
buildInputs = [
|
||||
dbus libX11 libXext
|
||||
xorgproto
|
||||
libXinerama libdrm pcre libxml2 libxslt libconfig libGL
|
||||
libxcb xcbutilrenderutil xcbutilimage
|
||||
pixman libev
|
||||
libxdg_basedir
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ meson ninja ];
|
||||
NIX_CFLAGS_COMPILE = [ "-fno-strict-aliasing" ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yshui";
|
||||
repo = "compton";
|
||||
rev = COMPTON_VERSION;
|
||||
sha256 = "1qpy76kkhz8gfby842ry7lanvxkjxh4ckclkcjk4xi2wsmbhyp08";
|
||||
};
|
||||
mesonFlags = [
|
||||
"-Dbuild_docs=true"
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dbus libX11 libXext
|
||||
xorgproto
|
||||
libXinerama libdrm pcre libxml2 libxslt libconfig libGL
|
||||
# Removed:
|
||||
# libXcomposite libXdamage libXrender libXrandr
|
||||
preBuild = ''
|
||||
git() { echo "v${version}"; }
|
||||
export -f git
|
||||
'';
|
||||
|
||||
# New:
|
||||
libxcb xcbutilrenderutil xcbutilimage
|
||||
pixman libev
|
||||
libxdg_basedir
|
||||
];
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
preBuild = ''
|
||||
git() { echo "v${version}"; }
|
||||
export -f git
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/compton-trans \
|
||||
--prefix PATH : ${lib.makeBinPath [ xwininfo ]}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A fork of XCompMgr, a sample compositing manager for X servers";
|
||||
longDescription = ''
|
||||
A fork of XCompMgr, which is a sample compositing manager for X
|
||||
servers supporting the XFIXES, DAMAGE, RENDER, and COMPOSITE
|
||||
extensions. It enables basic eye-candy effects. This fork adds
|
||||
additional features, such as additional effects, and a fork at a
|
||||
well-defined and proper place.
|
||||
'';
|
||||
|
||||
NIX_CFLAGS_COMPILE = [ "-fno-strict-aliasing" ];
|
||||
|
||||
mesonFlags = [
|
||||
"-Dvsync_drm=true"
|
||||
"-Dnew_backends=true"
|
||||
"-Dbuild_docs=true"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/yshui/compton/;
|
||||
};
|
||||
license = licenses.mit;
|
||||
homepage = "https://github.com/yshui/compton";
|
||||
maintainers = with maintainers; [ ertes enzime twey ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
in {
|
||||
compton = common stableSource;
|
||||
compton-git = common gitSource;
|
||||
}
|
||||
|
|
|
@ -59,6 +59,7 @@ mapAliases ({
|
|||
clawsMail = claws-mail; # added 2016-04-29
|
||||
clutter_gtk = clutter-gtk; # added 2018-02-25
|
||||
conkerorWrapper = conkeror; # added 2015-01
|
||||
compton-git = compton; # added 2019-05-20
|
||||
conntrack_tools = conntrack-tools; # added 2018-05
|
||||
cool-old-term = cool-retro-term; # added 2015-01-31
|
||||
cupsBjnp = cups-bjnp; # added 2016-01-02
|
||||
|
|
|
@ -20953,7 +20953,7 @@ in
|
|||
|
||||
inherit (xorg) xcompmgr;
|
||||
|
||||
inherit (callPackage ../applications/window-managers/compton {}) compton compton-git;
|
||||
compton = callPackage ../applications/window-managers/compton {};
|
||||
|
||||
xdaliclock = callPackage ../tools/misc/xdaliclock {};
|
||||
|
||||
|
|
Loading…
Reference in a new issue