Unverified Commit c52610e7 authored by jopejoe1's avatar jopejoe1 Committed by GitHub
Browse files

xf86-input-{mouse,synaptics,vmmouse,void}: refactor, move to pkgs/by-name &...

xf86-input-{mouse,synaptics,vmmouse,void}: refactor, move to pkgs/by-name & rename from xorg namespace (#470343)
parents 9c178804 7c4d50d2
Loading
Loading
Loading
Loading
+64 −0
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchFromGitLab,
  autoreconfHook,
  pkg-config,
  util-macros,
  xorgproto,
  xorg-server,
  nix-update-script,
  testers,
}:
stdenv.mkDerivation (finalAttrs: {
  pname = "xf86-input-mouse";
  version = "2.0.0";

  src = fetchFromGitLab {
    domain = "gitlab.freedesktop.org";
    group = "xorg";
    owner = "driver";
    repo = "xf86-input-mouse";
    tag = "xf86-input-mouse-${finalAttrs.version}";
    hash = "sha256-qPP0u7k1g30vw4A1c0fuVbQ9HHovTqWy8OAQ8uMGGg0=";
  };

  strictDeps = true;

  nativeBuildInputs = [
    autoreconfHook
    pkg-config
    util-macros
  ];

  buildInputs = [
    util-macros
    xorgproto
    xorg-server
  ];

  configureFlags = [ "--with-sdkdir=${placeholder "out"}/include/xorg" ];

  passthru = {
    updateScript = nix-update-script { extraArgs = [ "--version-regex=xf86-input-mouse-(.*)" ]; };
    tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
  };

  meta = {
    description = "Mouse input driver for non-Linux platforms for the Xorg X server";
    longDescription = ''
      This driver is used on non-Linux operating systems such as BSD & Solaris, as modern Linux
      systems use the xf86-input-evdev or xf86-input-libinput drivers instead.
    '';
    homepage = "https://gitlab.freedesktop.org/xorg/driver/xf86-input-mouse";
    license = with lib.licenses; [
      mit
      hpndSellVariant
      x11
    ];
    maintainers = [ ];
    pkgConfigModules = [ "xorg-mouse" ];
    # platforms according to the readme
    platforms = with lib.platforms; freebsd ++ netbsd ++ openbsd ++ illumos;
  };
})
+71 −0
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchFromGitLab,
  autoreconfHook,
  pkg-config,
  util-macros,
  xorg-server,
  xorgproto,
  libevdev,
  libx11,
  libxi,
  libxtst,
  nix-update-script,
  testers,
}:
stdenv.mkDerivation (finalAttrs: {
  pname = "xf86-input-synaptics";
  version = "1.10.0";

  outputs = [
    "out"
    "dev"
  ];

  src = fetchFromGitLab {
    domain = "gitlab.freedesktop.org";
    group = "xorg";
    owner = "driver";
    repo = "xf86-input-synaptics";
    tag = "xf86-input-synaptics-${finalAttrs.version}";
    hash = "sha256-IHkUxphSV6JOlTzIgXGl5hWb6OphJ9Lyzp/YS2phVQs=";
  };

  strictDeps = true;

  nativeBuildInputs = [
    autoreconfHook
    pkg-config
    util-macros
    xorg-server
  ];

  buildInputs = [
    xorg-server
    xorgproto
    libevdev
    libx11
    libxi
    libxtst
  ];

  configureFlags = [
    "--with-sdkdir=${placeholder "dev"}/include/xorg"
    "--with-xorg-conf-dir=${placeholder "out"}/share/X11/xorg.conf.d"
  ];

  passthru = {
    updateScript = nix-update-script { extraArgs = [ "--version-regex=xf86-input-synaptics-(.*)" ]; };
    tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
  };

  meta = {
    description = "Synaptics touchpad driver for the Xorg X server";
    homepage = "https://gitlab.freedesktop.org/xorg/driver/xf86-input-synaptics";
    license = lib.licenses.mit;
    maintainers = [ ];
    pkgConfigModules = [ "xorg-synaptics" ];
    platforms = lib.platforms.unix;
  };
})
+61 −0
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchFromGitLab,
  autoreconfHook,
  pkg-config,
  util-macros,
  xorg-server,
  xorgproto,
  udev,
  nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
  pname = "xf86-input-vmmouse";
  version = "13.2.0";

  src = fetchFromGitLab {
    domain = "gitlab.freedesktop.org";
    group = "xorg";
    owner = "driver";
    repo = "xf86-input-vmmouse";
    tag = "xf86-input-vmmouse-${finalAttrs.version}";
    hash = "sha256-SasWsIzq9s8i3dabRwKGZ0NSuFqnUu4WCWYTu/ZZpS8=";
  };

  strictDeps = true;

  nativeBuildInputs = [
    autoreconfHook
    pkg-config
    util-macros
    xorg-server # xorg-server defines autoconf macros that we need
  ];

  buildInputs = [
    xorg-server
    xorgproto
    udev
  ];

  configureFlags = [
    "--sysconfdir=${placeholder "out"}/etc"
    "--with-xorg-conf-dir=${placeholder "out"}/share/X11/xorg.conf.d"
    "--with-udev-rules-dir=${placeholder "out"}/lib/udev/rules.d"
  ];

  passthru = {
    updateScript = nix-update-script { extraArgs = [ "--version-regex=xf86-input-vmmouse-(.*)" ]; };
  };

  meta = {
    description = "VMware guest mouse driver for the Xorg X server";
    homepage = "https://gitlab.freedesktop.org/xorg/driver/xf86-input-vmmouse";
    license = with lib.licenses; [
      hpndSellVariant
      x11
    ];
    maintainers = [ ];
    platforms = lib.intersectLists lib.platforms.linux lib.platforms.x86;
  };
})
+59 −0
Original line number Diff line number Diff line
{
  lib,
  stdenv,
  fetchFromGitLab,
  autoreconfHook,
  pkg-config,
  util-macros,
  xorg-server,
  xorgproto,
  nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
  pname = "xf86-input-void";
  version = "1.4.2";

  src = fetchFromGitLab {
    domain = "gitlab.freedesktop.org";
    group = "xorg";
    owner = "driver";
    repo = "xf86-input-void";
    tag = "xf86-input-void-${finalAttrs.version}";
    hash = "sha256-R2c+FUBJQ9GfMcZ9NKSgT0lfOkqiCKrA+lFVu8l6e10=";
  };

  strictDeps = true;

  nativeBuildInputs = [
    autoreconfHook
    pkg-config
    util-macros
  ];

  buildInputs = [
    xorg-server
    xorgproto
  ];

  passthru = {
    updateScript = nix-update-script { extraArgs = [ "--version-regex=xf86-input-void-(.*)" ]; };
  };

  meta = {
    description = "Null input driver for the Xorg X server";
    longDescription = ''
      This is a null input driver for the Xorg X server.
      It doesn't connect to any physical device, and it never delivers any events.
      It functions as both a pointer and keyboard device, and may be used as the X server's core
      pointer and/or core keyboard.
    '';
    homepage = "https://gitlab.freedesktop.org/xorg/driver/xf86-input-void";
    license = with lib.licenses; [
      hpndSellVariant
      mit
    ];
    maintainers = [ ];
    platforms = lib.platforms.unix;
    broken = stdenv.hostPlatform.isDarwin; # never worked: https://hydra.nixos.org/job/nixpkgs/trunk/xorg.xf86inputvoid.x86_64-darwin
  };
})
+7 −0
Original line number Diff line number Diff line
@@ -110,6 +110,8 @@ stdenv.mkDerivation (finalAttrs: {
    dri-pkgconfig-stub
    libdrm
    libgbm
  ]
  ++ lib.optionals stdenv.hostPlatform.isLinux [
    libtirpc
  ]
  ++ lib.optionals stdenv.hostPlatform.isDarwin [
@@ -160,6 +162,11 @@ stdenv.mkDerivation (finalAttrs: {
    "-Dapple-applications-dir=${placeholder "out"}/Applications"
    "-Dbundle-id-prefix=org.nixos.xquartz"
    "-Dsha1=CommonCrypto"
  ]
  ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
    # fixed upstream (unreleased)
    "-Dudev=false"
    "-Dudev_kms=false"
  ];

  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
Loading