From e0f994357c1bf848d4fb59b3313adcee4ad3e1ec Mon Sep 17 00:00:00 2001 From: Dusk Banks Date: Tue, 2 Jul 2024 16:02:10 -0700 Subject: [PATCH 1/7] maintainers: update bb010g --- maintainers/maintainer-list.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index b9fe6d429ba9..5ea83dcc41aa 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2283,7 +2283,7 @@ matrix = "@bb010g:matrix.org"; github = "bb010g"; githubId = 340132; - name = "Brayden Banks"; + name = "Dusk Banks"; }; bb2020 = { github = "bb2020"; From 34b1c1f92f7ac6928b301a2b039d5b50332fe2a7 Mon Sep 17 00:00:00 2001 From: Dusk Banks Date: Thu, 4 Jul 2024 00:13:49 -0700 Subject: [PATCH 2/7] treewide: migrate bb010g's packages to by-name --- .../be/betterdiscordctl/package.nix} | 0 .../git-my/default.nix => by-name/gi/git-my/package.nix} | 0 .../libraries/java => by-name/sw}/swt/awt-libs.patch | 0 .../libraries/java => by-name/sw}/swt/gtk-libs.patch | 0 .../java/swt/default.nix => by-name/sw/swt/package.nix} | 0 pkgs/top-level/all-packages.nix | 7 +------ 6 files changed, 1 insertion(+), 6 deletions(-) rename pkgs/{tools/misc/betterdiscordctl/default.nix => by-name/be/betterdiscordctl/package.nix} (100%) rename pkgs/{applications/version-management/git-my/default.nix => by-name/gi/git-my/package.nix} (100%) rename pkgs/{development/libraries/java => by-name/sw}/swt/awt-libs.patch (100%) rename pkgs/{development/libraries/java => by-name/sw}/swt/gtk-libs.patch (100%) rename pkgs/{development/libraries/java/swt/default.nix => by-name/sw/swt/package.nix} (100%) diff --git a/pkgs/tools/misc/betterdiscordctl/default.nix b/pkgs/by-name/be/betterdiscordctl/package.nix similarity index 100% rename from pkgs/tools/misc/betterdiscordctl/default.nix rename to pkgs/by-name/be/betterdiscordctl/package.nix diff --git a/pkgs/applications/version-management/git-my/default.nix b/pkgs/by-name/gi/git-my/package.nix similarity index 100% rename from pkgs/applications/version-management/git-my/default.nix rename to pkgs/by-name/gi/git-my/package.nix diff --git a/pkgs/development/libraries/java/swt/awt-libs.patch b/pkgs/by-name/sw/swt/awt-libs.patch similarity index 100% rename from pkgs/development/libraries/java/swt/awt-libs.patch rename to pkgs/by-name/sw/swt/awt-libs.patch diff --git a/pkgs/development/libraries/java/swt/gtk-libs.patch b/pkgs/by-name/sw/swt/gtk-libs.patch similarity index 100% rename from pkgs/development/libraries/java/swt/gtk-libs.patch rename to pkgs/by-name/sw/swt/gtk-libs.patch diff --git a/pkgs/development/libraries/java/swt/default.nix b/pkgs/by-name/sw/swt/package.nix similarity index 100% rename from pkgs/development/libraries/java/swt/default.nix rename to pkgs/by-name/sw/swt/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 415053c03d0a..94a24380f6b7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2349,8 +2349,6 @@ with pkgs; git-mit = callPackage ../applications/version-management/git-mit { }; - git-my = callPackage ../applications/version-management/git-my { }; - git-machete = python3Packages.callPackage ../applications/version-management/git-machete { }; git-nomad = callPackage ../applications/version-management/git-nomad { }; @@ -3332,8 +3330,6 @@ with pkgs; berglas = callPackage ../tools/admin/berglas { }; - betterdiscordctl = callPackage ../tools/misc/betterdiscordctl { }; - betterdiscord-installer = callPackage ../tools/misc/betterdiscord-installer { }; binocle = callPackage ../applications/misc/binocle { @@ -24980,8 +24976,7 @@ with pkgs; smack = callPackage ../development/libraries/java/smack { }; - swt = callPackage ../development/libraries/java/swt { }; - swt_jdk8 = callPackage ../development/libraries/java/swt { + swt_jdk8 = callPackage ../by-name/sw/swt/package.nix { jdk = jdk8; }; From 52da78e1d791c330ca1d81f048df3f30d4770dcf Mon Sep 17 00:00:00 2001 From: Dusk Banks Date: Thu, 4 Jul 2024 02:31:43 -0700 Subject: [PATCH 3/7] betterdiscordctl: fix file permissions --- pkgs/by-name/be/betterdiscordctl/package.nix | 31 ++++++++++++-------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/be/betterdiscordctl/package.nix b/pkgs/by-name/be/betterdiscordctl/package.nix index aee7cd442535..3dd0d3066745 100644 --- a/pkgs/by-name/be/betterdiscordctl/package.nix +++ b/pkgs/by-name/be/betterdiscordctl/package.nix @@ -1,13 +1,17 @@ -{ lib, stdenvNoCC, fetchFromGitHub }: +{ + fetchFromGitHub, + lib, + stdenvNoCC, +}: -stdenvNoCC.mkDerivation rec { +stdenvNoCC.mkDerivation (finalAttrs: { pname = "betterdiscordctl"; version = "2.0.1"; src = fetchFromGitHub { owner = "bb010g"; repo = "betterdiscordctl"; - rev = "v${version}"; + rev = "v${finalAttrs.version}"; sha256 = "0p321rfcihz2779sdd6qfgpxgk5yd53d33vq5pvb50dbdgxww0bc"; }; @@ -19,9 +23,8 @@ stdenvNoCC.mkDerivation rec { installPhase = '' runHook preInstall - mkdir -p "$out/bin" "$out/share/doc/betterdiscordctl" - install -Dm744 betterdiscordctl $out/bin/betterdiscordctl - install -Dm644 README.md $out/share/doc/betterdiscordctl/README.md + install -Dm 755 -t "$out/bin" -- betterdiscordctl + install -Dm 644 -t "$out/share/doc/betterdiscordctl" -- README.md runHook postInstall ''; @@ -29,15 +32,19 @@ stdenvNoCC.mkDerivation rec { doInstallCheck = true; installCheckPhase = '' - $out/bin/betterdiscordctl --version + runHook preInstallCheck + + "$out/bin/betterdiscordctl" --version + + runHook postInstallCheck ''; - meta = with lib; { + meta = { homepage = "https://github.com/bb010g/betterdiscordctl"; description = "Utility for managing BetterDiscord on Linux"; - license = licenses.mit; + license = lib.licenses.mit; mainProgram = "betterdiscordctl"; - maintainers = with maintainers; [ bb010g ]; - platforms = platforms.linux; + maintainers = [ lib.maintainers.bb010g ]; + platforms = lib.platforms.linux; }; -} +}) From e7999c7acccc01476c45b8970e997509d285a348 Mon Sep 17 00:00:00 2001 From: Dusk Banks Date: Thu, 4 Jul 2024 02:32:11 -0700 Subject: [PATCH 4/7] git-my: patch shebang --- pkgs/by-name/gi/git-my/package.nix | 33 +++++++++++++++++++----------- 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/gi/git-my/package.nix b/pkgs/by-name/gi/git-my/package.nix index 2683af402287..1fbaffa0a42d 100644 --- a/pkgs/by-name/gi/git-my/package.nix +++ b/pkgs/by-name/gi/git-my/package.nix @@ -1,30 +1,39 @@ -{ lib, stdenv, fetchFromGitHub }: +{ + bash, + fetchFromGitHub, + lib, + stdenv, +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "git-my"; version = "1.1.2"; src = fetchFromGitHub { owner = "davidosomething"; repo = "git-my"; - rev = version; + rev = finalAttrs.version; sha256 = "0jji5zw25jygj7g4f6f3k0p0s9g37r8iad8pa0s67cxbq2v4sc0v"; }; + buildInputs = [ bash ]; + dontBuild = true; installPhase = '' - install -Dm755 -t "$out"/bin ./git-my + runHook preInstall + + install -Dm 755 -t "$out/bin" -- git-my + + runHook postInstall ''; - meta = with lib; { - description = - "List remote branches if they're merged and/or available locally"; + meta = { + description = "List remote branches if they're merged and/or available locally"; homepage = "https://github.com/davidosomething/git-my"; - license = licenses.free; - maintainers = with maintainers; [ bb010g ]; - platforms = platforms.all; + license = lib.licenses.free; + maintainers = [ lib.maintainers.bb010g ]; + platforms = lib.platforms.all; mainProgram = "git-my"; }; -} - +}) From d20703baf6f71b6d9d5673dc81e0c714e277e5d5 Mon Sep 17 00:00:00 2001 From: Dusk Banks Date: Thu, 4 Jul 2024 02:33:13 -0700 Subject: [PATCH 5/7] swt: clean up Should be easier to customize now. --- pkgs/by-name/sw/swt/package.nix | 185 ++++++++++++++++---------------- 1 file changed, 93 insertions(+), 92 deletions(-) diff --git a/pkgs/by-name/sw/swt/package.nix b/pkgs/by-name/sw/swt/package.nix index ef7994fea218..887fbdd6b212 100644 --- a/pkgs/by-name/sw/swt/package.nix +++ b/pkgs/by-name/sw/swt/package.nix @@ -1,60 +1,60 @@ -{ lib -, stdenv -, stripJavaArchivesHook -, fetchzip -, pkg-config -, atk -, glib -, gtk2 -, jdk -, libGL -, libGLU -, libXt -, libXtst +{ + atk, + fetchzip, + glib, + gtk2, + jdk, + lib, + libGL, + libGLU, + libXt, + libXtst, + pkg-config, + stdenv, + stripJavaArchivesHook, }: -let - platformMap = { - x86_64-linux = - { platform = "gtk-linux-x86_64"; - sha256 = "17frac2nsx22hfa72264as31rn35hfh9gfgy0n6wvc3knl5d2716"; }; - i686-linux = - { platform = "gtk-linux-x86"; - sha256 = "13ca17rga9yvdshqvh0sfzarmdcl4wv4pid0ls7v35v4844zbc8b"; }; - x86_64-darwin = - { platform = "cocoa-macosx-x86_64"; - sha256 = "0wjyxlw7i9zd2m8syd6k1q85fj8pzhxlfsrl8fpgsj37p698bd0a"; }; - }; - - metadata = assert platformMap ? ${stdenv.hostPlatform.system}; - platformMap.${stdenv.hostPlatform.system}; -in stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "swt"; version = "4.5"; - fullVersion = "${version}-201506032000"; + fullVersion = "${finalAttrs.version}-201506032000"; hardeningDisable = [ "format" ]; + passthru.srcMetadataByPlatform = { + x86_64-linux.platform = "gtk-linux-x86_64"; + x86_64-linux.sha256 = "17frac2nsx22hfa72264as31rn35hfh9gfgy0n6wvc3knl5d2716"; + i686-linux.platform = "gtk-linux-x86"; + i686-linux.sha256 = "13ca17rga9yvdshqvh0sfzarmdcl4wv4pid0ls7v35v4844zbc8b"; + x86_64-darwin.platform = "cocoa-macosx-x86_64"; + x86_64-darwin.sha256 = "0wjyxlw7i9zd2m8syd6k1q85fj8pzhxlfsrl8fpgsj37p698bd0a"; + }; + passthru.srcMetadata = + finalAttrs.passthru.srcMetadataByPlatform.${stdenv.hostPlatform.system} or null; # Alas, the Eclipse Project apparently doesn't produce source-only # releases of SWT. So we just grab a binary release and extract # "src.zip" from that. - src = fetchzip { - url = "https://archive.eclipse.org/eclipse/downloads/drops4/" + - "R-${fullVersion}/${pname}-${version}-${metadata.platform}.zip"; - inherit (metadata) sha256; - stripRoot = false; - postFetch = '' - mkdir "$unpackDir" - cd "$unpackDir" + src = + let + inherit (finalAttrs.passthru) srcMetadata; + in + assert srcMetadata != null; + fetchzip { + url = "https://archive.eclipse.org/eclipse/downloads/drops4/R-${finalAttrs.fullVersion}/swt-${finalAttrs.version}-${srcMetadata.platform}.zip"; + inherit (srcMetadata) sha256; + stripRoot = false; + postFetch = '' + mkdir "$unpackDir" + cd "$unpackDir" - renamed="$TMPDIR/src.zip" - mv "$out/src.zip" "$renamed" - unpackFile "$renamed" - rm -r "$out" + renamed="$TMPDIR/src.zip" + mv -- "$out/src.zip" "$renamed" + unpackFile "$renamed" + rm -r -- "$out" - mv "$unpackDir" "$out" - ''; - }; + mv -- "$unpackDir" "$out" + ''; + }; nativeBuildInputs = [ stripJavaArchivesHook @@ -67,49 +67,51 @@ in stdenv.mkDerivation rec { libGL libGLU libXtst - ] ++ lib.optionals (lib.hasPrefix "8u" jdk.version) [ - libXt - ]; + ] ++ lib.optionals (lib.hasPrefix "8u" jdk.version) [ libXt ]; - patches = [ ./awt-libs.patch ./gtk-libs.patch ]; + patches = [ + ./awt-libs.patch + ./gtk-libs.patch + ]; prePatch = '' # clear whitespace from makefiles (since we match on EOL later) sed -i 's/ \+$//' ./*.mak ''; - postPatch = let makefile-sed = builtins.toFile "swt-makefile.sed" ('' - # fix pkg-config invocations in CFLAGS/LIBS pairs. - # - # change: - # FOOCFLAGS = `pkg-config --cflags `foo bar` - # FOOLIBS = `pkg-config --libs-only-L foo` -lbaz - # into: - # FOOCFLAGS = `pkg-config --cflags foo bar` - # FOOLIBS = `pkg-config --libs foo bar` - # - # the latter works more consistently. - /^[A-Z0-9_]\+CFLAGS = `pkg-config --cflags [^`]\+`$/ { - N - s'' + - "/" + '' - ^\([A-Z0-9_]\+\)CFLAGS = `pkg-config --cflags \(.\+\)`\ - \1LIBS = `pkg-config --libs-only-L .\+$'' + - "/" + '' - \1CFLAGS = `pkg-config --cflags \2`\ - \1LIBS = `pkg-config --libs \2`'' + - "/\n" + '' - } - # fix WebKit libs not being there - s/\$(WEBKIT_LIB) \$(WEBKIT_OBJECTS)$/\0 `pkg-config --libs glib-2.0`/g - ''); in '' - declare -a makefiles=(./*.mak) - sed -i -f ${makefile-sed} "''${makefiles[@]}" - # assign Makefile variables eagerly & change backticks to `$(shell …)` - sed -i -e 's/ = `\([^`]\+\)`/ := $(shell \1)/' \ - -e 's/`\([^`]\+\)`/$(shell \1)/' \ - "''${makefiles[@]}" - ''; + postPatch = + let + makefile-sed = builtins.toFile "swt-makefile.sed" '' + # fix pkg-config invocations in CFLAGS/LIBS pairs. + # + # change: + # FOOCFLAGS = `pkg-config --cflags `foo bar` + # FOOLIBS = `pkg-config --libs-only-L foo` -lbaz + # into: + # FOOCFLAGS = `pkg-config --cflags foo bar` + # FOOLIBS = `pkg-config --libs foo bar` + # + # the latter works more consistently. + /^[A-Z0-9_]\+CFLAGS = `pkg-config --cflags [^`]\+`$/ { + N + s/${'' + ^\([A-Z0-9_]\+\)CFLAGS = `pkg-config --cflags \(.\+\)`\ + \1LIBS = `pkg-config --libs-only-L .\+$''}/${'' + \1CFLAGS = `pkg-config --cflags \2`\ + \1LIBS = `pkg-config --libs \2`''}/ + } + # fix WebKit libs not being there + s/\$(WEBKIT_LIB) \$(WEBKIT_OBJECTS)$/\0 `pkg-config --libs glib-2.0`/g + ''; + in + '' + declare -a makefiles=(./*.mak) + sed -i -f ${makefile-sed} "''${makefiles[@]}" + # assign Makefile variables eagerly & change backticks to `$(shell …)` + sed -i -e 's/ = `\([^`]\+\)`/ := $(shell \1)/' \ + -e 's/`\([^`]\+\)`/$(shell \1)/' \ + "''${makefiles[@]}" + ''; buildPhase = '' runHook preBuild @@ -127,28 +129,27 @@ in stdenv.mkDerivation rec { installPhase = '' runHook preInstall - if [ -n "$prefix" ]; then - mkdir -p "$prefix" + if [[ -n "$prefix" ]]; then + install -d -- "$prefix" fi - mkdir -p "$out/lib" - cp -t "$out/lib" ./*.so + install -Dm 644 -t "$out/lib" -- *.so - mkdir -p "$out/jars" - cp -t out/ version.txt + install -d -- "$out/jars" + install -m 644 -t out -- version.txt (cd out && jar -c *) > "$out/jars/swt.jar" runHook postInstall ''; - meta = with lib; { + meta = { homepage = "https://www.eclipse.org/swt/"; description = '' A widget toolkit for Java to access the user-interface facilities of the operating systems on which it is implemented. ''; - license = licenses.epl10; - maintainers = with maintainers; [ bb010g ]; - platforms = platforms.linux; + license = lib.licenses.epl10; + maintainers = [ lib.maintainers.bb010g ]; + platforms = lib.platforms.linux; }; -} +}) From 62f276d486ccf07dd53471fcb861bcd00d7c3062 Mon Sep 17 00:00:00 2001 From: Dusk Banks Date: Thu, 4 Jul 2024 02:36:27 -0700 Subject: [PATCH 6/7] treewide: remove bb010g from maintainers --- pkgs/by-name/be/betterdiscordctl/package.nix | 2 +- pkgs/by-name/gi/git-my/package.nix | 2 +- pkgs/by-name/sw/swt/package.nix | 2 +- pkgs/tools/misc/mandoc/default.nix | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/be/betterdiscordctl/package.nix b/pkgs/by-name/be/betterdiscordctl/package.nix index 3dd0d3066745..4c1eae439215 100644 --- a/pkgs/by-name/be/betterdiscordctl/package.nix +++ b/pkgs/by-name/be/betterdiscordctl/package.nix @@ -44,7 +44,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { description = "Utility for managing BetterDiscord on Linux"; license = lib.licenses.mit; mainProgram = "betterdiscordctl"; - maintainers = [ lib.maintainers.bb010g ]; + maintainers = [ ]; platforms = lib.platforms.linux; }; }) diff --git a/pkgs/by-name/gi/git-my/package.nix b/pkgs/by-name/gi/git-my/package.nix index 1fbaffa0a42d..9af49a536b4f 100644 --- a/pkgs/by-name/gi/git-my/package.nix +++ b/pkgs/by-name/gi/git-my/package.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: { description = "List remote branches if they're merged and/or available locally"; homepage = "https://github.com/davidosomething/git-my"; license = lib.licenses.free; - maintainers = [ lib.maintainers.bb010g ]; + maintainers = [ ]; platforms = lib.platforms.all; mainProgram = "git-my"; }; diff --git a/pkgs/by-name/sw/swt/package.nix b/pkgs/by-name/sw/swt/package.nix index 887fbdd6b212..c67424f4fc06 100644 --- a/pkgs/by-name/sw/swt/package.nix +++ b/pkgs/by-name/sw/swt/package.nix @@ -149,7 +149,7 @@ stdenv.mkDerivation (finalAttrs: { the operating systems on which it is implemented. ''; license = lib.licenses.epl10; - maintainers = [ lib.maintainers.bb010g ]; + maintainers = [ ]; platforms = lib.platforms.linux; }; }) diff --git a/pkgs/tools/misc/mandoc/default.nix b/pkgs/tools/misc/mandoc/default.nix index e8553b7f9e58..af5ca9ac87b5 100644 --- a/pkgs/tools/misc/mandoc/default.nix +++ b/pkgs/tools/misc/mandoc/default.nix @@ -76,6 +76,6 @@ stdenv.mkDerivation rec { downloadPage = "http://mandoc.bsd.lv/snapshots/"; license = licenses.bsd3; platforms = platforms.all; - maintainers = with maintainers; [ bb010g ramkromberg sternenseemann ]; + maintainers = with maintainers; [ ramkromberg sternenseemann ]; }; } From 8c8c4ca2d6db9de02ffc90dc9839b4da1b0b3044 Mon Sep 17 00:00:00 2001 From: Dusk Banks Date: Thu, 4 Jul 2024 02:37:07 -0700 Subject: [PATCH 7/7] maintainers: remove bb010g SEE YOU SPACE COWBOY... --- maintainers/maintainer-list.nix | 7 ------- 1 file changed, 7 deletions(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 5ea83dcc41aa..d447cfdecdf4 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2278,13 +2278,6 @@ githubId = 19501722; keys = [ { fingerprint = "C593 27B5 9D0F 2622 23F6 1D03 C1C0 F299 52BC F558"; } ]; }; - bb010g = { - email = "me@bb010g.com"; - matrix = "@bb010g:matrix.org"; - github = "bb010g"; - githubId = 340132; - name = "Dusk Banks"; - }; bb2020 = { github = "bb2020"; githubId = 19290397;