Unverified Commit 5a456c6e authored by Weijia Wang's avatar Weijia Wang Committed by GitHub
Browse files

dwm{,-status}, dmenu{,-wayland}, st (+ forks): move to `by-name`, refactor (#424634)

parents 126496d9 8764e26b
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@

stdenv.mkDerivation {
  pname = "dmenu-wayland";
  version = "unstable-2023-05-18";
  version = "0-unstable-2023-05-18";

  src = fetchFromGitHub {
    owner = "nyyManni";
@@ -63,12 +63,12 @@ stdenv.mkDerivation {
      --prefix PATH : $out/bin
  '';

  meta = with lib; {
    license = licenses.mit;
    platforms = platforms.linux;
  meta = {
    license = lib.licenses.mit;
    platforms = lib.platforms.linux;
    description = "Efficient dynamic menu for wayland (wlroots)";
    homepage = "https://github.com/nyyManni/dmenu-wayland";
    maintainers = with maintainers; [ rewine ];
    maintainers = with lib.maintainers; [ rewine ];
    mainProgram = "dmenu-wl";
  };
}
+16 −20
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchurl,
  fetchzip,
  fontconfig,
  libX11,
  libXinerama,
  libXft,
  pkg-config,
  zlib,
  writeText,
  conf ? null,
  patches ? null,
  # customization
  config,
  conf ? config.dmenu.conf or null,
  extraLibs ? config.dmenu.extraLibs or [ ],
  patches ? config.dmenu.patches or [ ],
  # update script dependencies
  gitUpdater,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "dmenu";
  version = "5.3";

  src = fetchurl {
    url = "https://dl.suckless.org/tools/dmenu-${version}.tar.gz";
    sha256 = "sha256-Go9T5v0tdJg57IcMXiez4U2lw+6sv8uUXRWeHVQzeV8=";
  src = fetchzip {
    url = "https://dl.suckless.org/tools/dmenu-${finalAttrs.version}.tar.gz";
    hash = "sha256-3lRLa3NIg+7bUSDnef/rVL3XwvWWHTIPQ8mcVaq/SVI=";
  };

  nativeBuildInputs = [ pkg-config ];
  buildInputs = [
    fontconfig
    libX11
    libXinerama
    zlib
    libXft
  ];
  ] ++ extraLibs;

  inherit patches;

@@ -50,25 +49,22 @@ stdenv.mkDerivation rec {
    makeFlagsArray+=(
      PREFIX="$out"
      CC="$CC"
      # default config.mk hardcodes dependent libraries and include paths
      INCS="`$PKG_CONFIG --cflags fontconfig x11 xft xinerama`"
      LIBS="`$PKG_CONFIG --libs   fontconfig x11 xft xinerama`"
    )
  '';

  passthru.updateScript = gitUpdater { url = "git://git.suckless.org/dmenu"; };

  meta = with lib; {
  meta = {
    description = "Generic, highly customizable, and efficient menu for the X Window System";
    homepage = "https://tools.suckless.org/dmenu";
    license = licenses.mit;
    maintainers = with maintainers; [
    license = lib.licenses.mit;
    maintainers = with lib.maintainers; [
      pSub
      globin
      qusic
      _0david0mp
    ];
    platforms = platforms.all;
    platforms = lib.platforms.all;
    mainProgram = "dmenu";
  };
}
})
+7 −7
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@
  libnotify,
  makeWrapper,
  pkg-config,
  xorg,
  libX11,
  enableAlsaUtils ? true,
  alsa-utils,
  coreutils,
@@ -31,14 +31,14 @@ let
    ];
in

rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
  pname = "dwm-status";
  version = "1.10.0";

  src = fetchFromGitHub {
    owner = "Gerschtli";
    repo = pname;
    tag = version;
    repo = "dwm-status";
    tag = finalAttrs.version;
    hash = "sha256-982JFYZroskKppAOZjBWOFt624FfRjhXpYN57s/cM50=";
  };

@@ -50,7 +50,7 @@ rustPlatform.buildRustPackage rec {
    dbus
    gdk-pixbuf
    libnotify
    xorg.libX11
    libX11
  ];

  useFetchCargoVendor = true;
@@ -65,7 +65,7 @@ rustPlatform.buildRustPackage rec {
  meta = {
    description = "Highly performant and configurable DWM status service";
    homepage = "https://github.com/Gerschtli/dwm-status";
    changelog = "https://github.com/Gerschtli/dwm-status/blob/${src.rev}/CHANGELOG.md";
    changelog = "https://github.com/Gerschtli/dwm-status/blob/${finalAttrs.src.rev}/CHANGELOG.md";
    license = lib.licenses.mit;
    maintainers = with lib.maintainers; [
      gepbird
@@ -74,4 +74,4 @@ rustPlatform.buildRustPackage rec {
    mainProgram = "dwm-status";
    platforms = lib.platforms.linux;
  };
}
})
+24 −21
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchurl,
  fetchzip,
  libX11,
  libXinerama,
  libXft,
  writeText,
  pkg-config,
  patches ? [ ],
  conf ? null,
  # customization
  config,
  conf ? config.dwm.conf or null,
  patches ? config.dwm.patches or [ ],
  extraLibs ? config.dwm.extraLibs or [ ],
  # update script dependencies
  gitUpdater,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "dwm";
  version = "6.5";

  src = fetchurl {
    url = "https://dl.suckless.org/dwm/${pname}-${version}.tar.gz";
    sha256 = "sha256-Ideev6ny+5MUGDbCZmy4H0eExp1k5/GyNS+blwuglyk=";
  src = fetchzip {
    url = "https://dl.suckless.org/dwm/dwm-${finalAttrs.version}.tar.gz";
    hash = "sha256-Cc4B8evvuRxOjbeOhg3oAs3Nxi/msxWg950/eiq536w=";
  };

  nativeBuildInputs = lib.optional stdenv.hostPlatform.isStatic pkg-config;
@@ -28,14 +31,16 @@ stdenv.mkDerivation rec {
    libX11
    libXinerama
    libXft
  ];
  ] ++ extraLibs;

  prePatch = ''
    sed -i "s@/usr/local@$out@" config.mk
  '';

  preBuild = lib.optional stdenv.hostPlatform.isStatic ''
    makeFlagsArray+=(LDFLAGS="$(${stdenv.cc.targetPrefix}pkg-config --static --libs x11 xinerama xft)")
  preBuild = ''
    makeFlagsArray+=(
      "PREFIX=$out"
      "CC=$CC"
      ${lib.optionalString stdenv.hostPlatform.isStatic ''
        LDFLAGS="$(${stdenv.cc.targetPrefix}pkg-config --static --libs x11 xinerama xft)"
      ''}
    )
  '';

  # Allow users set their own list of patches
@@ -49,13 +54,11 @@ stdenv.mkDerivation rec {
    in
    lib.optionalString (conf != null) "cp ${configFile} config.def.h";

  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];

  passthru.updateScript = gitUpdater {
    url = "git://git.suckless.org/dwm";
  };

  meta = with lib; {
  meta = {
    homepage = "https://dwm.suckless.org/";
    description = "Extremely fast, small, and dynamic window manager for X";
    longDescription = ''
@@ -67,9 +70,9 @@ stdenv.mkDerivation rec {
      multiple tags. Selecting certain tags displays all windows with these
      tags.
    '';
    license = licenses.mit;
    maintainers = with maintainers; [ neonfuz ];
    platforms = platforms.all;
    license = lib.licenses.mit;
    maintainers = with lib.maintainers; [ neonfuz ];
    platforms = lib.platforms.all;
    mainProgram = "dwm";
  };
}
})
+53 −0
Original line number Diff line number Diff line
@@ -8,17 +8,18 @@
  libXft,
  ncurses,
  pkg-config,
  nix-update-script,
}:

stdenv.mkDerivation {
  pname = "mcaimi-st";
  version = "0.pre+unstable=2021-08-30";
  version = "0-unstable-2025-03-12";

  src = fetchFromGitHub {
    owner = "mcaimi";
    repo = "st";
    rev = "1a8cad03692ee6d32c03a136cdc76bdb169e15d8";
    hash = "sha256-xyVEvD8s1J9Wj9NB4Gg+0ldvde7M8IVpzCOTttC1IY0=";
    rev = "f1ae5cdafadceaf622e1c0ff56da04803bf658b3";
    hash = "sha256-rGru0LqbuJQ4QOts6xYDztAST0K5HCys2gUPZg2w4SE=";
  };

  nativeBuildInputs = [
@@ -32,20 +33,21 @@ stdenv.mkDerivation {
    ncurses
  ];

  installPhase = ''
    runHook preInstall

    TERMINFO=$out/share/terminfo make install PREFIX=$out
  installFlags = [
    "TERMINFO=$(out)/share/terminfo"
    "PREFIX=$(out)"
  ];

    runHook postInstall
  '';
  passthru.updateScript = nix-update-script {
    extraArgs = [ "--version=branch" ];
  };

  meta = with lib; {
    homepage = "https://github.com/gnotclub/xst";
  meta = {
    homepage = "https://github.com/mcaimi/st";
    description = "Suckless Terminal fork";
    mainProgram = "st";
    license = licenses.mit;
    maintainers = with maintainers; [ ];
    platforms = platforms.linux;
    license = lib.licenses.mit;
    maintainers = with lib.maintainers; [ ];
    platforms = lib.platforms.linux;
  };
}
Loading