yabar: drop (#415550)

Aleksana 818ef4d7 dd80d0b7

Changed files
+5 -383
nixos
pkgs
applications
window-managers
top-level
-1
nixos/modules/module-list.nix
···
./programs/xonsh.nix
./programs/xss-lock.nix
./programs/xwayland.nix
-
./programs/yabar.nix
./programs/yazi.nix
./programs/ydotool.nix
./programs/yubikey-touch-detector.nix
-187
nixos/modules/programs/yabar.nix
···
-
{
-
lib,
-
pkgs,
-
config,
-
...
-
}:
-
-
let
-
cfg = config.programs.yabar;
-
-
mapExtra =
-
v:
-
lib.concatStringsSep "\n" (
-
lib.mapAttrsToList (
-
key: val:
-
"${key} = ${if (builtins.isString val) then "\"${val}\"" else "${builtins.toString val}"};"
-
) v
-
);
-
-
listKeys = r: builtins.concatStringsSep "," (builtins.map (n: "\"${n}\"") (builtins.attrNames r));
-
-
configFile =
-
let
-
bars = lib.mapAttrsToList (name: cfg: ''
-
${name}: {
-
font: "${cfg.font}";
-
position: "${cfg.position}";
-
-
${mapExtra cfg.extra}
-
-
block-list: [${listKeys cfg.indicators}]
-
-
${builtins.concatStringsSep "\n" (
-
lib.mapAttrsToList (name: cfg: ''
-
${name}: {
-
exec: "${cfg.exec}";
-
align: "${cfg.align}";
-
${mapExtra cfg.extra}
-
};
-
'') cfg.indicators
-
)}
-
};
-
'') cfg.bars;
-
in
-
pkgs.writeText "yabar.conf" ''
-
bar-list = [${listKeys cfg.bars}];
-
${builtins.concatStringsSep "\n" bars}
-
'';
-
in
-
{
-
options.programs.yabar = {
-
enable = lib.mkEnableOption "yabar, a status bar for X window managers";
-
-
package = lib.mkOption {
-
default = pkgs.yabar-unstable;
-
defaultText = lib.literalExpression "pkgs.yabar-unstable";
-
example = lib.literalExpression "pkgs.yabar";
-
type = lib.types.package;
-
-
# `yabar-stable` segfaults under certain conditions.
-
# remember to update yabar.passthru.tests if nixos switches back to it!
-
apply =
-
x:
-
if x == pkgs.yabar-unstable then
-
x
-
else
-
lib.flip lib.warn x ''
-
It's not recommended to use `yabar' with `programs.yabar', the (old) stable release
-
tends to segfault under certain circumstances:
-
-
* https://github.com/geommer/yabar/issues/86
-
* https://github.com/geommer/yabar/issues/68
-
* https://github.com/geommer/yabar/issues/143
-
-
Most of them don't occur on master anymore, until a new release is published, it's recommended
-
to use `yabar-unstable'.
-
'';
-
-
description = ''
-
The package which contains the `yabar` binary.
-
-
Nixpkgs offers both a stable (`yabar`) and unstable (`yabar-unstable`) version of Yabar.
-
'';
-
};
-
-
bars = lib.mkOption {
-
default = { };
-
type = lib.types.attrsOf (
-
lib.types.submodule {
-
options = {
-
font = lib.mkOption {
-
default = "sans bold 9";
-
example = "Droid Sans, FontAwesome Bold 9";
-
type = lib.types.str;
-
-
description = ''
-
The font that will be used to draw the status bar.
-
'';
-
};
-
-
position = lib.mkOption {
-
default = "top";
-
example = "bottom";
-
type = lib.types.enum [
-
"top"
-
"bottom"
-
];
-
-
description = ''
-
The position where the bar will be rendered.
-
'';
-
};
-
-
extra = lib.mkOption {
-
default = { };
-
type = lib.types.attrsOf lib.types.str;
-
-
description = ''
-
An attribute set which contains further attributes of a bar.
-
'';
-
};
-
-
indicators = lib.mkOption {
-
default = { };
-
type = lib.types.attrsOf (
-
lib.types.submodule {
-
options.exec = lib.mkOption {
-
example = "YABAR_DATE";
-
type = lib.types.str;
-
description = ''
-
The type of the indicator to be executed.
-
'';
-
};
-
-
options.align = lib.mkOption {
-
default = "left";
-
example = "right";
-
type = lib.types.enum [
-
"left"
-
"center"
-
"right"
-
];
-
-
description = ''
-
Whether to align the indicator at the left or right of the bar.
-
'';
-
};
-
-
options.extra = lib.mkOption {
-
default = { };
-
type = lib.types.attrsOf (lib.types.either lib.types.str lib.types.int);
-
-
description = ''
-
An attribute set which contains further attributes of a indicator.
-
'';
-
};
-
}
-
);
-
-
description = ''
-
Indicators that should be rendered by yabar.
-
'';
-
};
-
};
-
}
-
);
-
-
description = ''
-
List of bars that should be rendered by yabar.
-
'';
-
};
-
};
-
-
config = lib.mkIf cfg.enable {
-
systemd.user.services.yabar = {
-
description = "yabar service";
-
wantedBy = [ "graphical-session.target" ];
-
partOf = [ "graphical-session.target" ];
-
-
script = ''
-
${cfg.package}/bin/yabar -c ${configFile}
-
'';
-
-
serviceConfig.Restart = "always";
-
};
-
};
-
}
+3
nixos/modules/rename.nix
···
"way-cooler is abandoned by its author: "
+ "https://way-cooler.org/blog/2020/01/09/way-cooler-post-mortem.html"
))
+
(mkRemovedOptionModule [ "programs" "yabar" ]
+
"programs.yabar has been removed from NixOS. This is because the yabar repository has been archived upstream."
+
)
(mkRemovedOptionModule [ "security" "hideProcessInformation" ] ''
The hidepid module was removed, since the underlying machinery
is broken when using cgroups-v2.
-1
nixos/tests/all-tests.nix
···
xss-lock = runTest ./xss-lock.nix;
xterm = runTest ./xterm.nix;
xxh = runTest ./xxh.nix;
-
yabar = runTest ./yabar.nix;
yarr = runTest ./yarr.nix;
ydotool = handleTest ./ydotool.nix { };
yggdrasil = runTest ./yggdrasil.nix;
-30
nixos/tests/yabar.nix
···
-
{
-
name = "yabar";
-
meta.maintainers = [ ];
-
-
nodes.machine = {
-
imports = [
-
./common/x11.nix
-
./common/user-account.nix
-
];
-
-
test-support.displayManager.auto.user = "bob";
-
-
programs.yabar.enable = true;
-
programs.yabar.bars = {
-
top.indicators.date.exec = "YABAR_DATE";
-
};
-
};
-
-
testScript = ''
-
machine.start()
-
machine.wait_for_x()
-
-
# confirm proper startup
-
machine.wait_for_unit("yabar.service", "bob")
-
machine.sleep(10)
-
machine.wait_for_unit("yabar.service", "bob")
-
-
machine.screenshot("top_bar")
-
'';
-
}
-93
pkgs/applications/window-managers/yabar/build.nix
···
-
{
-
stdenv,
-
fetchFromGitHub,
-
cairo,
-
gdk-pixbuf,
-
libconfig,
-
pango,
-
pkg-config,
-
xcbutilwm,
-
alsa-lib,
-
wirelesstools,
-
asciidoc,
-
libxslt,
-
makeWrapper,
-
docbook_xsl,
-
configFile ? null,
-
lib,
-
rev,
-
sha256,
-
version,
-
patches ? [ ],
-
}:
-
-
stdenv.mkDerivation {
-
pname = "yabar";
-
inherit version;
-
-
src = fetchFromGitHub {
-
inherit rev sha256;
-
-
owner = "geommer";
-
repo = "yabar";
-
};
-
-
inherit patches;
-
-
hardeningDisable = [ "format" ];
-
-
strictDeps = true;
-
depsBuildBuild = [
-
pkg-config
-
];
-
nativeBuildInputs = [
-
pkg-config
-
asciidoc
-
docbook_xsl
-
libxslt
-
makeWrapper
-
libconfig
-
pango
-
];
-
buildInputs = [
-
cairo
-
gdk-pixbuf
-
libconfig
-
pango
-
xcbutilwm
-
alsa-lib
-
wirelesstools
-
];
-
-
postPatch = ''
-
substituteInPlace ./Makefile \
-
--replace "\$(shell git describe)" "${version}" \
-
--replace "a2x" "a2x --no-xmllint"
-
'';
-
-
makeFlags = [
-
"DESTDIR=$(out)"
-
"PREFIX=/"
-
];
-
-
postInstall = ''
-
mkdir -p $out/share/yabar/examples
-
cp -v examples/*.config $out/share/yabar/examples
-
-
${lib.optionalString (configFile != null) ''
-
wrapProgram "$out/bin/yabar" \
-
--add-flags "-c ${configFile}"
-
''}
-
'';
-
-
#passthru.tests = { inherit (nixosTests) yabar; }; # nixos currently uses yabar-unstable
-
-
meta = with lib; {
-
description = "Modern and lightweight status bar for X window managers";
-
homepage = "https://github.com/geommer/yabar";
-
license = licenses.mit;
-
platforms = platforms.linux;
-
maintainers = [ ];
-
mainProgram = "yabar";
-
};
-
}
-23
pkgs/applications/window-managers/yabar/default.nix
···
-
{
-
callPackage,
-
attrs ? { },
-
fetchpatch,
-
}:
-
-
let
-
overrides = rec {
-
version = "0.4.0";
-
-
rev = version;
-
sha256 = "1nw9dar1caqln5fr0dqk7dg6naazbpfwwzxwlkxz42shsc3w30a6";
-
-
patches = [
-
(fetchpatch {
-
url = "https://github.com/geommer/yabar/commit/9779a5e04bd6e8cdc1c9fcf5d7ac31416af85a53.patch";
-
sha256 = "1szhr3k1kq6ixgnp74wnzgfvgxm6r4zpc3ny2x2wzy6lh2czc07s";
-
})
-
];
-
-
} // attrs;
-
in
-
callPackage ./build.nix overrides
-44
pkgs/applications/window-managers/yabar/unstable.nix
···
-
{
-
fetchpatch,
-
playerctl,
-
libxkbcommon,
-
callPackage,
-
nixosTests,
-
attrs ? { },
-
}:
-
-
let
-
pkg = callPackage ./build.nix (
-
{
-
version = "unstable-2018-01-18";
-
-
rev = "c516e8e78d39dd2b339acadc4c175347171150bb";
-
sha256 = "1p9lx78cayyn7qc2q66id2xfs76jyddnqv2x1ypsvixaxwcvqgdb";
-
}
-
// attrs
-
);
-
in
-
pkg.overrideAttrs (o: {
-
buildInputs = o.buildInputs ++ [
-
playerctl
-
libxkbcommon
-
];
-
-
makeFlags = o.makeFlags ++ [
-
"PLAYERCTL=1"
-
];
-
-
patches = (o.patches or [ ]) ++ [
-
(fetchpatch {
-
url = "https://github.com/geommer/yabar/commit/008dc1420ff684cf12ce2ef3ac9d642e054e39f5.patch";
-
sha256 = "1q7nd66ai6nr2m6iqxn55gvbr4r5gjc00c8wyjc3riv31qcbqbhv";
-
})
-
];
-
-
passthru = (o.passthru or { }) // {
-
tests = (o.passthru.tests or { }) // {
-
inherit (nixosTests) yabar;
-
};
-
};
-
-
})
+2
pkgs/top-level/aliases.nix
···
yandex-browser-beta = throw "'yandex-browser-beta' has been removed, as it was broken and unmaintained"; # Added 2025-04-17
yandex-browser-corporate = throw "'yandex-browser-corporate' has been removed, as it was broken and unmaintained"; # Added 2025-04-17
youtrack_2022_3 = throw "'youtrack_2022_3' has been removed as it was deprecated. Please update to the 'youtrack' package."; # Added 2024-10-17
+
yabar = throw "'yabar' has been removed as the upstream project was archived"; # Added 2025-06-10
+
yabar-unstable = yabar; # Added 2025-06-10
yrd = throw "'yrd' has been removed, as it was broken and unmaintained"; # added 2024-05-27
yubikey-manager-qt = throw "'yubikey-manager-qt' has been removed due to being archived upstream. Consider using 'yubioath-flutter' instead."; # Added 2025-06-07
yubikey-personalization-gui = throw "'yubikey-personalization-gui' has been removed due to being archived upstream. Consider using 'yubioath-flutter' instead."; # Added 2025-06-07
-4
pkgs/top-level/all-packages.nix
···
xygrib = libsForQt5.callPackage ../applications/misc/xygrib { };
-
yabar = callPackage ../applications/window-managers/yabar { };
-
-
yabar-unstable = callPackage ../applications/window-managers/yabar/unstable.nix { };
-
ydiff = with python3.pkgs; toPythonApplication ydiff;
yokadi = python3Packages.callPackage ../applications/misc/yokadi { };