Files
quantenzitrone 7d8132a92c treewide: remove references to the xorg namespace in pkgs (automated)
this creates some eval errors that will be fixed in the next commit

done with the following script:

```fish
\#!/usr/bin/env fish

set packagesjson (nix eval --impure --json --expr '
let
  lib = import ./lib;
in
import pkgs/servers/x11/xorg/default.nix (lib.mapAttrs (
  name: _:
  if name == "lib" then
    lib
  else if name == "config" then
    { allowAliases = false; }
  else
    name
) (__functionArgs (import pkgs/servers/x11/xorg/default.nix))) { }
' | jq)

set one (grep '^    [A-Za-z0-9_-]*$' pkgs/servers/x11/xorg/default.nix | string trim | string replace -r '$' Z | sort | string sub -e -1)
set two (grep '^  [A-Za-z0-9_-]* = [A-Za-z0-9_-]*;$' pkgs/servers/x11/xorg/default.nix | cut -d= -f1 | string trim | string replace -r '$' Z | sort | string sub -e -1)

for arg in $one $two
    set oname $arg
    set nname (echo $packagesjson | jq -r .$oname)

    if test $nname = null
        echo (set_color red)warn:(set_color normal) unknown package xorg.$oname >&2
        continue
    end

    echo $oname "->" $nname

    # replace basic xorg.$name references
    for file in (rg -F "xorg.$oname" --files-with-matches pkgs)
        # special cases
        sd -F "$oname = xorg.$oname;" "$nname = $nname;" $file

        # replace
        sd -F "xorg.$oname" "$nname" $file

        # fixup function arguments

        # prevent duplicate function args
        if grep -E " ($oname|$nname),\$" $file >/dev/null
            continue
        end

        if grep 'xorg\..' $file >/dev/null # case1: there is more so we can't just remove the function arg

            if grep ' xorg,$' $file >/dev/null
                sd ' xorg,$' " xorg,
                $nname," $file

            else if grep ' xorg ? .*,$' $file >/dev/null
                sd 'xorg( ? .*),$' "xorg\$1,
                $nname," $file

            else
                sd -F 'xorg,' "$nname,
                xorg," $file
            end

        else # case there is no more xorg..* so we can just replace the function arg
            sd 'xorg(| ? .*),.*$' "$nname," $file
        end
    end
end

nix fmt
```
2026-01-25 22:28:09 +01:00

81 lines
1.3 KiB
Nix

{
atk,
buildFHSEnv,
cairo,
dpkg,
gdk-pixbuf,
glib,
gtk2-x11,
makeWrapper,
pango,
lib,
stdenv,
libx11,
}:
{
src,
toolName,
version,
...
}@attrs:
let
wrapBinary = libPaths: binaryName: ''
wrapProgram "$out/bin/${binaryName}" \
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libPaths}"
'';
pkg = stdenv.mkDerivation rec {
inherit (attrs) version src;
name = "${toolName}-${version}";
meta =
{
homepage = "http://bitscope.com/software/";
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
license = lib.licenses.unfree;
platforms = [ "x86_64-linux" ];
}
// (attrs.meta or { });
nativeBuildInputs = [
makeWrapper
dpkg
];
libs =
attrs.libs or [
atk
cairo
gdk-pixbuf
glib
gtk2-x11
pango
libx11
];
dontBuild = true;
unpackPhase =
attrs.unpackPhase or ''
dpkg-deb -x ${attrs.src} ./
'';
installPhase =
attrs.installPhase or ''
mkdir -p "$out/bin"
cp -a usr/* "$out/"
${(wrapBinary libs) attrs.toolName}
'';
};
in
buildFHSEnv {
pname = attrs.toolName;
inherit (attrs) version;
runScript = "${pkg.outPath}/bin/${attrs.toolName}";
}
// {
inherit (pkg) meta name;
}