Commit c8221228 authored by Michael Daniels's avatar Michael Daniels
Browse files

yeahwm: drop

This package is broken and unmaintained upstream.

See also https://github.com/NixOS/nixpkgs/pull/414901#issuecomment-2968784854
parent df972beb
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -42,6 +42,8 @@

- The Pocket ID module ([`services.pocket-id`][#opt-services.pocket-id.enable]) and package (`pocket-id`) has been updated to 1.0.0. Some environment variables have been changed or removed, see the [migration guide](https://pocket-id.org/docs/setup/migrate-to-v1/).

- The `yeahwm` package and `services.xserver.windowManager.yeahwm` module were removed due to the package being broken and unmaintained upstream.

- The `services.siproxd` module has been removed as `siproxd` is unmaintained and broken with libosip 5.x.

- `renovate` was updated to v40. See the [upstream release notes](https://github.com/renovatebot/renovate/releases/tag/40.0.0) for breaking changes.
+0 −1
Original line number Diff line number Diff line
@@ -46,7 +46,6 @@ in
    ./wmderland.nix
    ./wmii.nix
    ./xmonad.nix
    ./yeahwm.nix
    ./qtile.nix
    ./none.nix
  ];
+0 −30
Original line number Diff line number Diff line
{
  config,
  lib,
  pkgs,
  ...
}:

with lib;

let
  cfg = config.services.xserver.windowManager.yeahwm;
in
{
  ###### interface
  options = {
    services.xserver.windowManager.yeahwm.enable = mkEnableOption "yeahwm";
  };

  ###### implementation
  config = mkIf cfg.enable {
    services.xserver.windowManager.session = singleton {
      name = "yeahwm";
      start = ''
        ${pkgs.yeahwm}/bin/yeahwm &
        waitPID=$!
      '';
    };
    environment.systemPackages = [ pkgs.yeahwm ];
  };
}
+0 −90
Original line number Diff line number Diff line
{
  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 = "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; [ ];
    inherit (libX11.meta) platforms;
  };
})
+1 −0
Original line number Diff line number Diff line
@@ -2125,6 +2125,7 @@ mapAliases {
  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
  yeahwm = throw "'yeahwm' has been removed, as it was broken and unmaintained upstream."; # Added 2025-06-12
  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