From 73b71369909d557f3d0783be5f7c8b996537c3f5 Mon Sep 17 00:00:00 2001 From: quantenzitrone Date: Sat, 13 Dec 2025 04:09:21 +0100 Subject: [PATCH] xf86-input-joystick: refactor, move to pkgs/by-name & rename from xorg.xf86inputjoystick relevant changes: - switch to GitLab source instead of release tarball --- .../xf/xf86-input-joystick/package.nix | 57 +++++++++++++++++++ pkgs/servers/x11/xorg/default.nix | 38 +------------ .../x11/xorg/generate-expr-from-tarballs.pl | 2 + pkgs/servers/x11/xorg/overrides.nix | 9 --- pkgs/servers/x11/xorg/tarballs.list | 1 - 5 files changed, 61 insertions(+), 46 deletions(-) create mode 100644 pkgs/by-name/xf/xf86-input-joystick/package.nix diff --git a/pkgs/by-name/xf/xf86-input-joystick/package.nix b/pkgs/by-name/xf/xf86-input-joystick/package.nix new file mode 100644 index 000000000000..d0cb2023196d --- /dev/null +++ b/pkgs/by-name/xf/xf86-input-joystick/package.nix @@ -0,0 +1,57 @@ +{ + lib, + stdenv, + fetchFromGitLab, + autoreconfHook, + pkg-config, + util-macros, + xorgproto, + xorg-server, + nix-update-script, + testers, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "xf86-input-joystick"; + version = "1.6.4"; + + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + group = "xorg"; + owner = "driver"; + repo = "xf86-input-joystick"; + tag = "xf86-input-joystick-${finalAttrs.version}"; + hash = "sha256-JxSnhWx5V3/pdlu3mwRNrgicdfaUK5nIwBK3reqchQs="; + }; + + strictDeps = true; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + util-macros + xorg-server # xorg-server defines autoconf macros that we need + ]; + + buildInputs = [ + util-macros # unused dependency but the build fails if pkg-config can't find it + xorgproto + xorg-server + ]; + + configureFlags = [ "--with-sdkdir=${placeholder "out"}/include/xorg" ]; + + passthru = { + updateScript = nix-update-script { extraArgs = [ "--version-regex=xf86-input-joystick-(.*)" ]; }; + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + }; + + meta = { + description = "Joystick input driver for the Xorg X server"; + homepage = "https://gitlab.freedesktop.org/xorg/driver/xf86-input-joystick"; + license = lib.licenses.hpndSellVariant; + maintainers = [ ]; + pkgConfigModules = [ "xorg-joystick" ]; + platforms = lib.platforms.unix; + broken = stdenv.hostPlatform.isDarwin; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86inputjoystick.x86_64-darwin + }; +}) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 08cc1d578ff4..0e9d6e49a228 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -129,6 +129,7 @@ xev, xeyes, xf86-input-evdev, + xf86-input-joystick, xf86-input-mouse, xf86-input-synaptics, xf86-input-vmmouse, @@ -348,6 +349,7 @@ self: with self; { xcbutilwm = libxcb-wm; xcursorthemes = xcursor-themes; xf86inputevdev = xf86-input-evdev; + xf86inputjoystick = xf86-input-joystick; xf86inputmouse = xf86-input-mouse; xf86inputsynaptics = xf86-input-synaptics; xf86inputvmmouse = xf86-input-vmmouse; @@ -358,42 +360,6 @@ self: with self; { xorgserver = xorg-server; xorgsgmldoctools = xorg-sgml-doctools; - # THIS IS A GENERATED FILE. DO NOT EDIT! - xf86inputjoystick = callPackage ( - { - stdenv, - pkg-config, - fetchurl, - xorgproto, - xorgserver, - testers, - }: - stdenv.mkDerivation (finalAttrs: { - pname = "xf86-input-joystick"; - version = "1.6.4"; - builder = ./builder.sh; - src = fetchurl { - url = "mirror://xorg/individual/driver/xf86-input-joystick-1.6.4.tar.xz"; - sha256 = "1lnc6cvrg81chb2hj3jphgx7crr4ab8wn60mn8f9nsdwza2w8plh"; - }; - hardeningDisable = [ - "bindnow" - "relro" - ]; - strictDeps = true; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ - xorgproto - xorgserver - ]; - passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; - meta = { - pkgConfigModules = [ "xorg-joystick" ]; - platforms = lib.platforms.unix; - }; - }) - ) { }; - # THIS IS A GENERATED FILE. DO NOT EDIT! xf86inputkeyboard = callPackage ( { diff --git a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl index 35917dd23273..8c607cad0033 100755 --- a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl +++ b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl @@ -461,6 +461,7 @@ print OUT <