diff --git a/pkgs/applications/goldencheetah/bin.nix b/pkgs/by-name/go/goldencheetah-bin/package.nix
rename from pkgs/applications/goldencheetah/bin.nix
rename to pkgs/by-name/go/goldencheetah-bin/package.nix
diff --git a/pkgs/applications/misc/klogg/bin.nix b/pkgs/by-name/kl/klogg-bin/package.nix
rename from pkgs/applications/misc/klogg/bin.nix
rename to pkgs/by-name/kl/klogg-bin/package.nix
diff --git a/pkgs/applications/misc/klogg/default.nix b/pkgs/by-name/kl/klogg/package.nix
rename from pkgs/applications/misc/klogg/default.nix
rename to pkgs/by-name/kl/klogg/package.nix
index ba1e649c8ea26877e884d3061f0c1f6aff35f6d7..aed34572c5fe2711f077b041b3e198b7af206131 100644
--- a/pkgs/applications/misc/klogg/default.nix
+++ b/pkgs/by-name/kl/klogg/package.nix
@@ -1,7 +1,6 @@
 {
   stdenv,
   lib,
-  mkDerivation,
   fetchFromGitHub,
   cmake,
   ninja,
@@ -12,13 +11,13 @@   useSentry ? stdenv.isLinux,
   useHyperscan ? false,
 }:
 
-mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "klogg";
   version = "2021-09-27";
 
   src = fetchFromGitHub {
     owner = "variar";
-    repo = pname;
+    repo = "klogg";
     rev = "9fade8bcf354fc6d329facbce07a6c29437597a1";
     hash = "sha256-bim/cDEOfMolHkrBLBEu94YI+1o1opdeA66xeovAwp0=";
   };
diff --git a/pkgs/applications/synwrite/default.nix b/pkgs/by-name/sy/synwrite/package.nix
rename from pkgs/applications/synwrite/default.nix
rename to pkgs/by-name/sy/synwrite/package.nix
index 41cbc419fee188cf98fbf44d4fea6bea00145b43..14ca33fe52a55de56ece564a0c11904b73b1f8a8 100644
--- a/pkgs/applications/synwrite/default.nix
+++ b/pkgs/by-name/sy/synwrite/package.nix
@@ -49,7 +49,7 @@   preferLocalBuild = true;
 
   meta = {
     description = "Advanced text editor for programmers and Notepad replacement";
-    homepage = "http://uvviewsoft.com/synwrite/";
+    homepage = "https://cudatext.github.io/synwrite/";
     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
     license = lib.licenses.mpl11;
     maintainers = [ lib.maintainers.sikmir ];
diff --git a/pkgs/by-name/wo/worm/lock.json b/pkgs/by-name/wo/worm/lock.json
new file mode 100644
index 0000000000000000000000000000000000000000..dd80b9acd4c92559975d04a931dd61b463d46c6a
--- /dev/null
+++ b/pkgs/by-name/wo/worm/lock.json
@@ -0,0 +1,160 @@
+{
+  "depends": [
+    {
+      "method": "fetchzip",
+      "packages": [
+        "x11"
+      ],
+      "path": "/nix/store/8qaywzr8nzsiddjba77nhf75hzmxx0d9-source",
+      "ref": "1.2",
+      "rev": "29aca5e519ebf5d833f63a6a2769e62ec7bfb83a",
+      "sha256": "16npqgmi2qawjxaddj9ax15rfpdc7sqc37i2r5vg23lyr6znq4wc",
+      "srcDir": "",
+      "url": "https://github.com/nim-lang/x11/archive/29aca5e519ebf5d833f63a6a2769e62ec7bfb83a.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "pixie"
+      ],
+      "path": "/nix/store/f666hlv8mgvgingghbmgz5h0z876slwl-source",
+      "ref": "5.1.0",
+      "rev": "f05c89f547006a76816254c8bf06ff7ad176543c",
+      "sha256": "00dr6bkfliawgphvrs41v6n7rymqjga7bl91i0262knyzy1wb16v",
+      "srcDir": "src",
+      "url": "https://github.com/treeform/pixie/archive/f05c89f547006a76816254c8bf06ff7ad176543c.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "regex"
+      ],
+      "path": "/nix/store/73h80vbxzpffpywzdjycak8a1y7cdqdb-source",
+      "ref": "v0.8.1",
+      "rev": "1a662170a0622720ddb8f3dec3407192c5972b4f",
+      "sha256": "1lhnjpmlrc2vgk19icbpq9s0hid9739f0n3cycggvlyi0fdz0ada",
+      "srcDir": "src",
+      "url": "https://github.com/nitely/nim-regex/archive/1a662170a0622720ddb8f3dec3407192c5972b4f.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "vmath"
+      ],
+      "path": "/nix/store/f9dp6njaay5rf32f6l9gkw0dm25gim47-source",
+      "ref": "2.0.0",
+      "rev": "7282ae1247f2f384ebeaec3826d7fa38fd0e1df1",
+      "sha256": "1plw9lfrm42qar01rnjhm0d9mkzsc7c3b8kz43w5pb8j8drx1lyn",
+      "srcDir": "src",
+      "url": "https://github.com/treeform/vmath/archive/7282ae1247f2f384ebeaec3826d7fa38fd0e1df1.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "chroma"
+      ],
+      "path": "/nix/store/lk4hcmvwvliliyyidx7k3fk9yfijddc5-source",
+      "ref": "0.2.7",
+      "rev": "b2e71179174e040884ebf6a16cbac711c84620b9",
+      "sha256": "0pi6cq43ysm1wy5vva3i2dqvyh4dqppjjjl04yj9wfq7mngpqaa1",
+      "srcDir": "src",
+      "url": "https://github.com/treeform/chroma/archive/b2e71179174e040884ebf6a16cbac711c84620b9.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "zippy"
+      ],
+      "path": "/nix/store/zcd2hmjxlkp1bpb7c9xrpg153ssj3w0b-source",
+      "ref": "0.10.16",
+      "rev": "a99f6a7d8a8e3e0213b3cad0daf0ea974bf58e3f",
+      "sha256": "16qdnyql8d7nm7nwwpq0maflm3p6cpbb2jfaqx6xkld9xkc9lsbv",
+      "srcDir": "src",
+      "url": "https://github.com/guzba/zippy/archive/a99f6a7d8a8e3e0213b3cad0daf0ea974bf58e3f.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "flatty"
+      ],
+      "path": "/nix/store/vx0a8hw7hs5an0dnbrn6l16bd6is7hdr-source",
+      "ref": "0.3.4",
+      "rev": "07f6ba8ab96238e5bd1264cf0cea1d1746abb00c",
+      "sha256": "005nrldaasfl09zdsni1vi8s7dk0y85ijv6rm2wpj94435x66s36",
+      "srcDir": "src",
+      "url": "https://github.com/treeform/flatty/archive/07f6ba8ab96238e5bd1264cf0cea1d1746abb00c.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "nimsimd"
+      ],
+      "path": "/nix/store/bgbr0dgda0lhm0lbg2cljjh34wnw36zp-source",
+      "ref": "1.3.2",
+      "rev": "3f6b2668ffb0867d0bf786a658b817763e611350",
+      "sha256": "0frxqj34a12xwniac2nhlzdipc8w02m138k8gk6zf4s8yg5yvvhl",
+      "srcDir": "src",
+      "url": "https://github.com/guzba/nimsimd/archive/3f6b2668ffb0867d0bf786a658b817763e611350.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "bumpy"
+      ],
+      "path": "/nix/store/z2mfal6xlhn5plnh0qg3g3q1dpw2jk5y-source",
+      "ref": "1.1.3",
+      "rev": "edc6e19ddbe6b9e46c3384e9a4131d7063a3f610",
+      "sha256": "09h075sfr8c0lsgdzdm1qz18lwhw6njk5bwrv4g0rnnhv93sb6db",
+      "srcDir": "src",
+      "url": "https://github.com/treeform/bumpy/archive/edc6e19ddbe6b9e46c3384e9a4131d7063a3f610.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "crunchy"
+      ],
+      "path": "/nix/store/rb4r4bz7bm573vyvlm5mkji3f9cs2ya9-source",
+      "ref": "0.1.11",
+      "rev": "98eb6526982bb8aae8eec6e8781f4539fa19e049",
+      "sha256": "11iz2d23g3dwpw2ybx951c8ccikziaphr3515vw9c9930r5xmkci",
+      "srcDir": "src",
+      "url": "https://github.com/guzba/crunchy/archive/98eb6526982bb8aae8eec6e8781f4539fa19e049.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "unicodedb"
+      ],
+      "path": "/nix/store/1mcck56sr1h1sf8gv87m761x6f3d1k0l-source",
+      "ref": "v0.9.0",
+      "rev": "7c6ee4bfc184d7121896a098d68b639a96df7af1",
+      "sha256": "06j8d0bjbpv1iibqlmrac4qb61ggv17hvh6nv4pbccqk1rlpxhsq",
+      "srcDir": "src",
+      "url": "https://github.com/nitely/nim-unicodedb/archive/7c6ee4bfc184d7121896a098d68b639a96df7af1.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "unicodeplus"
+      ],
+      "path": "/nix/store/16fm03dql3pplz3ip40k0nbxw1gc0880-source",
+      "ref": "v0.9.1",
+      "rev": "f5d50197b266173dd4ca4c6fdd30361398433bb4",
+      "sha256": "1cd3n9l45z60gpv0rc84v1ngkjxn0i45vz0lzy63052m7m0j2rks",
+      "srcDir": "src",
+      "url": "https://github.com/nitely/nim-unicodeplus/archive/f5d50197b266173dd4ca4c6fdd30361398433bb4.tar.gz"
+    },
+    {
+      "method": "fetchzip",
+      "packages": [
+        "segmentation"
+      ],
+      "path": "/nix/store/c4c1bbxd29gmjj543wma2sbya5wvw5yg-source",
+      "ref": "v0.1.0",
+      "rev": "6845c68cf00c1546f49d628ae11334acba966bfb",
+      "sha256": "007bkx8dwy8n340zbp6wyqfsq9bh6q5ykav1ywdlwykyp1n909bh",
+      "srcDir": "src",
+      "url": "https://github.com/nitely/nim-segmentation/archive/6845c68cf00c1546f49d628ae11334acba966bfb.tar.gz"
+    }
+  ]
+}
diff --git a/pkgs/darwin/amethyst/default.nix b/pkgs/by-name/am/amethyst/package.nix
rename from pkgs/darwin/amethyst/default.nix
rename to pkgs/by-name/am/amethyst/package.nix
diff --git a/pkgs/darwin/cudatext/bin.nix b/pkgs/by-name/cu/cudatext-bin/package.nix
rename from pkgs/darwin/cudatext/bin.nix
rename to pkgs/by-name/cu/cudatext-bin/package.nix
diff --git a/pkgs/darwin/darktable/bin.nix b/pkgs/by-name/da/darktable-bin/package.nix
rename from pkgs/darwin/darktable/bin.nix
rename to pkgs/by-name/da/darktable-bin/package.nix
diff --git a/pkgs/darwin/finch/default.nix b/pkgs/by-name/fi/finch/package.nix
rename from pkgs/darwin/finch/default.nix
rename to pkgs/by-name/fi/finch/package.nix
diff --git a/pkgs/darwin/macpass/default.nix b/pkgs/by-name/ma/macpass-bin/package.nix
rename from pkgs/darwin/macpass/default.nix
rename to pkgs/by-name/ma/macpass-bin/package.nix
diff --git a/pkgs/darwin/macsvg/default.nix b/pkgs/by-name/ma/macsvg-bin/package.nix
rename from pkgs/darwin/macsvg/default.nix
rename to pkgs/by-name/ma/macsvg-bin/package.nix
diff --git a/pkgs/darwin/marta/default.nix b/pkgs/by-name/ma/marta-bin/package.nix
rename from pkgs/darwin/marta/default.nix
rename to pkgs/by-name/ma/marta-bin/package.nix
diff --git a/pkgs/darwin/pinentry-touchid/default.nix b/pkgs/by-name/pi/pinentry-touchid/package.nix
rename from pkgs/darwin/pinentry-touchid/default.nix
rename to pkgs/by-name/pi/pinentry-touchid/package.nix
diff --git a/pkgs/darwin/podman-desktop/bin.nix b/pkgs/by-name/po/podman-desktop-bin/package.nix
rename from pkgs/darwin/podman-desktop/bin.nix
rename to pkgs/by-name/po/podman-desktop-bin/package.nix
diff --git a/pkgs/darwin/qtcreator/bin.nix b/pkgs/by-name/qt/qtcreator-bin/package.nix
rename from pkgs/darwin/qtcreator/bin.nix
rename to pkgs/by-name/qt/qtcreator-bin/package.nix
diff --git a/pkgs/darwin/sequel-ace/default.nix b/pkgs/by-name/se/sequel-ace-bin/package.nix
rename from pkgs/darwin/sequel-ace/default.nix
rename to pkgs/by-name/se/sequel-ace-bin/package.nix
diff --git a/pkgs/darwin/zed/default.nix b/pkgs/by-name/ze/zed-preview-bin/package.nix
rename from pkgs/darwin/zed/default.nix
rename to pkgs/by-name/ze/zed-preview-bin/package.nix
diff --git a/pkgs/data/dicts/it-sanasto/default.nix b/pkgs/by-name/it/it-sanasto/package.nix
rename from pkgs/data/dicts/it-sanasto/default.nix
rename to pkgs/by-name/it/it-sanasto/package.nix
diff --git a/pkgs/data/dicts/komputeko/default.nix b/pkgs/by-name/ko/komputeko/package.nix
rename from pkgs/data/dicts/komputeko/default.nix
rename to pkgs/by-name/ko/komputeko/package.nix
diff --git a/pkgs/data/dicts/tatoeba/default.nix b/pkgs/by-name/ta/tatoeba/package.nix
rename from pkgs/data/dicts/tatoeba/default.nix
rename to pkgs/by-name/ta/tatoeba/package.nix
diff --git a/pkgs/data/dicts/tatoeba/tatoeba.json b/pkgs/by-name/ta/tatoeba/tatoeba.json
rename from pkgs/data/dicts/tatoeba/tatoeba.json
rename to pkgs/by-name/ta/tatoeba/tatoeba.json
diff --git a/pkgs/data/dicts/tatoeba/update.sh b/pkgs/by-name/ta/tatoeba/update.sh
rename from pkgs/data/dicts/tatoeba/update.sh
rename to pkgs/by-name/ta/tatoeba/update.sh
diff --git a/pkgs/data/maps/gpxsee-maps/default.nix b/pkgs/by-name/qp/gpxsee-maps/package.nix
rename from pkgs/data/maps/gpxsee-maps/default.nix
rename to pkgs/by-name/qp/gpxsee-maps/package.nix
diff --git a/pkgs/data/maps/opentopomap/default.nix b/pkgs/by-name/op/opentopomap/package.nix
rename from pkgs/data/maps/opentopomap/default.nix
rename to pkgs/by-name/op/opentopomap/package.nix
diff --git a/pkgs/data/maps/qmapshack-onlinemaps/default.nix b/pkgs/by-name/qm/qmapshack-onlinemaps/package.nix
rename from pkgs/data/maps/qmapshack-onlinemaps/default.nix
rename to pkgs/by-name/qm/qmapshack-onlinemaps/package.nix
diff --git a/pkgs/data/maps/slazav/fi.nix b/pkgs/by-name/sl/slazav-fi/package.nix
rename from pkgs/data/maps/slazav/fi.nix
rename to pkgs/by-name/sl/slazav-fi/package.nix
diff --git a/pkgs/data/maps/slazav/hr.nix b/pkgs/by-name/sl/slazav-hr/package.nix
rename from pkgs/data/maps/slazav/hr.nix
rename to pkgs/by-name/sl/slazav-hr/package.nix
diff --git a/pkgs/data/maps/slazav/podm.nix b/pkgs/by-name/sl/slazav-podm/package.nix
rename from pkgs/data/maps/slazav/podm.nix
rename to pkgs/by-name/sl/slazav-podm/package.nix
diff --git a/pkgs/data/themes/goldendict-themes/arc-dark-theme.nix b/pkgs/by-name/go/goldendict-arc-dark-theme/package.nix
rename from pkgs/data/themes/goldendict-themes/arc-dark-theme.nix
rename to pkgs/by-name/go/goldendict-arc-dark-theme/package.nix
diff --git a/pkgs/data/themes/goldendict-themes/dark-theme.nix b/pkgs/by-name/go/goldendict-dark-theme/package.nix
rename from pkgs/data/themes/goldendict-themes/dark-theme.nix
rename to pkgs/by-name/go/goldendict-dark-theme/package.nix
diff --git a/pkgs/data/themes/qtpbfimageplugin-styles/default.nix b/pkgs/by-name/qt/qtpbfimageplugin-styles/package.nix
rename from pkgs/data/themes/qtpbfimageplugin-styles/default.nix
rename to pkgs/by-name/qt/qtpbfimageplugin-styles/package.nix
diff --git a/pkgs/default.nix b/pkgs/default.nix
index a7dfef7a0f4dbd6a45f54b23ea2928489a3d19cd..fbeac61ac3395dd8940f8f46f283c46047269733 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -9,19 +9,26 @@     darwin
     ;
 in
 lib.makeScope newScope (
-  self: with self; {
-
+  self:
+  with self;
+  (lib.foldlAttrs
+    (
+      acc: _: attrs:
+      acc // attrs
+    )
+    { }
+    (
+      lib.packagesFromDirectoryRecursive {
+        inherit callPackage;
+        directory = ./by-name;
+      }
+    )
+  )
+  // {
     # VSCODE EXTENSIONS
 
     vscode-extensions = recurseIntoAttrs (callPackage ./vscode-extensions { });
 
-    ### APPLICATIONS
-
-    goldencheetah-bin = callPackage ./applications/goldencheetah/bin.nix { };
-    klogg = libsForQt5.callPackage ./applications/misc/klogg { };
-    klogg-bin = callPackage ./applications/misc/klogg/bin.nix { };
-    synwrite = callPackage ./applications/synwrite { };
-
     ### BUILD SUPPORT
 
     fetchfromgh = callPackage ./build-support/fetchfromgh { };
@@ -29,43 +36,19 @@     fetchgdrive = callPackage ./build-support/fetchgdrive { };
     fetchwebarchive = callPackage ./build-support/fetchwebarchive { };
     fetchymaps = callPackage ./build-support/fetchymaps { };
 
-    ### DARWIN
-
-    amethyst = callPackage ./darwin/amethyst { };
-    cudatext-bin = callPackage ./darwin/cudatext/bin.nix { };
-    darktable-bin = callPackage ./darwin/darktable/bin.nix { };
-    finch = callPackage ./darwin/finch { };
-    macpass = callPackage ./darwin/macpass { };
-    macsvg = callPackage ./darwin/macsvg { };
-    marta = callPackage ./darwin/marta { };
-    pinentry-touchid = callPackage ./darwin/pinentry-touchid { };
-    podman-desktop-bin = callPackage ./darwin/podman-desktop/bin.nix { };
-    qtcreator-bin = callPackage ./darwin/qtcreator/bin.nix { };
-    sequel-ace = callPackage ./darwin/sequel-ace { };
-    zed-preview = callPackage ./darwin/zed { };
-
     ### DATA
 
     dadako = callPackage ./data/dicts/dadako { };
     freedict = callPackage ./data/dicts/freedict { };
     huzheng = callPackage ./data/dicts/huzheng { };
-    it-sanasto = callPackage ./data/dicts/it-sanasto { };
-    komputeko = callPackage ./data/dicts/komputeko { };
     libredict = callPackage ./data/dicts/libredict { };
-    tatoeba = callPackage ./data/dicts/tatoeba { };
 
     dem = callPackage ./data/maps/dem { };
     freizeitkarte-osm = callPackage ./data/maps/freizeitkarte-osm { };
-    gpxsee-maps = callPackage ./data/maps/gpxsee-maps { };
     vlasenko-maps = callPackage ./data/maps/vlasenko-maps { };
     maptourist = callPackage ./data/maps/maptourist { };
     meridian = callPackage ./data/maps/meridian { };
     mtk-suomi = callPackage ./data/maps/mtk-suomi { };
-    opentopomap = callPackage ./data/maps/opentopomap { };
-    qmapshack-onlinemaps = callPackage ./data/maps/qmapshack-onlinemaps { };
-    slazav-hr = callPackage ./data/maps/slazav/hr.nix { };
-    slazav-podm = callPackage ./data/maps/slazav/podm.nix { };
-    slazav-fi = callPackage ./data/maps/slazav/fi.nix { };
     uralla = callPackage ./data/maps/uralla { };
 
     poi = callPackage ./data/misc/poi { };
@@ -74,19 +57,6 @@     osm-extracts = callPackage ./data/osm/osm-extracts { };
     overpassdb = callPackage ./data/osm/overpassdb { };
     routinodb = callPackage ./data/osm/routinodb { };
 
-    goldendict-arc-dark-theme = callPackage ./data/themes/goldendict-themes/arc-dark-theme.nix { };
-    goldendict-dark-theme = callPackage ./data/themes/goldendict-themes/dark-theme.nix { };
-    qtpbfimageplugin-styles = callPackage ./data/themes/qtpbfimageplugin-styles { };
-
-    ### DEVELOPMENT / LIBRARIES
-
-    iso15765-canbus = callPackage ./development/libraries/iso15765-canbus { };
-    isotp-c = callPackage ./development/libraries/isotp-c { };
-    jsontoolkit = callPackage ./development/libraries/jsontoolkit { };
-    libshell = callPackage ./development/libraries/libshell { };
-    libsockcanpp = callPackage ./development/libraries/libsockcanpp { };
-    microjson = callPackage ./development/libraries/microjson { };
-
     ### DEVELOPMENT / PERL MODULES
 
     perlPackages =
@@ -95,7 +65,7 @@
     ### DEVELOPMENT / PYTHON MODULES
 
     bounded-pool-executor = callPackage ./development/python-modules/bounded-pool-executor { };
-    click-6-7 = callPackage ./development/python-modules/click { };
+    click_6_7 = callPackage ./development/python-modules/click { };
     config-path = callPackage ./development/python-modules/config-path { };
     contextily = callPackage ./development/python-modules/contextily { };
     curses-menu = callPackage ./development/python-modules/curses-menu { };
@@ -121,7 +91,6 @@     tinynetrc = callPackage ./development/python-modules/tinynetrc { };
 
     ### EMBEDDED
 
-    chdk = callPackage ./embedded/chdk { };
     embox-aarch64 = callPackage ./embedded/embox { arch = "aarch64"; };
     embox-arm = callPackage ./embedded/embox { arch = "arm"; };
     embox-ppc = callPackage ./embedded/embox { arch = "ppc"; };
@@ -130,18 +99,9 @@     embox-x86 = callPackage ./embedded/embox { stdenv = pkgs.gccMultiStdenv; };
 
     ### GARMIN
 
-    basecamp = callPackage ./garmin/basecamp { };
-    cgpsmapper = callPackage ./garmin/cgpsmapper { };
-    garmin-uploader = callPackage ./garmin/garmin-uploader { };
-    garminimg = libsForQt5.callPackage ./garmin/garminimg { };
-    gimgtools = callPackage ./garmin/gimgtools { };
-    gmaptool = callPackage ./garmin/gmaptool { };
-    imgdecode = callPackage ./garmin/imgdecode { };
-    libgarmin = callPackage ./garmin/libgarmin { };
     ocad2img = perlPackages.callPackage ./garmin/ocad2img {
       inherit cgpsmapper ocad2mp fetchwebarchive;
     };
-    ocad2mp = callPackage ./garmin/ocad2mp { };
     openmtbmap = callPackage ./garmin/openmtbmap { };
     osm2mp = perlPackages.callPackage ./garmin/osm2mp {
       inherit (perlPackages)
@@ -152,148 +112,10 @@         MathPolygonTree
         TreeR
         ;
     };
-    py-patcher = callPackage ./garmin/py-patcher { };
-    sendmap20 = callPackage ./garmin/sendmap20 { };
-
-    ### GEMINI
-
-    agunua = callPackage ./gemini/agunua { };
-    astronaut = callPackage ./gemini/astronaut { };
-    comitium = callPackage ./gemini/comitium { };
-    egemi = callPackage ./gemini/egemi { };
-    estampa = callPackage ./gemini/estampa { };
-    eva = callPackage ./gemini/eva { };
-    gelim = callPackage ./gemini/gelim { };
-    gem = callPackage ./gemini/gem { };
-    gemcert = callPackage ./gemini/gemcert { };
-    gemgen = callPackage ./gemini/gemgen { };
-    gemini-ipfs-gateway = callPackage ./gemini/gemini-ipfs-gateway { };
-    geminid = callPackage ./gemini/geminid { };
-    gemreader = callPackage ./gemini/gemreader { };
-    gemserv = callPackage ./gemini/gemserv { };
-    gloggery = callPackage ./gemini/gloggery { };
-    gmi2html = callPackage ./gemini/gmi2html { };
-    gmnhg = callPackage ./gemini/gmnhg { };
-    gmnigit = callPackage ./gemini/gmnigit { };
-    gplaces = callPackage ./gemini/gplaces { };
-    gurl = callPackage ./gemini/gurl { };
-    kineto = callPackage ./gemini/kineto { };
-    mdtohtml = callPackage ./gemini/mdtohtml { };
-    py-gmi2html = callPackage ./gemini/py-gmi2html { };
-    qute-gemini = callPackage ./gemini/qute-gemini { };
-    satellite = callPackage ./gemini/satellite { };
-    shavit = callPackage ./gemini/shavit { };
-    stagit-gemini-milotier = callPackage ./gemini/stagit-gemini/milotier.nix { };
-    stagit-gemini-sloum = callPackage ./gemini/stagit-gemini/sloum.nix { };
-    tom = callPackage ./gemini/tom { };
-    twins = callPackage ./gemini/twins { };
 
     ### GEOSPATIAL
 
-    arcgis2geojson = callPackage ./geospatial/arcgis2geojson { };
-    bbox = callPackage ./geospatial/bbox { };
-    c2cwsgiutils = callPackage ./geospatial/c2cwsgiutils { };
-    cassini = callPackage ./geospatial/cassini { };
-    city2graph = callPackage ./geospatial/city2graph { };
-    cmocean = callPackage ./geospatial/cmocean { };
-    cogdumper = callPackage ./geospatial/cogdumper { };
-    cogeo-mosaic = callPackage ./geospatial/cogeo-mosaic { };
-    datamaps = callPackage ./geospatial/datamaps { };
-    deegree = callPackage ./geospatial/deegree { };
-    elevation = callPackage ./geospatial/elevation { click = click-6-7; };
-    garmindev = callPackage ./geospatial/qlandkartegt/garmindev.nix { };
-    geojson-pydantic = callPackage ./geospatial/geojson-pydantic { };
-    geoutils = callPackage ./geospatial/geoutils { };
-    geowebcache = callPackage ./geospatial/geowebcache { };
-    go-staticmaps = callPackage ./geospatial/go-staticmaps { };
-    hecate = callPackage ./geospatial/hecate { };
-    kealib = callPackage ./geospatial/kealib { };
-    localtileserver = callPackage ./geospatial/localtileserver { };
-    mapsoft = callPackage ./geospatial/mapsoft { proj = pkgs.proj_7; };
-    mapsoft2 = callPackage ./geospatial/mapsoft/2.nix { };
-    mbtiles2osmand = callPackage ./geospatial/mbtiles2osmand { };
-    mbutiles = callPackage ./geospatial/mbutiles { };
-    orbisgis = callPackage ./geospatial/orbisgis { jre = pkgs.jre8; };
-    ossim = callPackage ./geospatial/ossim { };
-    pipfile = callPackage ./geospatial/pipfile { };
-    pmtiles = callPackage ./geospatial/pmtiles { };
-    polyvectorization = libsForQt5.callPackage ./geospatial/polyvectorization { };
-    py-staticmaps = callPackage ./geospatial/py-staticmaps { };
-    pysheds = callPackage ./geospatial/pysheds { };
-    qlandkartegt = libsForQt5.callPackage ./geospatial/qlandkartegt {
-      gdal = pkgs.gdal.override {
-        libgeotiff = pkgs.libgeotiff.override { proj = pkgs.proj_7; };
-        libspatialite = pkgs.libspatialite.override { proj = pkgs.proj_7; };
-        proj = pkgs.proj_7;
-      };
-      proj = pkgs.proj_7;
-      inherit garmindev;
-    };
-    render_geojson = callPackage ./geospatial/render_geojson { wxGTK = pkgs.wxGTK32; };
-    rio-cogeo = callPackage ./geospatial/rio-cogeo { };
-    rio-color = callPackage ./geospatial/rio-color { };
-    rio-mbtiles = callPackage ./geospatial/rio-mbtiles { };
-    rio-mucho = callPackage ./geospatial/rio-mucho { };
-    rio-stac = callPackage ./geospatial/rio-stac { };
-    riverrem = callPackage ./geospatial/riverrem { };
-    rsgislib = callPackage ./geospatial/rsgislib { };
-    sasplanet = callPackage ./geospatial/sasplanet { };
-    server-thread = callPackage ./geospatial/server-thread { };
-    starlette-cramjam = callPackage ./geospatial/starlette-cramjam { };
-    supermercado = callPackage ./geospatial/supermercado { };
-    supermorecado = callPackage ./geospatial/supermorecado { };
-    taudem = callPackage ./geospatial/taudem { };
     #tdh = callPackage ./geospatial/tdh { };
-    terracotta = callPackage ./geospatial/terracotta { };
-    tile-stitch = callPackage ./geospatial/tile-stitch { };
-    tilekiln = callPackage ./geospatial/tilekiln { };
-    tilesets-cli = callPackage ./geospatial/tilesets-cli { };
-    tpkutils = callPackage ./geospatial/tpkutils { };
-    tuiview = callPackage ./geospatial/tuiview { };
-    vt2geojson = callPackage ./geospatial/vt2geojson { };
-    titiler = callPackage ./geospatial/titiler { };
-    tilecloud = callPackage ./geospatial/tilecloud { };
-    wms-tiles-downloader = callPackage ./geospatial/wms-tiles-downloader { };
-
-    ### GNSS
-
-    gnsstk = callPackage ./gnss/gnsstk { };
-    gnsstk-apps = callPackage ./gnss/gnsstk-apps { };
-    gps-sdr-sim = callPackage ./gnss/gps-sdr-sim { };
-    gpsdate = callPackage ./gnss/gpsdate { };
-    pygnssutils = callPackage ./gnss/pygnssutils { };
-    pygpsclient = callPackage ./gnss/pygpsclient { };
-    pyrtcm = callPackage ./gnss/pyrtcm { };
-    pysbf2 = callPackage ./gnss/pysbf2 { };
-    pyspartn = callPackage ./gnss/pyspartn { };
-    pyubx2 = callPackage ./gnss/pyubx2 { };
-    pyubxutils = callPackage ./gnss/pyubxutils { };
-    rtklib = callPackage ./gnss/rtklib { };
-    visualgps = libsForQt5.callPackage ./gnss/visualgps { };
-
-    ### GPX
-
-    cmpgpx = callPackage ./gpx/cmpgpx { };
-    fitdecode = callPackage ./gpx/fitdecode { };
-    garta = callPackage ./gpx/garta { };
-    geojson2dm = callPackage ./gpx/geojson2dm { };
-    gprox = callPackage ./gpx/gprox { };
-    gps-whatsnew = callPackage ./gpx/gps-whatsnew { };
-    gpx-cmd-tools = callPackage ./gpx/gpx-cmd-tools { };
-    gpx-converter = callPackage ./gpx/gpx-converter { };
-    gpx-interpolate = callPackage ./gpx/gpx-interpolate { };
-    gpx-layer = perlPackages.callPackage ./gpx/gpx-layer { };
-    gpx-player = callPackage ./gpx/gpx-player { };
-    gpx2video = callPackage ./gpx/gpx2video { };
-    gpx2yaml = callPackage ./gpx/gpx2yaml { };
-    gpxchart = callPackage ./gpx/gpxchart { };
-    gpxeditor = callPackage ./gpx/gpxeditor { };
-    gpxgo = callPackage ./gpx/gpxgo { };
-    gpxlib = callPackage ./gpx/gpxlib { };
-    gpxtools = callPackage ./gpx/gpxtools { };
-    gpxtrackposter = callPackage ./gpx/gpxtrackposter { };
-    routeconverter = callPackage ./gpx/routeconverter { };
-    trackanimation = callPackage ./gpx/trackanimation { };
 
     ### IMAGES
 
@@ -310,278 +132,9 @@       mbtileserver = callPackage ./images/mbtileserver { };
       quark = callPackage ./images/quark { };
     };
 
-    ### LINGUISTICS
-
-    dict2rest = callPackage ./linguistics/dict2rest { };
-    distance = callPackage ./linguistics/distance { };
-    gdcv = callPackage ./linguistics/gdcv { };
-    goldendict-bin = callPackage ./linguistics/goldendict/bin.nix { };
-    gt-bash-client = callPackage ./linguistics/gt-bash-client { };
-    gt4gd = callPackage ./linguistics/gt4gd { };
-    i18n-editor = callPackage ./linguistics/i18n-editor { jre = pkgs.jdk11; };
-    lsdreader = callPackage ./linguistics/lsdreader { };
-    mikatools = callPackage ./linguistics/mikatools { };
-    odict = callPackage ./linguistics/odict { };
-    pytorchtext = callPackage ./linguistics/pytorchtext { };
-    revtok = callPackage ./linguistics/revtok { };
-    stardict-tools = callPackage ./linguistics/stardict-tools { };
-    tatoebatools = callPackage ./linguistics/tatoebatools { };
-    ttb = callPackage ./linguistics/ttb { };
-    wikitextprocessor = callPackage ./linguistics/wikitextprocessor { };
-    wiktextract = callPackage ./linguistics/wiktextract { };
-    wiktfinnish = callPackage ./linguistics/wiktfinnish { };
-    zdict = callPackage ./linguistics/zdict { };
-
-    ### MISC
-
-    aamath = callPackage ./misc/aamath { };
-    acp = callPackage ./misc/acp { };
-    ajv-cli = callPackage ./misc/ajv-cli { };
-    apibackuper = callPackage ./misc/apibackuper { };
-    arduinojson = callPackage ./misc/arduinojson { };
-    ascii-dash = callPackage ./misc/ascii-dash { };
-    bash-completor = callPackage ./misc/bash-completor { };
-    brink = callPackage ./misc/brink { };
-    btpd = callPackage ./misc/btpd { };
-    bwh = callPackage ./misc/bwh { };
-    capture2text = libsForQt5.callPackage ./misc/capture2text { };
-    cfiles = callPackage ./misc/cfiles { };
-    chasquid = callPackage ./misc/chasquid { };
-    csv2html = callPackage ./misc/csv2html { };
-    csvtools = callPackage ./misc/csvtools { };
-    diagon = callPackage ./misc/diagon { };
-    dns-filter = callPackage ./misc/dns-filter { };
-    docker-reg-tool = callPackage ./misc/docker-reg-tool { };
-    docx2csv = callPackage ./misc/docx2csv { };
-    exercisediary = callPackage ./misc/exercisediary { };
-    ffs = callPackage ./misc/ffs { };
-    freeopcua = callPackage ./misc/freeopcua { };
-    gaiagpsclient = callPackage ./misc/gaiagpsclient { };
-    git-tui = callPackage ./misc/git-tui { };
-    goto = callPackage ./misc/goto { };
-    graphene = callPackage ./misc/graphene { };
-    headscale-webui = callPackage ./misc/headscale-webui { };
-    heapusage = callPackage ./misc/heapusage { };
-    how-to-use-pvs-studio-free = callPackage ./misc/how-to-use-pvs-studio-free { };
-    huami-token = callPackage ./misc/huami-token { };
-    ionscale = callPackage ./misc/ionscale { };
-    ish = callPackage ./misc/ish { };
-    json-tui = callPackage ./misc/json-tui { };
-    lazyscraper = callPackage ./misc/lazyscraper { };
-    libmdbx = callPackage ./misc/libmdbx { };
-    libnbcompat = callPackage ./misc/libnbcompat { };
-    md2html = callPackage ./misc/md2html { };
-    messenger-cli = callPackage ./misc/messenger-cli { };
-    messenger-gtk = callPackage ./misc/messenger-gtk { };
-    miband4 = callPackage ./misc/miband4 { };
-    mitzasql = callPackage ./misc/mitzasql { };
-    mjs = callPackage ./misc/mjs { };
-    modbus-tools = callPackage ./misc/modbus-tools { };
-    modbus_sim_cli = callPackage ./misc/modbus_sim_cli { python3Packages = pkgs.python310Packages; };
-    morse-talk = callPackage ./misc/morse-talk { };
-    msg-cli = callPackage ./misc/msg-cli { };
-    musig = callPackage ./misc/musig { };
-    mysql-to-sqlite3 = callPackage ./misc/mysql-to-sqlite3 { };
-    nanodns = callPackage ./misc/nanodns { };
-    nmtree = callPackage ./misc/nmtree { };
-    objlab = callPackage ./misc/objlab { };
-    ocelotgui = libsForQt5.callPackage ./misc/ocelotgui { };
-    opcua = callPackage ./misc/opcua { };
-    #opcua-stack = callPackage ./misc/opcua-stack {
-    #  openssl = pkgs.openssl_1_1;
-    #};
-    playonmac = callPackage ./misc/playonmac { };
-    plotjuggler = libsForQt5.callPackage ./misc/plotjuggler { };
-    pnoise = callPackage ./misc/pnoise { };
-    ptunnel = callPackage ./misc/ptunnel { };
-    px = callPackage ./misc/px { };
-    qdia = callPackage ./misc/qdia { };
-    qoiview = callPackage ./misc/qoiview { };
-    qstudio = callPackage ./misc/qstudio { };
-    repolocli = callPackage ./misc/repolocli { };
-    rhttp = callPackage ./misc/rhttp { };
-    riffraff = callPackage ./misc/riffraff { };
-    rodnik = callPackage ./misc/rodnik { };
-    rst2txt = callPackage ./misc/rst2txt { };
-    sdorfehs = callPackage ./misc/sdorfehs { };
-    serverpp = callPackage ./misc/serverpp { };
-    shellprof = callPackage ./misc/shellprof { };
-    shifu = callPackage ./misc/shifu { };
-    socketcand = callPackage ./misc/socketcand { };
-    subprocess = callPackage ./misc/subprocess { };
-    tcvt = callPackage ./misc/tcvt { };
-    telegabber = callPackage ./misc/telegabber { };
-    telegram-send = callPackage ./misc/telegram-send { };
-    telnetpp = callPackage ./misc/telnetpp { };
-    terminalpp = callPackage ./misc/terminalpp { };
-    tewi = callPackage ./misc/tewi { };
-    tg-spam = callPackage ./misc/tg-spam { };
-    tiny-frpc = callPackage ./misc/tiny-frpc { };
-    tinyflux = callPackage ./misc/tinyflux { };
-    tlstunnel = callPackage ./misc/tlstunnel { };
-    tsnsrv = callPackage ./misc/tsnsrv { };
-    turbo = callPackage ./misc/turbo { };
-    tvision = callPackage ./misc/tvision { };
-    wik = callPackage ./misc/wik { };
-    wirefire = callPackage ./misc/wirefire { };
-    #worm = callPackage ./misc/worm { };
-    wptools = callPackage ./misc/wptools { };
-    xfractint = callPackage ./misc/xfractint { };
-    xtr = callPackage ./misc/xtr { };
-    youtimetrack = callPackage ./misc/youtimetrack { };
-    zwave-js-ui = callPackage ./misc/zwave-js-ui { };
-
-    ### MQTT
-
-    akasa = callPackage ./mqtt/akasa { };
-    amqtt = callPackage ./mqtt/amqtt { };
-    comqtt = callPackage ./mqtt/comqtt { };
-    go-mosquitto = callPackage ./mqtt/go-mosquitto { };
-    go-mqtt-to-influxdb = callPackage ./mqtt/go-mqtt-to-influxdb { };
-    hmq = callPackage ./mqtt/hmq { };
-    ioxy = callPackage ./mqtt/ioxy { };
-    janus-mqtt-proxy = callPackage ./mqtt/janus-mqtt-proxy { };
-    libumqtt = callPackage ./mqtt/libumqtt { };
-    mochi = callPackage ./mqtt/mochi { };
-    mongoose = callPackage ./mqtt/mongoose { };
-    mproxy = callPackage ./mqtt/mproxy { };
-    mqcontrol = callPackage ./mqtt/mqcontrol { };
-    mqtt-benchmark = callPackage ./mqtt/mqtt-benchmark { };
-    mqtt-c = callPackage ./mqtt/mqtt-c { };
-    mqtt-cli = callPackage ./mqtt/mqtt-cli { };
-    mqtt-executor = callPackage ./mqtt/mqtt-executor { };
-    mqtt-launcher = callPackage ./mqtt/mqtt-launcher { };
-    mqtt-logger = callPackage ./mqtt/mqtt-logger { };
-    mqtt-proxy = callPackage ./mqtt/mqtt-proxy { };
-    mqtt-recorder = callPackage ./mqtt/mqtt-recorder { };
-    mqtt-shell = callPackage ./mqtt/mqtt-shell { };
-    mqtt-stats = callPackage ./mqtt/mqtt-stats { };
-    mqtt-stresser = callPackage ./mqtt/mqtt-stresser { };
-    mqtt-to-influxdb = callPackage ./mqtt/mqtt-to-influxdb { };
-    mqtt-to-influxdb-forwarder = callPackage ./mqtt/mqtt-to-influxdb-forwarder { };
-    mqttfs = callPackage ./mqtt/mqttfs { };
-    mqttwarn = callPackage ./mqtt/mqttwarn { };
-    mystique = callPackage ./mqtt/mystique { };
-    nanosdk = callPackage ./mqtt/nanosdk { };
-    pytest-mqtt = callPackage ./mqtt/pytest-mqtt { };
-    rmqtt = callPackage ./mqtt/rmqtt { };
-    rumqtt = callPackage ./mqtt/rumqtt { };
-    volantmq = callPackage ./mqtt/volantmq { };
-
     ### NAKARTE
 
-    elevation-server = callPackage ./nakarte/elevation-server { };
-    map-tiler = callPackage ./nakarte/map-tiler { python3Packages = pkgs.python311Packages; };
-    mapillary-render = callPackage ./nakarte/mapillary-render { };
-    maprec = callPackage ./nakarte/maprec { python3Packages = pkgs.python311Packages; };
     #nakarte = callPackage ./nakarte/nakarte { };
-    ozi-map = callPackage ./nakarte/ozi-map { python3Packages = pkgs.python311Packages; };
-    pyimagequant = callPackage ./nakarte/pyimagequant { python3Packages = pkgs.python311Packages; };
-    thinplatespline = callPackage ./nakarte/thinplatespline {
-      python3Packages = pkgs.python311Packages;
-    };
     tracks-storage-server = pkgs.python3Packages.callPackage ./nakarte/tracks-storage-server { };
-    westra-passes = callPackage ./nakarte/westra-passes { };
-
-    ### OSM
-
-    abstreet = callPackage ./osm/abstreet { };
-    arnis = callPackage ./osm/arnis { };
-    cykhash = callPackage ./osm/cykhash { };
-    gcgn-converter = callPackage ./osm/gcgn-converter { };
-    level0 = callPackage ./osm/level0 { };
-    libgeodesk = callPackage ./osm/libgeodesk { };
-    map-machine = callPackage ./osm/map-machine { };
-    map-stylizer = callPackage ./osm/map-stylizer { };
-    maperitive = callPackage ./osm/maperitive { };
-    maproulette-python-client = callPackage ./osm/maproulette-python-client { };
-    memphis = callPackage ./osm/memphis { };
-    osm-3s = callPackage ./osm/osm-3s { };
-    osm-area-tools = callPackage ./osm/osm-area-tools { };
-    osm-gis-export = callPackage ./osm/osm-gis-export { };
-    osm-lump-ways = callPackage ./osm/osm-lump-ways { };
-    osm-tags-transform = callPackage ./osm/osm-tags-transform { };
-    osm2geojson = callPackage ./osm/osm2geojson { };
-    osmcoastline = callPackage ./osm/osmcoastline { };
-    osmdbt = callPackage ./osm/osmdbt { };
-    osmium-surplus = callPackage ./osm/osmium-surplus { };
-    osmosis = callPackage ./osm/osmosis { };
-    osmptparser = callPackage ./osm/osmptparser { };
-    osmviz = callPackage ./osm/osmviz { };
-    osmwalkthrough = callPackage ./osm/osmwalkthrough { };
-    overpassforge = callPackage ./osm/overpassforge { };
-    phyghtmap = callPackage ./osm/phyghtmap { };
-    planetiler = callPackage ./osm/planetiler { };
-    polytiles = callPackage ./osm/polytiles { };
-    prettymapp = callPackage ./osm/prettymapp { };
-    py-osm-static-maps = callPackage ./osm/py-osm-static-maps { };
-    pyrobuf = callPackage ./osm/pyrobuf { };
-    pyrosm = callPackage ./osm/pyrosm { };
-    sdlmap = callPackage ./osm/sdlmap { };
-    smopy = callPackage ./osm/smopy { };
-    smrender = callPackage ./osm/smrender { };
-    srtm2osm = callPackage ./osm/srtm2osm { };
-    taginfo-tools = callPackage ./osm/taginfo-tools { };
-    tilelog = callPackage ./osm/tilelog { };
-    vectiler = callPackage ./osm/vectiler { };
-
-    ### RADIO
-
-    acarsdec = callPackage ./radio/acarsdec { };
-    adsb_deku = callPackage ./radio/adsb_deku { };
-    ais-catcher = callPackage ./radio/ais-catcher { };
-    aprsc = callPackage ./radio/aprsc { };
-    dump1090_rs = callPackage ./radio/dump1090_rs { };
-    dumphfdl = callPackage ./radio/dumphfdl { };
-    fmreceiver = libsForQt5.callPackage ./radio/fmreceiver { };
-    goestools = callPackage ./radio/goestools { };
-    gqrx-scanner = callPackage ./radio/gqrx-scanner { };
-    linrad = callPackage ./radio/linrad { };
-    radiolib = callPackage ./radio/radiolib { };
-    rtlsdr-airband = callPackage ./radio/rtlsdr-airband { };
-    rtltcp = callPackage ./radio/rtltcp { };
-    sdr-modem = callPackage ./radio/sdr-modem { };
-    sdr-server = callPackage ./radio/sdr-server { };
-    smallrx = callPackage ./radio/smallrx { };
-
-    ### SUCKLESS
-
-    amused = callPackage ./suckless/amused { };
-    blind = callPackage ./suckless/blind { };
-    chibicc = callPackage ./suckless/chibicc { };
-    cproc = callPackage ./suckless/cproc { };
-    dragon = callPackage ./suckless/dragon { };
-    dtree = callPackage ./suckless/dtree { };
-    edit = callPackage ./suckless/edit { };
-    farbfeld-utils = callPackage ./suckless/farbfeld-utils { };
-    ff-tools = callPackage ./suckless/ff-tools { };
-    ffshot = callPackage ./suckless/ffshot { };
-    hurl = callPackage ./suckless/hurl { };
-    imscript = callPackage ./suckless/imscript { };
-    imsg-compat = callPackage ./suckless/imsg-compat { };
-    kilo = callPackage ./suckless/kilo { };
-    lacc = callPackage ./suckless/lacc { };
-    lbm = callPackage ./suckless/lbm { };
-    lchat = callPackage ./suckless/lchat { };
-    lel = callPackage ./suckless/lel { };
-    libst = callPackage ./suckless/libst { };
-    libutf = callPackage ./suckless/libutf { };
-    mage = callPackage ./suckless/mage { };
-    makel = callPackage ./suckless/makel { };
-    nextvi = callPackage ./suckless/nextvi { };
-    pista = callPackage ./suckless/pista { };
-    poe = callPackage ./suckless/poe { };
-    saait = callPackage ./suckless/saait { };
-    sbase = callPackage ./suckless/sbase { };
-    scc = callPackage ./suckless/scc { };
-    scroll = callPackage ./suckless/scroll { };
-    sdhcp = callPackage ./suckless/sdhcp { };
-    se = callPackage ./suckless/se { };
-    sled = callPackage ./suckless/sled { };
-    ste = callPackage ./suckless/ste { };
-    sthkd = callPackage ./suckless/sthkd { };
-    svtm = callPackage ./suckless/svtm { };
-    table = callPackage ./suckless/table { };
-    webdump = callPackage ./suckless/webdump { };
   }
 )
diff --git a/pkgs/development/libraries/iso15765-canbus/default.nix b/pkgs/by-name/is/iso15765-canbus/package.nix
rename from pkgs/development/libraries/iso15765-canbus/default.nix
rename to pkgs/by-name/is/iso15765-canbus/package.nix
diff --git a/pkgs/development/libraries/isotp-c/default.nix b/pkgs/by-name/is/isotp-c/package.nix
rename from pkgs/development/libraries/isotp-c/default.nix
rename to pkgs/by-name/is/isotp-c/package.nix
diff --git a/pkgs/development/libraries/jsontoolkit/default.nix b/pkgs/by-name/js/jsontoolkit/package.nix
rename from pkgs/development/libraries/jsontoolkit/default.nix
rename to pkgs/by-name/js/jsontoolkit/package.nix
diff --git a/pkgs/development/libraries/libshell/default.nix b/pkgs/by-name/li/libshell/package.nix
rename from pkgs/development/libraries/libshell/default.nix
rename to pkgs/by-name/li/libshell/package.nix
diff --git a/pkgs/development/libraries/libsockcanpp/default.nix b/pkgs/by-name/li/libsockcanpp/package.nix
rename from pkgs/development/libraries/libsockcanpp/default.nix
rename to pkgs/by-name/li/libsockcanpp/package.nix
diff --git a/pkgs/development/libraries/microjson/default.nix b/pkgs/by-name/mi/microjson/package.nix
rename from pkgs/development/libraries/microjson/default.nix
rename to pkgs/by-name/mi/microjson/package.nix
diff --git a/pkgs/embedded/chdk/default.nix b/pkgs/by-name/ch/chdk/package.nix
rename from pkgs/embedded/chdk/default.nix
rename to pkgs/by-name/ch/chdk/package.nix
diff --git a/pkgs/garmin/basecamp/default.nix b/pkgs/by-name/ba/basecamp/package.nix
rename from pkgs/garmin/basecamp/default.nix
rename to pkgs/by-name/ba/basecamp/package.nix
diff --git a/pkgs/garmin/cgpsmapper/default.nix b/pkgs/by-name/cg/cgpsmapper/package.nix
rename from pkgs/garmin/cgpsmapper/default.nix
rename to pkgs/by-name/cg/cgpsmapper/package.nix
diff --git a/pkgs/garmin/garmin-uploader/default.nix b/pkgs/by-name/ga/garmin-uploader/package.nix
rename from pkgs/garmin/garmin-uploader/default.nix
rename to pkgs/by-name/ga/garmin-uploader/package.nix
diff --git a/pkgs/garmin/garminimg/default.nix b/pkgs/by-name/ga/garminimg/package.nix
rename from pkgs/garmin/garminimg/default.nix
rename to pkgs/by-name/ga/garminimg/package.nix
index faff4bfe3b62458e52e7cfb1ce414a869a582200..ae27419535dff9fe711a3e1f4d7218ebd06a1b8e 100644
--- a/pkgs/garmin/garminimg/default.nix
+++ b/pkgs/by-name/ga/garminimg/package.nix
@@ -5,7 +5,7 @@   fetchFromGitHub,
   cmake,
   gdal,
   proj,
-  wrapQtAppsHook,
+  qt5,
 }:
 
 stdenv.mkDerivation {
@@ -22,7 +22,7 @@
 
   nativeBuildInputs = [
     cmake
-    wrapQtAppsHook
+    qt5.wrapQtAppsHook
   ];
 
   buildInputs = [
diff --git a/pkgs/garmin/gimgtools/default.nix b/pkgs/by-name/gi/gimgtools/package.nix
rename from pkgs/garmin/gimgtools/default.nix
rename to pkgs/by-name/gi/gimgtools/package.nix
diff --git a/pkgs/garmin/gmaptool/default.nix b/pkgs/by-name/gm/gmaptool/package.nix
rename from pkgs/garmin/gmaptool/default.nix
rename to pkgs/by-name/gm/gmaptool/package.nix
diff --git a/pkgs/garmin/imgdecode/default.nix b/pkgs/by-name/im/imgdecode/package.nix
rename from pkgs/garmin/imgdecode/default.nix
rename to pkgs/by-name/im/imgdecode/package.nix
diff --git a/pkgs/garmin/libgarmin/default.nix b/pkgs/by-name/li/libgarmin/package.nix
rename from pkgs/garmin/libgarmin/default.nix
rename to pkgs/by-name/li/libgarmin/package.nix
diff --git a/pkgs/garmin/ocad2mp/default.nix b/pkgs/by-name/oc/ocad2mp/package.nix
rename from pkgs/garmin/ocad2mp/default.nix
rename to pkgs/by-name/oc/ocad2mp/package.nix
diff --git a/pkgs/garmin/py-patcher/default.nix b/pkgs/by-name/py/py-patcher/package.nix
rename from pkgs/garmin/py-patcher/default.nix
rename to pkgs/by-name/py/py-patcher/package.nix
diff --git a/pkgs/garmin/sendmap20/default.nix b/pkgs/by-name/se/sendmap20/package.nix
rename from pkgs/garmin/sendmap20/default.nix
rename to pkgs/by-name/se/sendmap20/package.nix
diff --git a/pkgs/gemini/agunua/default.nix b/pkgs/by-name/ag/agunua/package.nix
rename from pkgs/gemini/agunua/default.nix
rename to pkgs/by-name/ag/agunua/package.nix
diff --git a/pkgs/gemini/astronaut/default.nix b/pkgs/by-name/as/astronaut/package.nix
rename from pkgs/gemini/astronaut/default.nix
rename to pkgs/by-name/as/astronaut/package.nix
diff --git a/pkgs/gemini/comitium/default.nix b/pkgs/by-name/co/comitium/package.nix
rename from pkgs/gemini/comitium/default.nix
rename to pkgs/by-name/co/comitium/package.nix
diff --git a/pkgs/gemini/egemi/default.nix b/pkgs/by-name/eg/egemi/package.nix
rename from pkgs/gemini/egemi/default.nix
rename to pkgs/by-name/eg/egemi/package.nix
diff --git a/pkgs/gemini/estampa/default.nix b/pkgs/by-name/es/estampa/package.nix
rename from pkgs/gemini/estampa/default.nix
rename to pkgs/by-name/es/estampa/package.nix
diff --git a/pkgs/gemini/eva/cargo-lock.patch b/pkgs/by-name/ev/eva/cargo-lock.patch
rename from pkgs/gemini/eva/cargo-lock.patch
rename to pkgs/by-name/ev/eva/cargo-lock.patch
diff --git a/pkgs/gemini/eva/default.nix b/pkgs/by-name/ev/eva/package.nix
rename from pkgs/gemini/eva/default.nix
rename to pkgs/by-name/ev/eva/package.nix
diff --git a/pkgs/gemini/gelim/default.nix b/pkgs/by-name/ge/gelim/package.nix
rename from pkgs/gemini/gelim/default.nix
rename to pkgs/by-name/ge/gelim/package.nix
diff --git a/pkgs/gemini/gelim/go.mod.patch b/pkgs/by-name/ge/gelim/go.mod.patch
rename from pkgs/gemini/gelim/go.mod.patch
rename to pkgs/by-name/ge/gelim/go.mod.patch
diff --git a/pkgs/gemini/gem/default.nix b/pkgs/by-name/ge/gem/package.nix
rename from pkgs/gemini/gem/default.nix
rename to pkgs/by-name/ge/gem/package.nix
diff --git a/pkgs/gemini/gemcert/default.nix b/pkgs/by-name/ge/gemcert/package.nix
rename from pkgs/gemini/gemcert/default.nix
rename to pkgs/by-name/ge/gemcert/package.nix
diff --git a/pkgs/gemini/gemcert/go.mod.patch b/pkgs/by-name/ge/gemcert/go.mod.patch
rename from pkgs/gemini/gemcert/go.mod.patch
rename to pkgs/by-name/ge/gemcert/go.mod.patch
diff --git a/pkgs/gemini/gemgen/default.nix b/pkgs/by-name/ge/gemgen/package.nix
rename from pkgs/gemini/gemgen/default.nix
rename to pkgs/by-name/ge/gemgen/package.nix
diff --git a/pkgs/gemini/gemini-ipfs-gateway/default.nix b/pkgs/by-name/ge/gemini-ipfs-gateway/package.nix
rename from pkgs/gemini/gemini-ipfs-gateway/default.nix
rename to pkgs/by-name/ge/gemini-ipfs-gateway/package.nix
diff --git a/pkgs/gemini/geminid/default.nix b/pkgs/by-name/ge/geminid/package.nix
rename from pkgs/gemini/geminid/default.nix
rename to pkgs/by-name/ge/geminid/package.nix
diff --git a/pkgs/gemini/gemreader/default.nix b/pkgs/by-name/ge/gemreader/package.nix
rename from pkgs/gemini/gemreader/default.nix
rename to pkgs/by-name/ge/gemreader/package.nix
diff --git a/pkgs/gemini/gemserv/default.nix b/pkgs/by-name/ge/gemserv/package.nix
rename from pkgs/gemini/gemserv/default.nix
rename to pkgs/by-name/ge/gemserv/package.nix
diff --git a/pkgs/gemini/gloggery/default.nix b/pkgs/by-name/gl/gloggery/package.nix
rename from pkgs/gemini/gloggery/default.nix
rename to pkgs/by-name/gl/gloggery/package.nix
diff --git a/pkgs/gemini/gmi2html/default.nix b/pkgs/by-name/gm/gmi2html/package.nix
rename from pkgs/gemini/gmi2html/default.nix
rename to pkgs/by-name/gm/gmi2html/package.nix
diff --git a/pkgs/gemini/gmnhg/default.nix b/pkgs/by-name/gm/gmnhg/package.nix
rename from pkgs/gemini/gmnhg/default.nix
rename to pkgs/by-name/gm/gmnhg/package.nix
diff --git a/pkgs/gemini/gmnigit/default.nix b/pkgs/by-name/gm/gmnigit/package.nix
rename from pkgs/gemini/gmnigit/default.nix
rename to pkgs/by-name/gm/gmnigit/package.nix
diff --git a/pkgs/gemini/gplaces/default.nix b/pkgs/by-name/gp/gplaces/package.nix
rename from pkgs/gemini/gplaces/default.nix
rename to pkgs/by-name/gp/gplaces/package.nix
diff --git a/pkgs/gemini/gurl/default.nix b/pkgs/by-name/gu/gurl/package.nix
rename from pkgs/gemini/gurl/default.nix
rename to pkgs/by-name/gu/gurl/package.nix
diff --git a/pkgs/gemini/kineto/default.nix b/pkgs/by-name/ki/kineto/package.nix
rename from pkgs/gemini/kineto/default.nix
rename to pkgs/by-name/ki/kineto/package.nix
diff --git a/pkgs/gemini/mdtohtml/default.nix b/pkgs/by-name/md/mdtohtml/package.nix
rename from pkgs/gemini/mdtohtml/default.nix
rename to pkgs/by-name/md/mdtohtml/package.nix
diff --git a/pkgs/gemini/py-gmi2html/default.nix b/pkgs/by-name/py/py-gmi2html/package.nix
rename from pkgs/gemini/py-gmi2html/default.nix
rename to pkgs/by-name/py/py-gmi2html/package.nix
diff --git a/pkgs/gemini/qute-gemini/default.nix b/pkgs/by-name/qu/qute-gemini/package.nix
rename from pkgs/gemini/qute-gemini/default.nix
rename to pkgs/by-name/qu/qute-gemini/package.nix
diff --git a/pkgs/gemini/satellite/default.nix b/pkgs/by-name/sa/satellite/package.nix
rename from pkgs/gemini/satellite/default.nix
rename to pkgs/by-name/sa/satellite/package.nix
diff --git a/pkgs/gemini/shavit/default.nix b/pkgs/by-name/sh/shavit/package.nix
rename from pkgs/gemini/shavit/default.nix
rename to pkgs/by-name/sh/shavit/package.nix
diff --git a/pkgs/gemini/stagit-gemini/milotier.nix b/pkgs/by-name/st/stagit-gemini-milotier/package.nix
rename from pkgs/gemini/stagit-gemini/milotier.nix
rename to pkgs/by-name/st/stagit-gemini-milotier/package.nix
diff --git a/pkgs/gemini/stagit-gemini/sloum.nix b/pkgs/by-name/st/stagit-gemini-sloum/package.nix
rename from pkgs/gemini/stagit-gemini/sloum.nix
rename to pkgs/by-name/st/stagit-gemini-sloum/package.nix
diff --git a/pkgs/gemini/tom/default.nix b/pkgs/by-name/to/tom/package.nix
rename from pkgs/gemini/tom/default.nix
rename to pkgs/by-name/to/tom/package.nix
diff --git a/pkgs/gemini/twins/default.nix b/pkgs/by-name/tw/twins/package.nix
rename from pkgs/gemini/twins/default.nix
rename to pkgs/by-name/tw/twins/package.nix
diff --git a/pkgs/geospatial/arcgis2geojson/default.nix b/pkgs/by-name/ar/arcgis2geojson/package.nix
rename from pkgs/geospatial/arcgis2geojson/default.nix
rename to pkgs/by-name/ar/arcgis2geojson/package.nix
diff --git a/pkgs/geospatial/bbox/Cargo.lock b/pkgs/by-name/bb/bbox/Cargo.lock
rename from pkgs/geospatial/bbox/Cargo.lock
rename to pkgs/by-name/bb/bbox/Cargo.lock
diff --git a/pkgs/geospatial/bbox/default.nix b/pkgs/by-name/bb/bbox/package.nix
rename from pkgs/geospatial/bbox/default.nix
rename to pkgs/by-name/bb/bbox/package.nix
diff --git a/pkgs/geospatial/c2cwsgiutils/default.nix b/pkgs/by-name/c2/c2cwsgiutils/package.nix
rename from pkgs/geospatial/c2cwsgiutils/default.nix
rename to pkgs/by-name/c2/c2cwsgiutils/package.nix
diff --git a/pkgs/geospatial/cassini/default.nix b/pkgs/by-name/ca/cassini/package.nix
rename from pkgs/geospatial/cassini/default.nix
rename to pkgs/by-name/ca/cassini/package.nix
diff --git a/pkgs/geospatial/cassini/skia-externals.json b/pkgs/by-name/ca/cassini/skia-externals.json
rename from pkgs/geospatial/cassini/skia-externals.json
rename to pkgs/by-name/ca/cassini/skia-externals.json
diff --git a/pkgs/geospatial/city2graph/default.nix b/pkgs/by-name/ci/city2graph/package.nix
rename from pkgs/geospatial/city2graph/default.nix
rename to pkgs/by-name/ci/city2graph/package.nix
diff --git a/pkgs/geospatial/cmocean/default.nix b/pkgs/by-name/cm/cmocean/package.nix
rename from pkgs/geospatial/cmocean/default.nix
rename to pkgs/by-name/cm/cmocean/package.nix
diff --git a/pkgs/geospatial/cogdumper/default.nix b/pkgs/by-name/co/cogdumper/package.nix
rename from pkgs/geospatial/cogdumper/default.nix
rename to pkgs/by-name/co/cogdumper/package.nix
diff --git a/pkgs/geospatial/cogeo-mosaic/default.nix b/pkgs/by-name/co/cogeo-mosaic/package.nix
rename from pkgs/geospatial/cogeo-mosaic/default.nix
rename to pkgs/by-name/co/cogeo-mosaic/package.nix
diff --git a/pkgs/geospatial/datamaps/default.nix b/pkgs/by-name/da/datamaps/package.nix
rename from pkgs/geospatial/datamaps/default.nix
rename to pkgs/by-name/da/datamaps/package.nix
diff --git a/pkgs/geospatial/deegree/default.nix b/pkgs/by-name/de/deegree/package.nix
rename from pkgs/geospatial/deegree/default.nix
rename to pkgs/by-name/de/deegree/package.nix
diff --git a/pkgs/geospatial/elevation/default.nix b/pkgs/by-name/el/elevation/package.nix
rename from pkgs/geospatial/elevation/default.nix
rename to pkgs/by-name/el/elevation/package.nix
index f8363fc8dcc8220727e770f1747a967080064f55..d902434824b529ad884d4782c0d0925181513423 100644
--- a/pkgs/geospatial/elevation/default.nix
+++ b/pkgs/by-name/el/elevation/package.nix
@@ -2,7 +2,7 @@ {
   lib,
   fetchFromGitHub,
   python3Packages,
-  click,
+  click_6_7,
   gnumake,
   curl,
   unzip,
@@ -31,7 +31,7 @@
   dependencies = with python3Packages; [
     fasteners
     appdirs
-    click
+    click_6_7
     setuptools
   ];
 
diff --git a/pkgs/geospatial/geojson-pydantic/default.nix b/pkgs/by-name/ge/geojson-pydantic/package.nix
rename from pkgs/geospatial/geojson-pydantic/default.nix
rename to pkgs/by-name/ge/geojson-pydantic/package.nix
diff --git a/pkgs/geospatial/geoutils/default.nix b/pkgs/by-name/ge/geoutils/package.nix
rename from pkgs/geospatial/geoutils/default.nix
rename to pkgs/by-name/ge/geoutils/package.nix
diff --git a/pkgs/geospatial/geowebcache/default.nix b/pkgs/by-name/ge/geowebcache/package.nix
rename from pkgs/geospatial/geowebcache/default.nix
rename to pkgs/by-name/ge/geowebcache/package.nix
diff --git a/pkgs/geospatial/go-staticmaps/default.nix b/pkgs/by-name/go/go-staticmaps/package.nix
rename from pkgs/geospatial/go-staticmaps/default.nix
rename to pkgs/by-name/go/go-staticmaps/package.nix
diff --git a/pkgs/geospatial/go-staticmaps/extra-tileproviders.patch b/pkgs/by-name/go/go-staticmaps/extra-tileproviders.patch
rename from pkgs/geospatial/go-staticmaps/extra-tileproviders.patch
rename to pkgs/by-name/go/go-staticmaps/extra-tileproviders.patch
diff --git a/pkgs/geospatial/hecate/cargo-lock.patch b/pkgs/by-name/he/hecate/cargo-lock.patch
rename from pkgs/geospatial/hecate/cargo-lock.patch
rename to pkgs/by-name/he/hecate/cargo-lock.patch
diff --git a/pkgs/geospatial/hecate/default.nix b/pkgs/by-name/he/hecate/package.nix
rename from pkgs/geospatial/hecate/default.nix
rename to pkgs/by-name/he/hecate/package.nix
diff --git a/pkgs/geospatial/kealib/default.nix b/pkgs/by-name/ke/kealib/package.nix
rename from pkgs/geospatial/kealib/default.nix
rename to pkgs/by-name/ke/kealib/package.nix
diff --git a/pkgs/geospatial/localtileserver/default.nix b/pkgs/by-name/lo/localtileserver/package.nix
rename from pkgs/geospatial/localtileserver/default.nix
rename to pkgs/by-name/lo/localtileserver/package.nix
diff --git a/pkgs/geospatial/mapsoft/0001-fix-build.patch b/pkgs/by-name/ma/mapsoft/0001-fix-build.patch
rename from pkgs/geospatial/mapsoft/0001-fix-build.patch
rename to pkgs/by-name/ma/mapsoft/0001-fix-build.patch
diff --git a/pkgs/geospatial/mapsoft/0002-fix-build.patch b/pkgs/by-name/ma/mapsoft2/0002-fix-build.patch
rename from pkgs/geospatial/mapsoft/0002-fix-build.patch
rename to pkgs/by-name/ma/mapsoft2/0002-fix-build.patch
diff --git a/pkgs/geospatial/mapsoft/0003-notests.patch b/pkgs/by-name/ma/mapsoft2/0003-notests.patch
rename from pkgs/geospatial/mapsoft/0003-notests.patch
rename to pkgs/by-name/ma/mapsoft2/0003-notests.patch
diff --git a/pkgs/geospatial/mapsoft/2.nix b/pkgs/by-name/ma/mapsoft2/package.nix
rename from pkgs/geospatial/mapsoft/2.nix
rename to pkgs/by-name/ma/mapsoft2/package.nix
diff --git a/pkgs/geospatial/mapsoft/default.nix b/pkgs/by-name/ma/mapsoft/package.nix
rename from pkgs/geospatial/mapsoft/default.nix
rename to pkgs/by-name/ma/mapsoft/package.nix
index f0e030d2abdc17ea18ffdeed68e35e6001954f91..fd5948491ddfdb1fe6ffa287b7ba9689905efbb9 100644
--- a/pkgs/geospatial/mapsoft/default.nix
+++ b/pkgs/by-name/ma/mapsoft/package.nix
@@ -25,7 +25,7 @@   libusb1,
   libxml2,
   libyaml,
   libzip,
-  proj,
+  proj_7,
   shapelib,
   zlib,
   getopt,
@@ -78,7 +78,7 @@     libxml2
     libyaml
     libzip
     perlPackages.TextIconv
-    proj
+    proj_7
     shapelib
     zlib
   ];
@@ -88,8 +88,8 @@     libshell
   ];
 
   preBuild = ''
-    export CPPFLAGS="-I${boost.dev}/include -I${giflib}/include -I${proj.dev}/include"
-    export LINKFLAGS="-L${giflib}/lib -lgif -L${proj}/lib -lproj"
+    export CPPFLAGS="-I${boost.dev}/include -I${giflib}/include -I${proj_7.dev}/include"
+    export LINKFLAGS="-L${giflib}/lib -lgif -L${proj_7}/lib -lproj"
   '';
 
   sconsFlags = [
diff --git a/pkgs/geospatial/mbtiles2osmand/default.nix b/pkgs/by-name/mb/mbtiles2osmand/package.nix
rename from pkgs/geospatial/mbtiles2osmand/default.nix
rename to pkgs/by-name/mb/mbtiles2osmand/package.nix
diff --git a/pkgs/geospatial/mbutiles/cargo-lock.patch b/pkgs/by-name/mb/mbutiles/cargo-lock.patch
rename from pkgs/geospatial/mbutiles/cargo-lock.patch
rename to pkgs/by-name/mb/mbutiles/cargo-lock.patch
diff --git a/pkgs/geospatial/mbutiles/default.nix b/pkgs/by-name/mb/mbutiles/package.nix
rename from pkgs/geospatial/mbutiles/default.nix
rename to pkgs/by-name/mb/mbutiles/package.nix
diff --git a/pkgs/geospatial/orbisgis/default.nix b/pkgs/by-name/or/orbisgis/package.nix
rename from pkgs/geospatial/orbisgis/default.nix
rename to pkgs/by-name/or/orbisgis/package.nix
index 27f91c1ac97c488859e41ddf35820cb227acbdc8..844c67593b06df4ec24fc7847ce761bfdeb80dbc 100644
--- a/pkgs/geospatial/orbisgis/default.nix
+++ b/pkgs/by-name/or/orbisgis/package.nix
@@ -5,7 +5,7 @@   fetchfromgh,
   unzip,
   rsync,
   makeWrapper,
-  jre,
+  jre8,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -29,7 +29,7 @@
   postPatch = ''
     sed -i "s#/usr/bin/orbisgis#$out/bin/orbisgis#" orbisgis.desktop
     sed -i "s#/usr/lib/OrbisGIS#$out/opt/OrbisGIS#" orbisgis orbisgis.desktop
-    sed -i "s#java -jar#${jre}/bin/java -jar#" orbisgis.sh orbisgis_safemode.sh
+    sed -i "s#java -jar#${jre8}/bin/java -jar#" orbisgis.sh orbisgis_safemode.sh
   '';
 
   installPhase = ''
@@ -38,7 +38,7 @@     rsync -r --exclude '*.bat' . $out/opt/OrbisGIS
 
     chmod +x $out/opt/OrbisGIS/orbisgis
     makeWrapper $out/opt/OrbisGIS/orbisgis $out/bin/orbisgis \
-      --set JAVA_HOME "${jre}"
+      --set JAVA_HOME "${jre8}"
   '';
 
   meta = {
@@ -47,7 +47,7 @@     description = "An opensource GIS software";
     sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
     license = lib.licenses.gpl3;
     maintainers = [ lib.maintainers.sikmir ];
-    platforms = jre.meta.platforms;
+    platforms = jre8.meta.platforms;
     skip.ci = true;
   };
 })
diff --git a/pkgs/geospatial/ossim/default.nix b/pkgs/by-name/os/ossim/package.nix
rename from pkgs/geospatial/ossim/default.nix
rename to pkgs/by-name/os/ossim/package.nix
diff --git a/pkgs/geospatial/pipfile/default.nix b/pkgs/by-name/pi/pipfile/package.nix
rename from pkgs/geospatial/pipfile/default.nix
rename to pkgs/by-name/pi/pipfile/package.nix
diff --git a/pkgs/geospatial/pmtiles/default.nix b/pkgs/by-name/pm/pmtiles/package.nix
rename from pkgs/geospatial/pmtiles/default.nix
rename to pkgs/by-name/pm/pmtiles/package.nix
diff --git a/pkgs/geospatial/polyvectorization/default.nix b/pkgs/by-name/po/polyvectorization/package.nix
rename from pkgs/geospatial/polyvectorization/default.nix
rename to pkgs/by-name/po/polyvectorization/package.nix
index 34dfa9173f3dd51d3e1ae8df9a221372a1b5fccc..098fc135fc3b81dedcb340d9d93b6cd59a78cf86 100644
--- a/pkgs/geospatial/polyvectorization/default.nix
+++ b/pkgs/by-name/po/polyvectorization/package.nix
@@ -6,7 +6,7 @@   cmake,
   boost,
   eigen,
   opencv,
-  wrapQtAppsHook,
+  qt5,
 }:
 
 stdenv.mkDerivation {
@@ -29,7 +29,7 @@   '';
 
   nativeBuildInputs = [
     cmake
-    wrapQtAppsHook
+    qt5.wrapQtAppsHook
   ];
 
   buildInputs = [
diff --git a/pkgs/geospatial/polyvectorization/with-gui.patch b/pkgs/by-name/po/polyvectorization/with-gui.patch
rename from pkgs/geospatial/polyvectorization/with-gui.patch
rename to pkgs/by-name/po/polyvectorization/with-gui.patch
diff --git a/pkgs/geospatial/py-staticmaps/default.nix b/pkgs/by-name/py/py-staticmaps/package.nix
rename from pkgs/geospatial/py-staticmaps/default.nix
rename to pkgs/by-name/py/py-staticmaps/package.nix
diff --git a/pkgs/geospatial/pysheds/default.nix b/pkgs/by-name/py/pysheds/package.nix
rename from pkgs/geospatial/pysheds/default.nix
rename to pkgs/by-name/py/pysheds/package.nix
diff --git a/pkgs/geospatial/qlandkartegt/default.nix b/pkgs/by-name/ql/qlandkartegt/package.nix
rename from pkgs/geospatial/qlandkartegt/default.nix
rename to pkgs/by-name/ql/qlandkartegt/package.nix
index 32cdd364c5fb9d1afd742a89ed3aaca2b9905a8e..3f6ff276191fc1c2718cb76bc60dde73b5638324 100644
--- a/pkgs/geospatial/qlandkartegt/default.nix
+++ b/pkgs/by-name/ql/qlandkartegt/package.nix
@@ -4,18 +4,16 @@   lib,
   fetchurl,
   fetchpatch,
   cmake,
-  qtmultimedia,
-  qtserialport,
-  qtscript,
-  qtwebkit,
-  wrapQtAppsHook,
+  qt5,
   garmindev,
   gdal,
   gpsd,
   libdmtx,
   libexif,
+  libgeotiff,
   libGLU,
-  proj,
+  libspatialite,
+  proj_7,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -68,21 +66,25 @@   ];
 
   nativeBuildInputs = [
     cmake
-    wrapQtAppsHook
+    qt5.wrapQtAppsHook
   ];
 
   buildInputs = [
-    qtmultimedia
-    qtserialport
-    qtscript
-    qtwebkit
+    qt5.qtmultimedia
+    qt5.qtserialport
+    qt5.qtscript
+    qt5.qtwebkit
     garmindev
-    gdal
+    (gdal.override {
+      libgeotiff = libgeotiff.override { proj = proj_7; };
+      libspatialite = libspatialite.override { proj = proj_7; };
+      proj = proj_7;
+    })
     gpsd
     libdmtx
     libexif
     libGLU
-    proj
+    proj_7
   ];
 
   cmakeFlags = [
diff --git a/pkgs/geospatial/qlandkartegt/garmindev.nix b/pkgs/by-name/ga/garmindev/package.nix
rename from pkgs/geospatial/qlandkartegt/garmindev.nix
rename to pkgs/by-name/ga/garmindev/package.nix
diff --git a/pkgs/geospatial/render_geojson/default.nix b/pkgs/by-name/re/render_geojson/package.nix
rename from pkgs/geospatial/render_geojson/default.nix
rename to pkgs/by-name/re/render_geojson/package.nix
index 41e159047a5b1fa06ff7972c4cadc4c42d33a16e..723468ac91ed47f4e23bb3f2f52f22cecb3cefb3 100644
--- a/pkgs/geospatial/render_geojson/default.nix
+++ b/pkgs/by-name/re/render_geojson/package.nix
@@ -3,7 +3,7 @@   lib,
   stdenv,
   fetchFromGitHub,
   autoreconfHook,
-  wxGTK,
+  wxGTK32,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -19,7 +19,7 @@   };
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  buildInputs = [ wxGTK ];
+  buildInputs = [ wxGTK32 ];
 
   meta = {
     description = "C++ geoJSON and topoJSON parser and rendering using the WxWidgets GUI library";
diff --git a/pkgs/geospatial/rio-cogeo/default.nix b/pkgs/by-name/ri/rio-cogeo/package.nix
rename from pkgs/geospatial/rio-cogeo/default.nix
rename to pkgs/by-name/ri/rio-cogeo/package.nix
diff --git a/pkgs/geospatial/rio-color/default.nix b/pkgs/by-name/ri/rio-color/package.nix
rename from pkgs/geospatial/rio-color/default.nix
rename to pkgs/by-name/ri/rio-color/package.nix
diff --git a/pkgs/geospatial/rio-mbtiles/default.nix b/pkgs/by-name/ri/rio-mbtiles/package.nix
rename from pkgs/geospatial/rio-mbtiles/default.nix
rename to pkgs/by-name/ri/rio-mbtiles/package.nix
diff --git a/pkgs/geospatial/rio-mucho/default.nix b/pkgs/by-name/ri/rio-mucho/package.nix
rename from pkgs/geospatial/rio-mucho/default.nix
rename to pkgs/by-name/ri/rio-mucho/package.nix
diff --git a/pkgs/geospatial/rio-stac/default.nix b/pkgs/by-name/ri/rio-stac/package.nix
rename from pkgs/geospatial/rio-stac/default.nix
rename to pkgs/by-name/ri/rio-stac/package.nix
diff --git a/pkgs/geospatial/riverrem/default.nix b/pkgs/by-name/ri/riverrem/package.nix
rename from pkgs/geospatial/riverrem/default.nix
rename to pkgs/by-name/ri/riverrem/package.nix
diff --git a/pkgs/geospatial/rsgislib/default.nix b/pkgs/by-name/rs/rsgislib/package.nix
rename from pkgs/geospatial/rsgislib/default.nix
rename to pkgs/by-name/rs/rsgislib/package.nix
diff --git a/pkgs/geospatial/sasplanet/default.nix b/pkgs/by-name/sa/sasplanet/package.nix
rename from pkgs/geospatial/sasplanet/default.nix
rename to pkgs/by-name/sa/sasplanet/package.nix
diff --git a/pkgs/geospatial/server-thread/default.nix b/pkgs/by-name/se/server-thread/package.nix
rename from pkgs/geospatial/server-thread/default.nix
rename to pkgs/by-name/se/server-thread/package.nix
diff --git a/pkgs/geospatial/starlette-cramjam/default.nix b/pkgs/by-name/st/starlette-cramjam/package.nix
rename from pkgs/geospatial/starlette-cramjam/default.nix
rename to pkgs/by-name/st/starlette-cramjam/package.nix
diff --git a/pkgs/geospatial/supermercado/default.nix b/pkgs/by-name/su/supermercado/package.nix
rename from pkgs/geospatial/supermercado/default.nix
rename to pkgs/by-name/su/supermercado/package.nix
diff --git a/pkgs/geospatial/supermorecado/default.nix b/pkgs/by-name/su/supermorecado/package.nix
rename from pkgs/geospatial/supermorecado/default.nix
rename to pkgs/by-name/su/supermorecado/package.nix
diff --git a/pkgs/geospatial/taudem/default.nix b/pkgs/by-name/ta/taudem/package.nix
rename from pkgs/geospatial/taudem/default.nix
rename to pkgs/by-name/ta/taudem/package.nix
diff --git a/pkgs/geospatial/terracotta/default.nix b/pkgs/by-name/te/terracotta/package.nix
rename from pkgs/geospatial/terracotta/default.nix
rename to pkgs/by-name/te/terracotta/package.nix
diff --git a/pkgs/geospatial/tile-stitch/default.nix b/pkgs/by-name/ti/tile-stitch/package.nix
rename from pkgs/geospatial/tile-stitch/default.nix
rename to pkgs/by-name/ti/tile-stitch/package.nix
diff --git a/pkgs/geospatial/tilecloud/default.nix b/pkgs/by-name/ti/tilecloud/package.nix
rename from pkgs/geospatial/tilecloud/default.nix
rename to pkgs/by-name/ti/tilecloud/package.nix
diff --git a/pkgs/geospatial/tilecloud/set-tmpl-path.patch b/pkgs/by-name/ti/tilecloud/set-tmpl-path.patch
rename from pkgs/geospatial/tilecloud/set-tmpl-path.patch
rename to pkgs/by-name/ti/tilecloud/set-tmpl-path.patch
diff --git a/pkgs/geospatial/tilekiln/default.nix b/pkgs/by-name/ti/tilekiln/package.nix
rename from pkgs/geospatial/tilekiln/default.nix
rename to pkgs/by-name/ti/tilekiln/package.nix
diff --git a/pkgs/geospatial/tilesets-cli/default.nix b/pkgs/by-name/ti/tilesets-cli/package.nix
rename from pkgs/geospatial/tilesets-cli/default.nix
rename to pkgs/by-name/ti/tilesets-cli/package.nix
diff --git a/pkgs/geospatial/titiler/default.nix b/pkgs/by-name/ti/titiler/package.nix
rename from pkgs/geospatial/titiler/default.nix
rename to pkgs/by-name/ti/titiler/package.nix
diff --git a/pkgs/geospatial/tpkutils/default.nix b/pkgs/by-name/tp/tpkutils/package.nix
rename from pkgs/geospatial/tpkutils/default.nix
rename to pkgs/by-name/tp/tpkutils/package.nix
diff --git a/pkgs/geospatial/tuiview/default.nix b/pkgs/by-name/tu/tuiview/package.nix
rename from pkgs/geospatial/tuiview/default.nix
rename to pkgs/by-name/tu/tuiview/package.nix
diff --git a/pkgs/geospatial/vt2geojson/default.nix b/pkgs/by-name/vt/vt2geojson/package.nix
rename from pkgs/geospatial/vt2geojson/default.nix
rename to pkgs/by-name/vt/vt2geojson/package.nix
diff --git a/pkgs/geospatial/wms-tiles-downloader/default.nix b/pkgs/by-name/wm/wms-tiles-downloader/package.nix
rename from pkgs/geospatial/wms-tiles-downloader/default.nix
rename to pkgs/by-name/wm/wms-tiles-downloader/package.nix
diff --git a/pkgs/gnss/gnsstk-apps/default.nix b/pkgs/by-name/gn/gnsstk-apps/package.nix
rename from pkgs/gnss/gnsstk-apps/default.nix
rename to pkgs/by-name/gn/gnsstk-apps/package.nix
diff --git a/pkgs/gnss/gnsstk/default.nix b/pkgs/by-name/gn/gnsstk/package.nix
rename from pkgs/gnss/gnsstk/default.nix
rename to pkgs/by-name/gn/gnsstk/package.nix
diff --git a/pkgs/gnss/gps-sdr-sim/default.nix b/pkgs/by-name/gp/gps-sdr-sim/package.nix
rename from pkgs/gnss/gps-sdr-sim/default.nix
rename to pkgs/by-name/gp/gps-sdr-sim/package.nix
diff --git a/pkgs/gnss/gpsdate/clock_settime.patch b/pkgs/by-name/gp/gpsdate/clock_settime.patch
rename from pkgs/gnss/gpsdate/clock_settime.patch
rename to pkgs/by-name/gp/gpsdate/clock_settime.patch
diff --git a/pkgs/gnss/gpsdate/default.nix b/pkgs/by-name/gp/gpsdate/package.nix
rename from pkgs/gnss/gpsdate/default.nix
rename to pkgs/by-name/gp/gpsdate/package.nix
diff --git a/pkgs/gnss/pygnssutils/default.nix b/pkgs/by-name/py/pygnssutils/package.nix
rename from pkgs/gnss/pygnssutils/default.nix
rename to pkgs/by-name/py/pygnssutils/package.nix
diff --git a/pkgs/gnss/pygpsclient/default.nix b/pkgs/by-name/py/pygpsclient/package.nix
rename from pkgs/gnss/pygpsclient/default.nix
rename to pkgs/by-name/py/pygpsclient/package.nix
diff --git a/pkgs/gnss/pyrtcm/default.nix b/pkgs/by-name/py/pyrtcm/package.nix
rename from pkgs/gnss/pyrtcm/default.nix
rename to pkgs/by-name/py/pyrtcm/package.nix
diff --git a/pkgs/gnss/pysbf2/default.nix b/pkgs/by-name/py/pysbf2/package.nix
rename from pkgs/gnss/pysbf2/default.nix
rename to pkgs/by-name/py/pysbf2/package.nix
diff --git a/pkgs/gnss/pyspartn/default.nix b/pkgs/by-name/py/pyspartn/package.nix
rename from pkgs/gnss/pyspartn/default.nix
rename to pkgs/by-name/py/pyspartn/package.nix
diff --git a/pkgs/gnss/pyubx2/default.nix b/pkgs/by-name/py/pyubx2/package.nix
rename from pkgs/gnss/pyubx2/default.nix
rename to pkgs/by-name/py/pyubx2/package.nix
diff --git a/pkgs/gnss/pyubxutils/default.nix b/pkgs/by-name/py/pyubxutils/package.nix
rename from pkgs/gnss/pyubxutils/default.nix
rename to pkgs/by-name/py/pyubxutils/package.nix
diff --git a/pkgs/gnss/rtklib/default.nix b/pkgs/by-name/rt/rtklib/package.nix
rename from pkgs/gnss/rtklib/default.nix
rename to pkgs/by-name/rt/rtklib/package.nix
diff --git a/pkgs/gnss/visualgps/default.nix b/pkgs/by-name/vi/visualgps/package.nix
rename from pkgs/gnss/visualgps/default.nix
rename to pkgs/by-name/vi/visualgps/package.nix
index 49ce42e5c57e7ca9ea30b52e5083d43b86937826..01d79a648b96456e50ea53c6afdcaf1803667a8d 100644
--- a/pkgs/gnss/visualgps/default.nix
+++ b/pkgs/by-name/vi/visualgps/package.nix
@@ -2,9 +2,7 @@ {
   lib,
   stdenv,
   fetchFromGitHub,
-  qmake,
-  qtserialport,
-  wrapQtAppsHook,
+  qt5,
 }:
 
 stdenv.mkDerivation {
@@ -20,11 +18,11 @@     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [
-    qmake
-    wrapQtAppsHook
+    qt5.qmake
+    qt5.wrapQtAppsHook
   ];
 
-  buildInputs = [ qtserialport ];
+  buildInputs = [ qt5.qtserialport ];
 
   qmakeFlags = [ "Software/VisualGPSqt/Source/VisualGPSqt.pro" ];
 
diff --git a/pkgs/gpx/cmpgpx/default.nix b/pkgs/by-name/cm/cmpgpx/package.nix
rename from pkgs/gpx/cmpgpx/default.nix
rename to pkgs/by-name/cm/cmpgpx/package.nix
diff --git a/pkgs/gpx/fitdecode/default.nix b/pkgs/by-name/fi/fitdecode/package.nix
rename from pkgs/gpx/fitdecode/default.nix
rename to pkgs/by-name/fi/fitdecode/package.nix
diff --git a/pkgs/gpx/garta/cargo-lock.patch b/pkgs/by-name/ga/garta/cargo-lock.patch
rename from pkgs/gpx/garta/cargo-lock.patch
rename to pkgs/by-name/ga/garta/cargo-lock.patch
diff --git a/pkgs/gpx/garta/default.nix b/pkgs/by-name/ga/garta/package.nix
rename from pkgs/gpx/garta/default.nix
rename to pkgs/by-name/ga/garta/package.nix
diff --git a/pkgs/gpx/garta/inkatlas.json b/pkgs/by-name/ga/garta/inkatlas.json
rename from pkgs/gpx/garta/inkatlas.json
rename to pkgs/by-name/ga/garta/inkatlas.json
diff --git a/pkgs/gpx/garta/parseconfig.patch b/pkgs/by-name/ga/garta/parseconfig.patch
rename from pkgs/gpx/garta/parseconfig.patch
rename to pkgs/by-name/ga/garta/parseconfig.patch
diff --git a/pkgs/gpx/geojson2dm/default.nix b/pkgs/by-name/ge/geojson2dm/package.nix
rename from pkgs/gpx/geojson2dm/default.nix
rename to pkgs/by-name/ge/geojson2dm/package.nix
diff --git a/pkgs/gpx/gprox/cargo-lock.patch b/pkgs/by-name/gp/gprox/cargo-lock.patch
rename from pkgs/gpx/gprox/cargo-lock.patch
rename to pkgs/by-name/gp/gprox/cargo-lock.patch
diff --git a/pkgs/gpx/gprox/default.nix b/pkgs/by-name/gp/gprox/package.nix
rename from pkgs/gpx/gprox/default.nix
rename to pkgs/by-name/gp/gprox/package.nix
diff --git a/pkgs/gpx/gps-whatsnew/default.nix b/pkgs/by-name/gp/gps-whatsnew/package.nix
rename from pkgs/gpx/gps-whatsnew/default.nix
rename to pkgs/by-name/gp/gps-whatsnew/package.nix
diff --git a/pkgs/gpx/gpx-cmd-tools/default.nix b/pkgs/by-name/gp/gpx-cmd-tools/package.nix
rename from pkgs/gpx/gpx-cmd-tools/default.nix
rename to pkgs/by-name/gp/gpx-cmd-tools/package.nix
diff --git a/pkgs/gpx/gpx-converter/default.nix b/pkgs/by-name/gp/gpx-converter/package.nix
rename from pkgs/gpx/gpx-converter/default.nix
rename to pkgs/by-name/gp/gpx-converter/package.nix
diff --git a/pkgs/gpx/gpx-interpolate/default.nix b/pkgs/by-name/gp/gpx-interpolate/package.nix
rename from pkgs/gpx/gpx-interpolate/default.nix
rename to pkgs/by-name/gp/gpx-interpolate/package.nix
diff --git a/pkgs/gpx/gpx-layer/default.nix b/pkgs/by-name/gp/gpx-layer/package.nix
rename from pkgs/gpx/gpx-layer/default.nix
rename to pkgs/by-name/gp/gpx-layer/package.nix
index a26330111d38b5b7d0c3a3a30afb4f86965d9e20..6194e43395f1f38bc17bd2d582892e53a8875cd4 100644
--- a/pkgs/gpx/gpx-layer/default.nix
+++ b/pkgs/by-name/gp/gpx-layer/package.nix
@@ -2,12 +2,11 @@ {
   lib,
   stdenv,
   fetchFromGitHub,
-  buildPerlPackage,
+  perlPackages,
   shortenPerlShebang,
-  XMLParser,
 }:
 
-buildPerlPackage {
+perlPackages.buildPerlPackage {
   pname = "gpx-layer";
   version = "0-unstable-2013-09-19";
 
@@ -22,7 +21,7 @@   outputs = [ "out" ];
 
   nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang;
 
-  propagatedBuildInputs = [ XMLParser ];
+  propagatedBuildInputs = [ perlPackages.XMLParser ];
 
   preConfigure = "touch Makefile.PL";
 
diff --git a/pkgs/gpx/gpx-player/default.nix b/pkgs/by-name/gp/gpx-player/package.nix
rename from pkgs/gpx/gpx-player/default.nix
rename to pkgs/by-name/gp/gpx-player/package.nix
diff --git a/pkgs/gpx/gpx2video/default.nix b/pkgs/by-name/gp/gpx2video/package.nix
rename from pkgs/gpx/gpx2video/default.nix
rename to pkgs/by-name/gp/gpx2video/package.nix
diff --git a/pkgs/gpx/gpx2yaml/default.nix b/pkgs/by-name/gp/gpx2yaml/package.nix
rename from pkgs/gpx/gpx2yaml/default.nix
rename to pkgs/by-name/gp/gpx2yaml/package.nix
diff --git a/pkgs/gpx/gpxchart/default.nix b/pkgs/by-name/gp/gpxchart/package.nix
rename from pkgs/gpx/gpxchart/default.nix
rename to pkgs/by-name/gp/gpxchart/package.nix
diff --git a/pkgs/gpx/gpxeditor/default.nix b/pkgs/by-name/gp/gpxeditor/package.nix
rename from pkgs/gpx/gpxeditor/default.nix
rename to pkgs/by-name/gp/gpxeditor/package.nix
diff --git a/pkgs/gpx/gpxgo/default.nix b/pkgs/by-name/gp/gpxgo/package.nix
rename from pkgs/gpx/gpxgo/default.nix
rename to pkgs/by-name/gp/gpxgo/package.nix
diff --git a/pkgs/gpx/gpxlib/default.nix b/pkgs/by-name/gp/gpxlib/package.nix
rename from pkgs/gpx/gpxlib/default.nix
rename to pkgs/by-name/gp/gpxlib/package.nix
diff --git a/pkgs/gpx/gpxtools/default.nix b/pkgs/by-name/gp/gpxtools/package.nix
rename from pkgs/gpx/gpxtools/default.nix
rename to pkgs/by-name/gp/gpxtools/package.nix
diff --git a/pkgs/gpx/gpxtrackposter/default.nix b/pkgs/by-name/gp/gpxtrackposter/package.nix
rename from pkgs/gpx/gpxtrackposter/default.nix
rename to pkgs/by-name/gp/gpxtrackposter/package.nix
diff --git a/pkgs/gpx/gpxtrackposter/fix-localedir.patch b/pkgs/by-name/gp/gpxtrackposter/fix-localedir.patch
rename from pkgs/gpx/gpxtrackposter/fix-localedir.patch
rename to pkgs/by-name/gp/gpxtrackposter/fix-localedir.patch
diff --git a/pkgs/gpx/routeconverter/default.nix b/pkgs/by-name/ro/routeconverter/package.nix
rename from pkgs/gpx/routeconverter/default.nix
rename to pkgs/by-name/ro/routeconverter/package.nix
diff --git a/pkgs/gpx/trackanimation/default.nix b/pkgs/by-name/tr/trackanimation/package.nix
rename from pkgs/gpx/trackanimation/default.nix
rename to pkgs/by-name/tr/trackanimation/package.nix
diff --git a/pkgs/linguistics/dict2rest/default.nix b/pkgs/by-name/di/dict2rest/package.nix
rename from pkgs/linguistics/dict2rest/default.nix
rename to pkgs/by-name/di/dict2rest/package.nix
diff --git a/pkgs/linguistics/dict2rest/go.mod.patch b/pkgs/by-name/di/dict2rest/go.mod.patch
rename from pkgs/linguistics/dict2rest/go.mod.patch
rename to pkgs/by-name/di/dict2rest/go.mod.patch
diff --git a/pkgs/linguistics/distance/default.nix b/pkgs/by-name/di/distance/package.nix
rename from pkgs/linguistics/distance/default.nix
rename to pkgs/by-name/di/distance/package.nix
diff --git a/pkgs/linguistics/gdcv/default.nix b/pkgs/by-name/gd/gdcv/package.nix
rename from pkgs/linguistics/gdcv/default.nix
rename to pkgs/by-name/gd/gdcv/package.nix
diff --git a/pkgs/linguistics/goldendict/bin.nix b/pkgs/by-name/go/goldendict-bin/package.nix
rename from pkgs/linguistics/goldendict/bin.nix
rename to pkgs/by-name/go/goldendict-bin/package.nix
diff --git a/pkgs/linguistics/gt-bash-client/default.nix b/pkgs/by-name/gt/gt-bash-client/package.nix
rename from pkgs/linguistics/gt-bash-client/default.nix
rename to pkgs/by-name/gt/gt-bash-client/package.nix
diff --git a/pkgs/linguistics/gt4gd/default.nix b/pkgs/by-name/gt/gt4gd/package.nix
rename from pkgs/linguistics/gt4gd/default.nix
rename to pkgs/by-name/gt/gt4gd/package.nix
diff --git a/pkgs/linguistics/i18n-editor/default.nix b/pkgs/by-name/i1/i18n-editor/package.nix
rename from pkgs/linguistics/i18n-editor/default.nix
rename to pkgs/by-name/i1/i18n-editor/package.nix
diff --git a/pkgs/linguistics/lsdreader/default.nix b/pkgs/by-name/ls/lsdreader/package.nix
rename from pkgs/linguistics/lsdreader/default.nix
rename to pkgs/by-name/ls/lsdreader/package.nix
diff --git a/pkgs/linguistics/mikatools/default.nix b/pkgs/by-name/mi/mikatools/package.nix
rename from pkgs/linguistics/mikatools/default.nix
rename to pkgs/by-name/mi/mikatools/package.nix
diff --git a/pkgs/linguistics/odict/default.nix b/pkgs/by-name/od/odict/package.nix
rename from pkgs/linguistics/odict/default.nix
rename to pkgs/by-name/od/odict/package.nix
diff --git a/pkgs/linguistics/pytorchtext/default.nix b/pkgs/by-name/py/pytorchtext/package.nix
rename from pkgs/linguistics/pytorchtext/default.nix
rename to pkgs/by-name/py/pytorchtext/package.nix
diff --git a/pkgs/linguistics/revtok/default.nix b/pkgs/by-name/re/revtok/package.nix
rename from pkgs/linguistics/revtok/default.nix
rename to pkgs/by-name/re/revtok/package.nix
diff --git a/pkgs/linguistics/stardict-tools/default.nix b/pkgs/by-name/st/stardict-tools/package.nix
rename from pkgs/linguistics/stardict-tools/default.nix
rename to pkgs/by-name/st/stardict-tools/package.nix
diff --git a/pkgs/linguistics/tatoebatools/cli.patch b/pkgs/by-name/ta/tatoebatools/cli.patch
rename from pkgs/linguistics/tatoebatools/cli.patch
rename to pkgs/by-name/ta/tatoebatools/cli.patch
diff --git a/pkgs/linguistics/tatoebatools/default.nix b/pkgs/by-name/ta/tatoebatools/package.nix
rename from pkgs/linguistics/tatoebatools/default.nix
rename to pkgs/by-name/ta/tatoebatools/package.nix
diff --git a/pkgs/linguistics/tatoebatools/dont-check-lang-validity.patch b/pkgs/by-name/ta/tatoebatools/dont-check-lang-validity.patch
rename from pkgs/linguistics/tatoebatools/dont-check-lang-validity.patch
rename to pkgs/by-name/ta/tatoebatools/dont-check-lang-validity.patch
diff --git a/pkgs/linguistics/ttb/Cargo.lock b/pkgs/by-name/tt/ttb/Cargo.lock
rename from pkgs/linguistics/ttb/Cargo.lock
rename to pkgs/by-name/tt/ttb/Cargo.lock
diff --git a/pkgs/linguistics/ttb/default.nix b/pkgs/by-name/tt/ttb/package.nix
rename from pkgs/linguistics/ttb/default.nix
rename to pkgs/by-name/tt/ttb/package.nix
diff --git a/pkgs/linguistics/wikitextprocessor/default.nix b/pkgs/by-name/wi/wikitextprocessor/package.nix
rename from pkgs/linguistics/wikitextprocessor/default.nix
rename to pkgs/by-name/wi/wikitextprocessor/package.nix
diff --git a/pkgs/linguistics/wiktextract/default.nix b/pkgs/by-name/wi/wiktextract/package.nix
rename from pkgs/linguistics/wiktextract/default.nix
rename to pkgs/by-name/wi/wiktextract/package.nix
diff --git a/pkgs/linguistics/wiktfinnish/default.nix b/pkgs/by-name/wi/wiktfinnish/package.nix
rename from pkgs/linguistics/wiktfinnish/default.nix
rename to pkgs/by-name/wi/wiktfinnish/package.nix
diff --git a/pkgs/linguistics/zdict/default.nix b/pkgs/by-name/zd/zdict/package.nix
rename from pkgs/linguistics/zdict/default.nix
rename to pkgs/by-name/zd/zdict/package.nix
diff --git a/pkgs/misc/aamath/default.nix b/pkgs/by-name/aa/aamath/package.nix
rename from pkgs/misc/aamath/default.nix
rename to pkgs/by-name/aa/aamath/package.nix
diff --git a/pkgs/misc/acp/default.nix b/pkgs/by-name/ac/acp/package.nix
rename from pkgs/misc/acp/default.nix
rename to pkgs/by-name/ac/acp/package.nix
diff --git a/pkgs/misc/ajv-cli/default.nix b/pkgs/by-name/aj/ajv-cli/package.nix
rename from pkgs/misc/ajv-cli/default.nix
rename to pkgs/by-name/aj/ajv-cli/package.nix
diff --git a/pkgs/misc/apibackuper/default.nix b/pkgs/by-name/ap/apibackuper/package.nix
rename from pkgs/misc/apibackuper/default.nix
rename to pkgs/by-name/ap/apibackuper/package.nix
diff --git a/pkgs/misc/arduinojson/default.nix b/pkgs/by-name/ar/arduinojson/package.nix
rename from pkgs/misc/arduinojson/default.nix
rename to pkgs/by-name/ar/arduinojson/package.nix
diff --git a/pkgs/misc/ascii-dash/default.nix b/pkgs/by-name/as/ascii-dash/package.nix
rename from pkgs/misc/ascii-dash/default.nix
rename to pkgs/by-name/as/ascii-dash/package.nix
diff --git a/pkgs/misc/bash-completor/default.nix b/pkgs/by-name/ba/bash-completor/package.nix
rename from pkgs/misc/bash-completor/default.nix
rename to pkgs/by-name/ba/bash-completor/package.nix
diff --git a/pkgs/misc/brink/default.nix b/pkgs/by-name/br/brink/package.nix
rename from pkgs/misc/brink/default.nix
rename to pkgs/by-name/br/brink/package.nix
diff --git a/pkgs/misc/btpd/default.nix b/pkgs/by-name/bt/btpd/package.nix
rename from pkgs/misc/btpd/default.nix
rename to pkgs/by-name/bt/btpd/package.nix
diff --git a/pkgs/misc/bwh/default.nix b/pkgs/by-name/bw/bwh/package.nix
rename from pkgs/misc/bwh/default.nix
rename to pkgs/by-name/bw/bwh/package.nix
diff --git a/pkgs/misc/capture2text/default.nix b/pkgs/by-name/ca/capture2text/package.nix
rename from pkgs/misc/capture2text/default.nix
rename to pkgs/by-name/ca/capture2text/package.nix
index 4a2a06878a040fec02e0125f09ac9241a0042031..5dc7063856f7f1a5bd7d4fb2dfc53ae3d6668ce7 100644
--- a/pkgs/misc/capture2text/default.nix
+++ b/pkgs/by-name/ca/capture2text/package.nix
@@ -2,11 +2,10 @@ {
   lib,
   stdenv,
   fetchurl,
-  qmake,
+  qt5,
   unzip,
   leptonica,
   tesseract4,
-  wrapQtAppsHook,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -48,9 +47,9 @@     tesseract4
   ];
 
   nativeBuildInputs = [
-    qmake
     unzip
-    wrapQtAppsHook
+    qt5.qmake
+    qt5.wrapQtAppsHook
   ];
 
   qmakeFlags = [
diff --git a/pkgs/misc/cfiles/default.nix b/pkgs/by-name/cf/cfiles/package.nix
rename from pkgs/misc/cfiles/default.nix
rename to pkgs/by-name/cf/cfiles/package.nix
diff --git a/pkgs/misc/chasquid/default.nix b/pkgs/by-name/ch/chasquid/package.nix
rename from pkgs/misc/chasquid/default.nix
rename to pkgs/by-name/ch/chasquid/package.nix
diff --git a/pkgs/misc/csv2html/default.nix b/pkgs/by-name/cs/csv2html/package.nix
rename from pkgs/misc/csv2html/default.nix
rename to pkgs/by-name/cs/csv2html/package.nix
diff --git a/pkgs/misc/csvtools/default.nix b/pkgs/by-name/cs/csvtools/package.nix
rename from pkgs/misc/csvtools/default.nix
rename to pkgs/by-name/cs/csvtools/package.nix
diff --git a/pkgs/misc/diagon/default.nix b/pkgs/by-name/di/diagon/package.nix
rename from pkgs/misc/diagon/default.nix
rename to pkgs/by-name/di/diagon/package.nix
diff --git a/pkgs/misc/diagon/deps.patch b/pkgs/by-name/di/diagon/deps.patch
rename from pkgs/misc/diagon/deps.patch
rename to pkgs/by-name/di/diagon/deps.patch
diff --git a/pkgs/misc/dns-filter/default.nix b/pkgs/by-name/dn/dns-filter/package.nix
rename from pkgs/misc/dns-filter/default.nix
rename to pkgs/by-name/dn/dns-filter/package.nix
diff --git a/pkgs/misc/docker-reg-tool/default.nix b/pkgs/by-name/do/docker-reg-tool/package.nix
rename from pkgs/misc/docker-reg-tool/default.nix
rename to pkgs/by-name/do/docker-reg-tool/package.nix
diff --git a/pkgs/misc/docx2csv/default.nix b/pkgs/by-name/do/docx2csv/package.nix
rename from pkgs/misc/docx2csv/default.nix
rename to pkgs/by-name/do/docx2csv/package.nix
diff --git a/pkgs/misc/exercisediary/default.nix b/pkgs/by-name/ex/exercisediary/package.nix
rename from pkgs/misc/exercisediary/default.nix
rename to pkgs/by-name/ex/exercisediary/package.nix
diff --git a/pkgs/misc/ffs/default.nix b/pkgs/by-name/ff/ffs/package.nix
rename from pkgs/misc/ffs/default.nix
rename to pkgs/by-name/ff/ffs/package.nix
diff --git a/pkgs/misc/freeopcua/default.nix b/pkgs/by-name/fr/freeopcua/package.nix
rename from pkgs/misc/freeopcua/default.nix
rename to pkgs/by-name/fr/freeopcua/package.nix
diff --git a/pkgs/misc/gaiagpsclient/default.nix b/pkgs/by-name/ga/gaiagpsclient/package.nix
rename from pkgs/misc/gaiagpsclient/default.nix
rename to pkgs/by-name/ga/gaiagpsclient/package.nix
diff --git a/pkgs/misc/git-tui/default.nix b/pkgs/by-name/gi/git-tui/package.nix
rename from pkgs/misc/git-tui/default.nix
rename to pkgs/by-name/gi/git-tui/package.nix
diff --git a/pkgs/misc/git-tui/subprocess.patch b/pkgs/by-name/gi/git-tui/subprocess.patch
rename from pkgs/misc/git-tui/subprocess.patch
rename to pkgs/by-name/gi/git-tui/subprocess.patch
diff --git a/pkgs/misc/goto/default.nix b/pkgs/by-name/go/goto/package.nix
rename from pkgs/misc/goto/default.nix
rename to pkgs/by-name/go/goto/package.nix
diff --git a/pkgs/misc/graphene/default.nix b/pkgs/by-name/gr/graphene/package.nix
rename from pkgs/misc/graphene/default.nix
rename to pkgs/by-name/gr/graphene/package.nix
diff --git a/pkgs/misc/headscale-webui/default.nix b/pkgs/by-name/he/headscale-webui/package.nix
rename from pkgs/misc/headscale-webui/default.nix
rename to pkgs/by-name/he/headscale-webui/package.nix
diff --git a/pkgs/misc/headscale-webui/pnpm-lock.yaml.patch b/pkgs/by-name/he/headscale-webui/pnpm-lock.yaml.patch
rename from pkgs/misc/headscale-webui/pnpm-lock.yaml.patch
rename to pkgs/by-name/he/headscale-webui/pnpm-lock.yaml.patch
diff --git a/pkgs/misc/heapusage/default.nix b/pkgs/by-name/he/heapusage/package.nix
rename from pkgs/misc/heapusage/default.nix
rename to pkgs/by-name/he/heapusage/package.nix
diff --git a/pkgs/misc/how-to-use-pvs-studio-free/default.nix b/pkgs/by-name/ho/how-to-use-pvs-studio-free/package.nix
rename from pkgs/misc/how-to-use-pvs-studio-free/default.nix
rename to pkgs/by-name/ho/how-to-use-pvs-studio-free/package.nix
diff --git a/pkgs/misc/how-to-use-pvs-studio-free/setup-hook.sh b/pkgs/by-name/ho/how-to-use-pvs-studio-free/setup-hook.sh
rename from pkgs/misc/how-to-use-pvs-studio-free/setup-hook.sh
rename to pkgs/by-name/ho/how-to-use-pvs-studio-free/setup-hook.sh
diff --git a/pkgs/misc/huami-token/default.nix b/pkgs/by-name/hu/huami-token/package.nix
rename from pkgs/misc/huami-token/default.nix
rename to pkgs/by-name/hu/huami-token/package.nix
diff --git a/pkgs/misc/ionscale/default.nix b/pkgs/by-name/io/ionscale/package.nix
rename from pkgs/misc/ionscale/default.nix
rename to pkgs/by-name/io/ionscale/package.nix
diff --git a/pkgs/misc/ish/default.nix b/pkgs/by-name/is/ish/package.nix
rename from pkgs/misc/ish/default.nix
rename to pkgs/by-name/is/ish/package.nix
diff --git a/pkgs/misc/json-tui/default.nix b/pkgs/by-name/js/json-tui/package.nix
rename from pkgs/misc/json-tui/default.nix
rename to pkgs/by-name/js/json-tui/package.nix
diff --git a/pkgs/misc/json-tui/no-deps.patch b/pkgs/by-name/js/json-tui/no-deps.patch
rename from pkgs/misc/json-tui/no-deps.patch
rename to pkgs/by-name/js/json-tui/no-deps.patch
diff --git a/pkgs/misc/lazyscraper/default.nix b/pkgs/by-name/la/lazyscraper/package.nix
rename from pkgs/misc/lazyscraper/default.nix
rename to pkgs/by-name/la/lazyscraper/package.nix
diff --git a/pkgs/misc/libmdbx/default.nix b/pkgs/by-name/li/libmdbx/package.nix
rename from pkgs/misc/libmdbx/default.nix
rename to pkgs/by-name/li/libmdbx/package.nix
diff --git a/pkgs/misc/libnbcompat/default.nix b/pkgs/by-name/li/libnbcompat/package.nix
rename from pkgs/misc/libnbcompat/default.nix
rename to pkgs/by-name/li/libnbcompat/package.nix
diff --git a/pkgs/misc/md2html/default.nix b/pkgs/by-name/md/md2html/package.nix
rename from pkgs/misc/md2html/default.nix
rename to pkgs/by-name/md/md2html/package.nix
diff --git a/pkgs/misc/messenger-cli/default.nix b/pkgs/by-name/me/messenger-cli/package.nix
rename from pkgs/misc/messenger-cli/default.nix
rename to pkgs/by-name/me/messenger-cli/package.nix
diff --git a/pkgs/misc/messenger-gtk/default.nix b/pkgs/by-name/me/messenger-gtk/package.nix
rename from pkgs/misc/messenger-gtk/default.nix
rename to pkgs/by-name/me/messenger-gtk/package.nix
diff --git a/pkgs/misc/miband4/default.nix b/pkgs/by-name/mi/miband4/package.nix
rename from pkgs/misc/miband4/default.nix
rename to pkgs/by-name/mi/miband4/package.nix
diff --git a/pkgs/misc/mitzasql/default.nix b/pkgs/by-name/mi/mitzasql/package.nix
rename from pkgs/misc/mitzasql/default.nix
rename to pkgs/by-name/mi/mitzasql/package.nix
diff --git a/pkgs/misc/mjs/default.nix b/pkgs/by-name/mj/mjs/package.nix
rename from pkgs/misc/mjs/default.nix
rename to pkgs/by-name/mj/mjs/package.nix
diff --git a/pkgs/misc/modbus-tools/Cargo.lock b/pkgs/by-name/mo/modbus-tools/Cargo.lock
rename from pkgs/misc/modbus-tools/Cargo.lock
rename to pkgs/by-name/mo/modbus-tools/Cargo.lock
diff --git a/pkgs/misc/modbus-tools/default.nix b/pkgs/by-name/mo/modbus-tools/package.nix
rename from pkgs/misc/modbus-tools/default.nix
rename to pkgs/by-name/mo/modbus-tools/package.nix
diff --git a/pkgs/misc/modbus_sim_cli/default.nix b/pkgs/by-name/mo/modbus_sim_cli/package.nix
rename from pkgs/misc/modbus_sim_cli/default.nix
rename to pkgs/by-name/mo/modbus_sim_cli/package.nix
index d5e98a1c2f9598469d5cf6aaba14f737d129cb4a..6586e842b6f18f3c463344046de90725a24222cb 100644
--- a/pkgs/misc/modbus_sim_cli/default.nix
+++ b/pkgs/by-name/mo/modbus_sim_cli/package.nix
@@ -1,11 +1,11 @@
 {
   lib,
-  python3Packages,
+  python310Packages,
   fetchFromGitHub,
   writableTmpDirAsHomeHook,
 }:
 
-python3Packages.buildPythonApplication {
+python310Packages.buildPythonApplication {
   pname = "modbus_sim_cli";
   version = "0-unstable-2019-02-27";
   pyproject = true;
@@ -23,11 +23,11 @@     substituteInPlace modbus_sim/utils/config_parser.py \
       --replace-fail "yaml.load(conffile.read())" "yaml.safe_load(conffile)"
   '';
 
-  build-system = with python3Packages; [ setuptools ];
+  build-system = with python310Packages; [ setuptools ];
 
   nativeBuildInputs = [ writableTmpDirAsHomeHook ];
 
-  dependencies = with python3Packages; [
+  dependencies = with python310Packages; [
     coloredlogs
     modbus-tk
     pyyaml
diff --git a/pkgs/misc/morse-talk/default.nix b/pkgs/by-name/mo/morse-talk/package.nix
rename from pkgs/misc/morse-talk/default.nix
rename to pkgs/by-name/mo/morse-talk/package.nix
diff --git a/pkgs/misc/msg-cli/default.nix b/pkgs/by-name/ms/msg-cli/package.nix
rename from pkgs/misc/msg-cli/default.nix
rename to pkgs/by-name/ms/msg-cli/package.nix
diff --git a/pkgs/misc/musig/default.nix b/pkgs/by-name/mu/musig/package.nix
rename from pkgs/misc/musig/default.nix
rename to pkgs/by-name/mu/musig/package.nix
diff --git a/pkgs/misc/mysql-to-sqlite3/default.nix b/pkgs/by-name/my/mysql-to-sqlite3/package.nix
rename from pkgs/misc/mysql-to-sqlite3/default.nix
rename to pkgs/by-name/my/mysql-to-sqlite3/package.nix
diff --git a/pkgs/misc/nanodns/default.nix b/pkgs/by-name/na/nanodns/package.nix
rename from pkgs/misc/nanodns/default.nix
rename to pkgs/by-name/na/nanodns/package.nix
diff --git a/pkgs/misc/nanodns/go.mod.patch b/pkgs/by-name/na/nanodns/go.mod.patch
rename from pkgs/misc/nanodns/go.mod.patch
rename to pkgs/by-name/na/nanodns/go.mod.patch
diff --git a/pkgs/misc/nmtree/default.nix b/pkgs/by-name/nm/nmtree/package.nix
rename from pkgs/misc/nmtree/default.nix
rename to pkgs/by-name/nm/nmtree/package.nix
diff --git a/pkgs/misc/objlab/default.nix b/pkgs/by-name/ob/objlab/package.nix
rename from pkgs/misc/objlab/default.nix
rename to pkgs/by-name/ob/objlab/package.nix
diff --git a/pkgs/misc/ocelotgui/default.nix b/pkgs/by-name/oc/ocelotgui/package.nix
rename from pkgs/misc/ocelotgui/default.nix
rename to pkgs/by-name/oc/ocelotgui/package.nix
index 405960385ca8305184d5be2c693e74920cfb9828..ae0f992f68684bdac58468973bd5c184ee0165cf 100644
--- a/pkgs/misc/ocelotgui/default.nix
+++ b/pkgs/by-name/oc/ocelotgui/package.nix
@@ -5,7 +5,7 @@   fetchFromGitHub,
   cmake,
   desktopToDarwinBundle,
   mariadb-connector-c,
-  wrapQtAppsHook,
+  qt5,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -21,7 +21,7 @@   };
 
   nativeBuildInputs = [
     cmake
-    wrapQtAppsHook
+    qt5.wrapQtAppsHook
   ] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle;
 
   buildInputs = [ mariadb-connector-c ];
diff --git a/pkgs/misc/opcua-stack/default.nix b/pkgs/by-name/op/opcua-stack/package.nix
rename from pkgs/misc/opcua-stack/default.nix
rename to pkgs/by-name/op/opcua-stack/package.nix
index a0dbf6e878dadb50cd1c71877c0ec062f70bf6ba..b3fb3580d8a17f0f99c076392802564d41674a34 100644
--- a/pkgs/misc/opcua-stack/default.nix
+++ b/pkgs/by-name/op/opcua-stack/package.nix
@@ -3,31 +3,33 @@   lib,
   stdenv,
   fetchFromGitHub,
   cmake,
-  boost,
+  boost179,
   openssl,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "opcua-stack";
-  version = "3.8.1";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "ASNeG";
     repo = "OpcUaStack";
     tag = finalAttrs.version;
-    hash = "sha256-czpuuT9DeZaYo2Q8Y/vW1kAsIiFhRDSKwVBUcFgb9iQ=";
+    hash = "sha256-/PiawQ3kXK4wB/PxQ5EJJsuOOFZdkr/BeQ3zbl7N7fs=";
   };
 
   sourceRoot = "${finalAttrs.src.name}/src";
 
   postPatch = ''
     substituteInPlace CMakeLists.txt --replace-fail "/usr" "$out"
+    substituteInPlace OpcUaStackCore/CMakeLists.txt --replace-fail "/usr" "$out"
+    substituteInPlace OpcUaStackServer/CMakeLists.txt --replace-fail "/usr" "$out"
   '';
 
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [
-    boost
+    boost179
     openssl
   ];
 
diff --git a/pkgs/misc/opcua/default.nix b/pkgs/by-name/op/opcua/package.nix
rename from pkgs/misc/opcua/default.nix
rename to pkgs/by-name/op/opcua/package.nix
diff --git a/pkgs/misc/playonmac/default.nix b/pkgs/by-name/pl/playonmac/package.nix
rename from pkgs/misc/playonmac/default.nix
rename to pkgs/by-name/pl/playonmac/package.nix
diff --git a/pkgs/misc/plotjuggler/default.nix b/pkgs/by-name/pl/plotjuggler/package.nix
rename from pkgs/misc/plotjuggler/default.nix
rename to pkgs/by-name/pl/plotjuggler/package.nix
index 1231d6093bc42d2884777d1ad4953ca589317d17..0887cdbdc3d088edea13e63862be6837864e5c67 100644
--- a/pkgs/misc/plotjuggler/default.nix
+++ b/pkgs/by-name/pl/plotjuggler/package.nix
@@ -4,10 +4,7 @@   stdenv,
   fetchFromGitHub,
   cmake,
   desktopToDarwinBundle,
-  wrapQtAppsHook,
-  qtsvg,
-  qtwebsockets,
-  qtx11extras,
+  qt5,
   mosquitto,
   libdwarf,
   protobuf,
@@ -35,18 +32,18 @@   '';
 
   nativeBuildInputs = [
     cmake
-    wrapQtAppsHook
+    qt5.wrapQtAppsHook
   ] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle;
 
   buildInputs = [
-    qtsvg
-    qtwebsockets
+    qt5.qtsvg
+    qt5.qtwebsockets
     mosquitto
     libdwarf
     protobuf
     zeromq
     zstd
-  ] ++ lib.optionals stdenv.isLinux [ qtx11extras ];
+  ] ++ lib.optionals stdenv.isLinux [ qt5.qtx11extras ];
 
   meta = {
     description = "The Time Series Visualization Tool";
diff --git a/pkgs/misc/pnoise/default.nix b/pkgs/by-name/pn/pnoise/package.nix
rename from pkgs/misc/pnoise/default.nix
rename to pkgs/by-name/pn/pnoise/package.nix
diff --git a/pkgs/misc/ptunnel/default.nix b/pkgs/by-name/pt/ptunnel/package.nix
rename from pkgs/misc/ptunnel/default.nix
rename to pkgs/by-name/pt/ptunnel/package.nix
diff --git a/pkgs/misc/px/default.nix b/pkgs/by-name/px/px/package.nix
rename from pkgs/misc/px/default.nix
rename to pkgs/by-name/px/px/package.nix
diff --git a/pkgs/misc/qdia/default.nix b/pkgs/by-name/qd/qdia/package.nix
rename from pkgs/misc/qdia/default.nix
rename to pkgs/by-name/qd/qdia/package.nix
diff --git a/pkgs/misc/qoiview/default.nix b/pkgs/by-name/qo/qoiview/package.nix
rename from pkgs/misc/qoiview/default.nix
rename to pkgs/by-name/qo/qoiview/package.nix
diff --git a/pkgs/misc/qstudio/default.nix b/pkgs/by-name/qs/qstudio/package.nix
rename from pkgs/misc/qstudio/default.nix
rename to pkgs/by-name/qs/qstudio/package.nix
diff --git a/pkgs/misc/repolocli/cargo-lock.patch b/pkgs/by-name/re/repolocli/cargo-lock.patch
rename from pkgs/misc/repolocli/cargo-lock.patch
rename to pkgs/by-name/re/repolocli/cargo-lock.patch
diff --git a/pkgs/misc/repolocli/default.nix b/pkgs/by-name/re/repolocli/package.nix
rename from pkgs/misc/repolocli/default.nix
rename to pkgs/by-name/re/repolocli/package.nix
diff --git a/pkgs/misc/rhttp/default.nix b/pkgs/by-name/rh/rhttp/package.nix
rename from pkgs/misc/rhttp/default.nix
rename to pkgs/by-name/rh/rhttp/package.nix
diff --git a/pkgs/misc/riffraff/default.nix b/pkgs/by-name/ri/riffraff/package.nix
rename from pkgs/misc/riffraff/default.nix
rename to pkgs/by-name/ri/riffraff/package.nix
diff --git a/pkgs/misc/rodnik/default.nix b/pkgs/by-name/ro/rodnik/package.nix
rename from pkgs/misc/rodnik/default.nix
rename to pkgs/by-name/ro/rodnik/package.nix
diff --git a/pkgs/misc/rst2txt/default.nix b/pkgs/by-name/rs/rst2txt/package.nix
rename from pkgs/misc/rst2txt/default.nix
rename to pkgs/by-name/rs/rst2txt/package.nix
diff --git a/pkgs/misc/sdorfehs/default.nix b/pkgs/by-name/sd/sdorfehs/package.nix
rename from pkgs/misc/sdorfehs/default.nix
rename to pkgs/by-name/sd/sdorfehs/package.nix
diff --git a/pkgs/misc/serverpp/default.nix b/pkgs/by-name/se/serverpp/package.nix
rename from pkgs/misc/serverpp/default.nix
rename to pkgs/by-name/se/serverpp/package.nix
diff --git a/pkgs/misc/shellprof/default.nix b/pkgs/by-name/sh/shellprof/package.nix
rename from pkgs/misc/shellprof/default.nix
rename to pkgs/by-name/sh/shellprof/package.nix
diff --git a/pkgs/misc/shifu/default.nix b/pkgs/by-name/sh/shifu/package.nix
rename from pkgs/misc/shifu/default.nix
rename to pkgs/by-name/sh/shifu/package.nix
diff --git a/pkgs/misc/socketcand/default.nix b/pkgs/by-name/so/socketcand/package.nix
rename from pkgs/misc/socketcand/default.nix
rename to pkgs/by-name/so/socketcand/package.nix
diff --git a/pkgs/misc/subprocess/default.nix b/pkgs/by-name/su/subprocess/package.nix
rename from pkgs/misc/subprocess/default.nix
rename to pkgs/by-name/su/subprocess/package.nix
diff --git a/pkgs/misc/tcvt/default.nix b/pkgs/by-name/tc/tcvt/package.nix
rename from pkgs/misc/tcvt/default.nix
rename to pkgs/by-name/tc/tcvt/package.nix
diff --git a/pkgs/misc/telegabber/default.nix b/pkgs/by-name/te/telegabber/package.nix
rename from pkgs/misc/telegabber/default.nix
rename to pkgs/by-name/te/telegabber/package.nix
diff --git a/pkgs/misc/telegram-send/default.nix b/pkgs/by-name/te/telegram-send/package.nix
rename from pkgs/misc/telegram-send/default.nix
rename to pkgs/by-name/te/telegram-send/package.nix
diff --git a/pkgs/misc/telnetpp/default.nix b/pkgs/by-name/te/telnetpp/package.nix
rename from pkgs/misc/telnetpp/default.nix
rename to pkgs/by-name/te/telnetpp/package.nix
diff --git a/pkgs/misc/terminalpp/default.nix b/pkgs/by-name/te/terminalpp/package.nix
rename from pkgs/misc/terminalpp/default.nix
rename to pkgs/by-name/te/terminalpp/package.nix
diff --git a/pkgs/misc/tewi/default.nix b/pkgs/by-name/te/tewi/package.nix
rename from pkgs/misc/tewi/default.nix
rename to pkgs/by-name/te/tewi/package.nix
diff --git a/pkgs/misc/tg-spam/default.nix b/pkgs/by-name/tg/tg-spam/package.nix
rename from pkgs/misc/tg-spam/default.nix
rename to pkgs/by-name/tg/tg-spam/package.nix
diff --git a/pkgs/misc/tiny-frpc/default.nix b/pkgs/by-name/ti/tiny-frpc/package.nix
rename from pkgs/misc/tiny-frpc/default.nix
rename to pkgs/by-name/ti/tiny-frpc/package.nix
diff --git a/pkgs/misc/tinyflux/default.nix b/pkgs/by-name/ti/tinyflux/package.nix
rename from pkgs/misc/tinyflux/default.nix
rename to pkgs/by-name/ti/tinyflux/package.nix
diff --git a/pkgs/misc/tlstunnel/default.nix b/pkgs/by-name/tl/tlstunnel/package.nix
rename from pkgs/misc/tlstunnel/default.nix
rename to pkgs/by-name/tl/tlstunnel/package.nix
diff --git a/pkgs/misc/tsnsrv/default.nix b/pkgs/by-name/ts/tsnsrv/package.nix
rename from pkgs/misc/tsnsrv/default.nix
rename to pkgs/by-name/ts/tsnsrv/package.nix
diff --git a/pkgs/misc/turbo/default.nix b/pkgs/by-name/tu/turbo/package.nix
rename from pkgs/misc/turbo/default.nix
rename to pkgs/by-name/tu/turbo/package.nix
diff --git a/pkgs/misc/tvision/default.nix b/pkgs/by-name/tv/tvision/package.nix
rename from pkgs/misc/tvision/default.nix
rename to pkgs/by-name/tv/tvision/package.nix
diff --git a/pkgs/misc/wik/default.nix b/pkgs/by-name/wi/wik/package.nix
rename from pkgs/misc/wik/default.nix
rename to pkgs/by-name/wi/wik/package.nix
diff --git a/pkgs/misc/wirefire/default.nix b/pkgs/by-name/wi/wirefire/package.nix
rename from pkgs/misc/wirefire/default.nix
rename to pkgs/by-name/wi/wirefire/package.nix
diff --git a/pkgs/misc/worm/default.nix b/pkgs/by-name/wo/worm/package.nix
rename from pkgs/misc/worm/default.nix
rename to pkgs/by-name/wo/worm/package.nix
index 192cb2fc00d7702d3ad5d24269ce641a4e994061..897906a904a8fabd472d3efc6d76c9c1b4188adf 100644
--- a/pkgs/misc/worm/default.nix
+++ b/pkgs/by-name/wo/worm/package.nix
@@ -1,39 +1,32 @@
 {
   lib,
   stdenv,
-  nimPackages,
+  buildNimPackage,
   fetchFromGitHub,
   pkg-config,
   xorg,
 }:
 
-nimPackages.buildNimPackage rec {
+buildNimPackage rec {
   pname = "worm";
-  version = "0.3.2";
-  nimBinOnly = true;
+  version = "0.3.3";
 
   src = fetchFromGitHub {
     owner = "codic12";
     repo = "worm";
     tag = "v${version}";
-    hash = "sha256-fm969whcYILMphR8Vr8oarx2iEJiIhzifU2wNYaU/Kg=";
+    hash = "sha256-DnmFDFVjya24e3PcIOa0nAeKfbfCgQ73sKaNGe4zErg=";
   };
 
+  lockFile = ./lock.json;
+
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs =
-    with nimPackages;
-    [
-      pixie
-      regex
-      unicodedb
-      x11
-    ]
-    ++ (with xorg; [
-      libX11
-      libXft
-      libXinerama
-    ]);
+  buildInputs = with xorg; [
+    libX11
+    libXft
+    libXinerama
+  ];
 
   postInstall = ''
     install -Dm644 assets/worm.desktop -t $out/share/applications
diff --git a/pkgs/misc/wptools/default.nix b/pkgs/by-name/wp/wptools/package.nix
rename from pkgs/misc/wptools/default.nix
rename to pkgs/by-name/wp/wptools/package.nix
diff --git a/pkgs/misc/xfractint/default.nix b/pkgs/by-name/xf/xfractint/package.nix
rename from pkgs/misc/xfractint/default.nix
rename to pkgs/by-name/xf/xfractint/package.nix
diff --git a/pkgs/misc/xtr/Cargo.lock b/pkgs/by-name/xt/xtr/Cargo.lock
rename from pkgs/misc/xtr/Cargo.lock
rename to pkgs/by-name/xt/xtr/Cargo.lock
diff --git a/pkgs/misc/xtr/default.nix b/pkgs/by-name/xt/xtr/package.nix
rename from pkgs/misc/xtr/default.nix
rename to pkgs/by-name/xt/xtr/package.nix
diff --git a/pkgs/misc/youtimetrack/default.nix b/pkgs/by-name/yo/youtimetrack/package.nix
rename from pkgs/misc/youtimetrack/default.nix
rename to pkgs/by-name/yo/youtimetrack/package.nix
diff --git a/pkgs/misc/zwave-js-ui/default.nix b/pkgs/by-name/zw/zwave-js-ui/package.nix
rename from pkgs/misc/zwave-js-ui/default.nix
rename to pkgs/by-name/zw/zwave-js-ui/package.nix
diff --git a/pkgs/mqtt/akasa/cargo-lock.patch b/pkgs/by-name/ak/akasa/cargo-lock.patch
rename from pkgs/mqtt/akasa/cargo-lock.patch
rename to pkgs/by-name/ak/akasa/cargo-lock.patch
diff --git a/pkgs/mqtt/akasa/default.nix b/pkgs/by-name/ak/akasa/package.nix
rename from pkgs/mqtt/akasa/default.nix
rename to pkgs/by-name/ak/akasa/package.nix
diff --git a/pkgs/mqtt/amqtt/default.nix b/pkgs/by-name/am/amqtt/package.nix
rename from pkgs/mqtt/amqtt/default.nix
rename to pkgs/by-name/am/amqtt/package.nix
diff --git a/pkgs/mqtt/comqtt/default.nix b/pkgs/by-name/co/comqtt/package.nix
rename from pkgs/mqtt/comqtt/default.nix
rename to pkgs/by-name/co/comqtt/package.nix
diff --git a/pkgs/mqtt/go-mosquitto/default.nix b/pkgs/by-name/go/go-mosquitto/package.nix
rename from pkgs/mqtt/go-mosquitto/default.nix
rename to pkgs/by-name/go/go-mosquitto/package.nix
diff --git a/pkgs/mqtt/go-mqtt-to-influxdb/default.nix b/pkgs/by-name/go/go-mqtt-to-influxdb/package.nix
rename from pkgs/mqtt/go-mqtt-to-influxdb/default.nix
rename to pkgs/by-name/go/go-mqtt-to-influxdb/package.nix
diff --git a/pkgs/mqtt/hmq/default.nix b/pkgs/by-name/hm/hmq/package.nix
rename from pkgs/mqtt/hmq/default.nix
rename to pkgs/by-name/hm/hmq/package.nix
diff --git a/pkgs/mqtt/ioxy/default.nix b/pkgs/by-name/io/ioxy/package.nix
rename from pkgs/mqtt/ioxy/default.nix
rename to pkgs/by-name/io/ioxy/package.nix
diff --git a/pkgs/mqtt/janus-mqtt-proxy/default.nix b/pkgs/by-name/ja/janus-mqtt-proxy/package.nix
rename from pkgs/mqtt/janus-mqtt-proxy/default.nix
rename to pkgs/by-name/ja/janus-mqtt-proxy/package.nix
diff --git a/pkgs/mqtt/janus-mqtt-proxy/go.mod.patch b/pkgs/by-name/ja/janus-mqtt-proxy/go.mod.patch
rename from pkgs/mqtt/janus-mqtt-proxy/go.mod.patch
rename to pkgs/by-name/ja/janus-mqtt-proxy/go.mod.patch
diff --git a/pkgs/mqtt/libumqtt/default.nix b/pkgs/by-name/li/libumqtt/package.nix
rename from pkgs/mqtt/libumqtt/default.nix
rename to pkgs/by-name/li/libumqtt/package.nix
diff --git a/pkgs/mqtt/mochi/default.nix b/pkgs/by-name/mo/mochi/package.nix
rename from pkgs/mqtt/mochi/default.nix
rename to pkgs/by-name/mo/mochi/package.nix
diff --git a/pkgs/mqtt/mongoose/default.nix b/pkgs/by-name/mo/mongoose/package.nix
rename from pkgs/mqtt/mongoose/default.nix
rename to pkgs/by-name/mo/mongoose/package.nix
diff --git a/pkgs/mqtt/mproxy/default.nix b/pkgs/by-name/mp/mproxy/package.nix
rename from pkgs/mqtt/mproxy/default.nix
rename to pkgs/by-name/mp/mproxy/package.nix
diff --git a/pkgs/mqtt/mqcontrol/default.nix b/pkgs/by-name/mq/mqcontrol/package.nix
rename from pkgs/mqtt/mqcontrol/default.nix
rename to pkgs/by-name/mq/mqcontrol/package.nix
diff --git a/pkgs/mqtt/mqtt-benchmark/default.nix b/pkgs/by-name/mq/mqtt-benchmark/package.nix
rename from pkgs/mqtt/mqtt-benchmark/default.nix
rename to pkgs/by-name/mq/mqtt-benchmark/package.nix
diff --git a/pkgs/mqtt/mqtt-c/default.nix b/pkgs/by-name/mq/mqtt-c/package.nix
rename from pkgs/mqtt/mqtt-c/default.nix
rename to pkgs/by-name/mq/mqtt-c/package.nix
diff --git a/pkgs/mqtt/mqtt-cli/default.nix b/pkgs/by-name/mq/mqtt-cli/package.nix
rename from pkgs/mqtt/mqtt-cli/default.nix
rename to pkgs/by-name/mq/mqtt-cli/package.nix
diff --git a/pkgs/mqtt/mqtt-executor/default.nix b/pkgs/by-name/mq/mqtt-executor/package.nix
rename from pkgs/mqtt/mqtt-executor/default.nix
rename to pkgs/by-name/mq/mqtt-executor/package.nix
diff --git a/pkgs/mqtt/mqtt-executor/go.mod.patch b/pkgs/by-name/mq/mqtt-executor/go.mod.patch
rename from pkgs/mqtt/mqtt-executor/go.mod.patch
rename to pkgs/by-name/mq/mqtt-executor/go.mod.patch
diff --git a/pkgs/mqtt/mqtt-launcher/default.nix b/pkgs/by-name/mq/mqtt-launcher/package.nix
rename from pkgs/mqtt/mqtt-launcher/default.nix
rename to pkgs/by-name/mq/mqtt-launcher/package.nix
diff --git a/pkgs/mqtt/mqtt-logger/default.nix b/pkgs/by-name/mq/mqtt-logger/package.nix
rename from pkgs/mqtt/mqtt-logger/default.nix
rename to pkgs/by-name/mq/mqtt-logger/package.nix
diff --git a/pkgs/mqtt/mqtt-proxy/default.nix b/pkgs/by-name/mq/mqtt-proxy/package.nix
rename from pkgs/mqtt/mqtt-proxy/default.nix
rename to pkgs/by-name/mq/mqtt-proxy/package.nix
diff --git a/pkgs/mqtt/mqtt-recorder/default.nix b/pkgs/by-name/mq/mqtt-recorder/package.nix
rename from pkgs/mqtt/mqtt-recorder/default.nix
rename to pkgs/by-name/mq/mqtt-recorder/package.nix
diff --git a/pkgs/mqtt/mqtt-shell/default.nix b/pkgs/by-name/mq/mqtt-shell/package.nix
rename from pkgs/mqtt/mqtt-shell/default.nix
rename to pkgs/by-name/mq/mqtt-shell/package.nix
diff --git a/pkgs/mqtt/mqtt-stats/default.nix b/pkgs/by-name/mq/mqtt-stats/package.nix
rename from pkgs/mqtt/mqtt-stats/default.nix
rename to pkgs/by-name/mq/mqtt-stats/package.nix
diff --git a/pkgs/mqtt/mqtt-stresser/default.nix b/pkgs/by-name/mq/mqtt-stresser/package.nix
rename from pkgs/mqtt/mqtt-stresser/default.nix
rename to pkgs/by-name/mq/mqtt-stresser/package.nix
diff --git a/pkgs/mqtt/mqtt-to-influxdb-forwarder/default.nix b/pkgs/by-name/mq/mqtt-to-influxdb-forwarder/package.nix
rename from pkgs/mqtt/mqtt-to-influxdb-forwarder/default.nix
rename to pkgs/by-name/mq/mqtt-to-influxdb-forwarder/package.nix
diff --git a/pkgs/mqtt/mqtt-to-influxdb/default.nix b/pkgs/by-name/mq/mqtt-to-influxdb/package.nix
rename from pkgs/mqtt/mqtt-to-influxdb/default.nix
rename to pkgs/by-name/mq/mqtt-to-influxdb/package.nix
diff --git a/pkgs/mqtt/mqttfs/default.nix b/pkgs/by-name/mq/mqttfs/package.nix
rename from pkgs/mqtt/mqttfs/default.nix
rename to pkgs/by-name/mq/mqttfs/package.nix
diff --git a/pkgs/mqtt/mqttwarn/default.nix b/pkgs/by-name/mq/mqttwarn/package.nix
rename from pkgs/mqtt/mqttwarn/default.nix
rename to pkgs/by-name/mq/mqttwarn/package.nix
diff --git a/pkgs/mqtt/mqttwarn/version.patch b/pkgs/by-name/mq/mqttwarn/version.patch
rename from pkgs/mqtt/mqttwarn/version.patch
rename to pkgs/by-name/mq/mqttwarn/version.patch
diff --git a/pkgs/mqtt/mystique/default.nix b/pkgs/by-name/my/mystique/package.nix
rename from pkgs/mqtt/mystique/default.nix
rename to pkgs/by-name/my/mystique/package.nix
diff --git a/pkgs/mqtt/nanosdk/default.nix b/pkgs/by-name/na/nanosdk/package.nix
rename from pkgs/mqtt/nanosdk/default.nix
rename to pkgs/by-name/na/nanosdk/package.nix
diff --git a/pkgs/mqtt/pytest-mqtt/default.nix b/pkgs/by-name/py/pytest-mqtt/package.nix
rename from pkgs/mqtt/pytest-mqtt/default.nix
rename to pkgs/by-name/py/pytest-mqtt/package.nix
diff --git a/pkgs/mqtt/rmqtt/Cargo.lock b/pkgs/by-name/rm/rmqtt/Cargo.lock
rename from pkgs/mqtt/rmqtt/Cargo.lock
rename to pkgs/by-name/rm/rmqtt/Cargo.lock
diff --git a/pkgs/mqtt/rmqtt/default.nix b/pkgs/by-name/rm/rmqtt/package.nix
rename from pkgs/mqtt/rmqtt/default.nix
rename to pkgs/by-name/rm/rmqtt/package.nix
diff --git a/pkgs/mqtt/rumqtt/cargo-lock.patch b/pkgs/by-name/ru/rumqtt/cargo-lock.patch
rename from pkgs/mqtt/rumqtt/cargo-lock.patch
rename to pkgs/by-name/ru/rumqtt/cargo-lock.patch
diff --git a/pkgs/mqtt/rumqtt/default.nix b/pkgs/by-name/ru/rumqtt/package.nix
rename from pkgs/mqtt/rumqtt/default.nix
rename to pkgs/by-name/ru/rumqtt/package.nix
diff --git a/pkgs/mqtt/volantmq/default.nix b/pkgs/by-name/vo/volantmq/package.nix
rename from pkgs/mqtt/volantmq/default.nix
rename to pkgs/by-name/vo/volantmq/package.nix
diff --git a/pkgs/nakarte/elevation-server/default.nix b/pkgs/by-name/el/elevation-server/package.nix
rename from pkgs/nakarte/elevation-server/default.nix
rename to pkgs/by-name/el/elevation-server/package.nix
diff --git a/pkgs/nakarte/map-tiler/default.nix b/pkgs/by-name/ma/map-tiler/package.nix
rename from pkgs/nakarte/map-tiler/default.nix
rename to pkgs/by-name/ma/map-tiler/package.nix
index 968389baced72dfed47a27f0c2f5b0ee2f66dd46..65ac3e4d64cd218f4e53480052901b93f627ea22 100644
--- a/pkgs/nakarte/map-tiler/default.nix
+++ b/pkgs/by-name/ma/map-tiler/package.nix
@@ -1,7 +1,7 @@
 {
   lib,
   stdenv,
-  python3Packages,
+  python311Packages,
   fetchFromGitHub,
   gobject-introspection,
   pango,
@@ -12,7 +12,7 @@   pyimagequant,
   wrapGAppsHook,
 }:
 
-python3Packages.buildPythonApplication {
+python311Packages.buildPythonApplication {
   pname = "map-tiler";
   version = "0-unstable-2022-08-06";
   pyproject = true;
@@ -32,7 +32,7 @@       --replace-fail " @ git+https://github.com/wladich/ozi_map.git" "" \
       --replace-fail " @ git+https://github.com/wladich/pyimagequant.git" ""
   '';
 
-  build-system = with python3Packages; [ setuptools ];
+  build-system = with python311Packages; [ setuptools ];
 
   nativeBuildInputs = [
     gobject-introspection
@@ -44,7 +44,7 @@     gobject-introspection
     pango
   ];
 
-  dependencies = with python3Packages; [
+  dependencies = with python311Packages; [
     pyyaml
     pyproj
     pypng
diff --git a/pkgs/nakarte/mapillary-render/default.nix b/pkgs/by-name/ma/mapillary-render/package.nix
rename from pkgs/nakarte/mapillary-render/default.nix
rename to pkgs/by-name/ma/mapillary-render/package.nix
diff --git a/pkgs/nakarte/maprec/default.nix b/pkgs/by-name/ma/maprec/package.nix
rename from pkgs/nakarte/maprec/default.nix
rename to pkgs/by-name/ma/maprec/package.nix
index 431ce97db64a159dbcf1e6376b7884229a86c634..8a9c04675d06bd69f6e6308801f764c758f3190b 100644
--- a/pkgs/nakarte/maprec/default.nix
+++ b/pkgs/by-name/ma/maprec/package.nix
@@ -1,12 +1,12 @@
 {
   lib,
   stdenv,
-  python3Packages,
+  python311Packages,
   fetchFromGitHub,
   thinplatespline,
 }:
 
-python3Packages.buildPythonPackage {
+python311Packages.buildPythonPackage {
   pname = "maprec";
   version = "0-unstable-2023-04-18";
   pyproject = true;
@@ -23,9 +23,9 @@     substituteInPlace setup.py \
       --replace-fail " @ git+https://github.com/wladich/thinplatespline.git" ""
   '';
 
-  build-system = with python3Packages; [ setuptools ];
+  build-system = with python311Packages; [ setuptools ];
 
-  dependencies = with python3Packages; [
+  dependencies = with python311Packages; [
     pyyaml
     pyproj
     thinplatespline
diff --git a/pkgs/nakarte/ozi-map/default.nix b/pkgs/by-name/oz/ozi-map/package.nix
rename from pkgs/nakarte/ozi-map/default.nix
rename to pkgs/by-name/oz/ozi-map/package.nix
index e3345e1c888e96f00897e7eca2c200e56463c548..dbc32531cf696ced2c5d9775b4bfe9a9a61096ea 100644
--- a/pkgs/nakarte/ozi-map/default.nix
+++ b/pkgs/by-name/oz/ozi-map/package.nix
@@ -1,12 +1,12 @@
 {
   lib,
   stdenv,
-  python3Packages,
+  python311Packages,
   fetchFromGitHub,
   maprec,
 }:
 
-python3Packages.buildPythonPackage {
+python311Packages.buildPythonPackage {
   pname = "ozi-map";
   version = "0-unstable-2022-08-05";
   pyproject = true;
@@ -23,9 +23,9 @@     substituteInPlace setup.py \
       --replace-fail " @ git+https://github.com/wladich/maprec.git" ""
   '';
 
-  build-system = with python3Packages; [ setuptools ];
+  build-system = with python311Packages; [ setuptools ];
 
-  dependencies = with python3Packages; [
+  dependencies = with python311Packages; [
     maprec
     pyproj
   ];
diff --git a/pkgs/nakarte/pyimagequant/default.nix b/pkgs/by-name/py/pyimagequant/package.nix
rename from pkgs/nakarte/pyimagequant/default.nix
rename to pkgs/by-name/py/pyimagequant/package.nix
index 3a5c5d57663631e11caa938e5ae22563737fed0c..cb312a9a4ad1a50266719c6dca13f88fb892bd68 100644
--- a/pkgs/nakarte/pyimagequant/default.nix
+++ b/pkgs/by-name/py/pyimagequant/package.nix
@@ -2,10 +2,10 @@ {
   lib,
   stdenv,
   fetchFromGitHub,
-  python3Packages,
+  python311Packages,
 }:
 
-python3Packages.buildPythonPackage {
+python311Packages.buildPythonPackage {
   pname = "pyimagequant";
   version = "0-unstable-2022-06-10";
   pyproject = true;
@@ -23,9 +23,9 @@     # error: could not create 'build': File exists
     rm BUILD
   '';
 
-  build-system = with python3Packages; [ setuptools ];
+  build-system = with python311Packages; [ setuptools ];
 
-  dependencies = with python3Packages; [ cython ];
+  dependencies = with python311Packages; [ cython ];
 
   pythonImportsCheck = [ "imagequant" ];
 
diff --git a/pkgs/nakarte/thinplatespline/default.nix b/pkgs/by-name/th/thinplatespline/package.nix
rename from pkgs/nakarte/thinplatespline/default.nix
rename to pkgs/by-name/th/thinplatespline/package.nix
index 2b8054053578cffa0fd403895c0318afdd1dca53..dd58251d9df229f5a08673b99ed35e454afcc75e 100644
--- a/pkgs/nakarte/thinplatespline/default.nix
+++ b/pkgs/by-name/th/thinplatespline/package.nix
@@ -1,10 +1,10 @@
 {
   lib,
-  python3Packages,
+  python311Packages,
   fetchFromGitHub,
 }:
 
-python3Packages.buildPythonPackage {
+python311Packages.buildPythonPackage {
   pname = "thinplatespline";
   version = "0-unstable-2024-02-06";
   pyproject = true;
@@ -16,7 +16,7 @@     rev = "81f40c74663d9510ceedf57a04a711ec7fc8b7fa";
     hash = "sha256-1U5WEPFH5dhf2lkfZY6rrwlUNq/rY2mSlgEZVnReyng=";
   };
 
-  build-system = with python3Packages; [ setuptools ];
+  build-system = with python311Packages; [ setuptools ];
 
   doCheck = false;
 
diff --git a/pkgs/nakarte/westra-passes/default.nix b/pkgs/by-name/we/westra-passes/package.nix
rename from pkgs/nakarte/westra-passes/default.nix
rename to pkgs/by-name/we/westra-passes/package.nix
diff --git a/pkgs/osm/abstreet/Cargo.lock b/pkgs/by-name/ab/abstreet/Cargo.lock
rename from pkgs/osm/abstreet/Cargo.lock
rename to pkgs/by-name/ab/abstreet/Cargo.lock
diff --git a/pkgs/osm/abstreet/default.nix b/pkgs/by-name/ab/abstreet/package.nix
rename from pkgs/osm/abstreet/default.nix
rename to pkgs/by-name/ab/abstreet/package.nix
diff --git a/pkgs/osm/arnis/default.nix b/pkgs/by-name/ar/arnis/package.nix
rename from pkgs/osm/arnis/default.nix
rename to pkgs/by-name/ar/arnis/package.nix
diff --git a/pkgs/osm/cykhash/default.nix b/pkgs/by-name/cy/cykhash/package.nix
rename from pkgs/osm/cykhash/default.nix
rename to pkgs/by-name/cy/cykhash/package.nix
diff --git a/pkgs/osm/gcgn-converter/default.nix b/pkgs/by-name/gc/gcgn-converter/package.nix
rename from pkgs/osm/gcgn-converter/default.nix
rename to pkgs/by-name/gc/gcgn-converter/package.nix
diff --git a/pkgs/osm/level0/default.nix b/pkgs/by-name/le/level0/package.nix
rename from pkgs/osm/level0/default.nix
rename to pkgs/by-name/le/level0/package.nix
diff --git a/pkgs/osm/libgeodesk/default.nix b/pkgs/by-name/li/libgeodesk/package.nix
rename from pkgs/osm/libgeodesk/default.nix
rename to pkgs/by-name/li/libgeodesk/package.nix
diff --git a/pkgs/osm/libgeodesk/remove-fetchcontent-usage.patch b/pkgs/by-name/li/libgeodesk/remove-fetchcontent-usage.patch
rename from pkgs/osm/libgeodesk/remove-fetchcontent-usage.patch
rename to pkgs/by-name/li/libgeodesk/remove-fetchcontent-usage.patch
diff --git a/pkgs/osm/map-machine/default.nix b/pkgs/by-name/ma/map-machine/package.nix
rename from pkgs/osm/map-machine/default.nix
rename to pkgs/by-name/ma/map-machine/package.nix
diff --git a/pkgs/osm/map-stylizer/config.patch b/pkgs/by-name/ma/map-stylizer/config.patch
rename from pkgs/osm/map-stylizer/config.patch
rename to pkgs/by-name/ma/map-stylizer/config.patch
diff --git a/pkgs/osm/map-stylizer/default.nix b/pkgs/by-name/ma/map-stylizer/package.nix
rename from pkgs/osm/map-stylizer/default.nix
rename to pkgs/by-name/ma/map-stylizer/package.nix
diff --git a/pkgs/osm/maperitive/default.nix b/pkgs/by-name/ma/maperitive/package.nix
rename from pkgs/osm/maperitive/default.nix
rename to pkgs/by-name/ma/maperitive/package.nix
diff --git a/pkgs/osm/maproulette-python-client/default.nix b/pkgs/by-name/ma/maproulette-python-client/package.nix
rename from pkgs/osm/maproulette-python-client/default.nix
rename to pkgs/by-name/ma/maproulette-python-client/package.nix
diff --git a/pkgs/osm/memphis/default.nix b/pkgs/by-name/me/memphis/package.nix
rename from pkgs/osm/memphis/default.nix
rename to pkgs/by-name/me/memphis/package.nix
diff --git a/pkgs/osm/osm-3s/default.nix b/pkgs/by-name/os/osm-3s/package.nix
rename from pkgs/osm/osm-3s/default.nix
rename to pkgs/by-name/os/osm-3s/package.nix
diff --git a/pkgs/osm/osm-area-tools/default.nix b/pkgs/by-name/os/osm-area-tools/package.nix
rename from pkgs/osm/osm-area-tools/default.nix
rename to pkgs/by-name/os/osm-area-tools/package.nix
diff --git a/pkgs/osm/osm-gis-export/default.nix b/pkgs/by-name/os/osm-gis-export/package.nix
rename from pkgs/osm/osm-gis-export/default.nix
rename to pkgs/by-name/os/osm-gis-export/package.nix
diff --git a/pkgs/osm/osm-lump-ways/default.nix b/pkgs/by-name/os/osm-lump-ways/package.nix
rename from pkgs/osm/osm-lump-ways/default.nix
rename to pkgs/by-name/os/osm-lump-ways/package.nix
diff --git a/pkgs/osm/osm-tags-transform/default.nix b/pkgs/by-name/os/osm-tags-transform/package.nix
rename from pkgs/osm/osm-tags-transform/default.nix
rename to pkgs/by-name/os/osm-tags-transform/package.nix
diff --git a/pkgs/osm/osm2geojson/default.nix b/pkgs/by-name/os/osm2geojson/package.nix
rename from pkgs/osm/osm2geojson/default.nix
rename to pkgs/by-name/os/osm2geojson/package.nix
diff --git a/pkgs/osm/osmcoastline/default.nix b/pkgs/by-name/os/osmcoastline/package.nix
rename from pkgs/osm/osmcoastline/default.nix
rename to pkgs/by-name/os/osmcoastline/package.nix
diff --git a/pkgs/osm/osmdbt/default.nix b/pkgs/by-name/os/osmdbt/package.nix
rename from pkgs/osm/osmdbt/default.nix
rename to pkgs/by-name/os/osmdbt/package.nix
diff --git a/pkgs/osm/osmium-surplus/default.nix b/pkgs/by-name/os/osmium-surplus/package.nix
rename from pkgs/osm/osmium-surplus/default.nix
rename to pkgs/by-name/os/osmium-surplus/package.nix
diff --git a/pkgs/osm/osmosis/default.nix b/pkgs/by-name/os/osmosis/package.nix
rename from pkgs/osm/osmosis/default.nix
rename to pkgs/by-name/os/osmosis/package.nix
diff --git a/pkgs/osm/osmptparser/default.nix b/pkgs/by-name/os/osmptparser/package.nix
rename from pkgs/osm/osmptparser/default.nix
rename to pkgs/by-name/os/osmptparser/package.nix
diff --git a/pkgs/osm/osmviz/default.nix b/pkgs/by-name/os/osmviz/package.nix
rename from pkgs/osm/osmviz/default.nix
rename to pkgs/by-name/os/osmviz/package.nix
diff --git a/pkgs/osm/osmwalkthrough/default.nix b/pkgs/by-name/os/osmwalkthrough/package.nix
rename from pkgs/osm/osmwalkthrough/default.nix
rename to pkgs/by-name/os/osmwalkthrough/package.nix
diff --git a/pkgs/osm/overpassforge/default.nix b/pkgs/by-name/ov/overpassforge/package.nix
rename from pkgs/osm/overpassforge/default.nix
rename to pkgs/by-name/ov/overpassforge/package.nix
diff --git a/pkgs/osm/phyghtmap/default.nix b/pkgs/by-name/ph/phyghtmap/package.nix
rename from pkgs/osm/phyghtmap/default.nix
rename to pkgs/by-name/ph/phyghtmap/package.nix
diff --git a/pkgs/osm/planetiler/default.nix b/pkgs/by-name/pl/planetiler/package.nix
rename from pkgs/osm/planetiler/default.nix
rename to pkgs/by-name/pl/planetiler/package.nix
diff --git a/pkgs/osm/polytiles/default.nix b/pkgs/by-name/po/polytiles/package.nix
rename from pkgs/osm/polytiles/default.nix
rename to pkgs/by-name/po/polytiles/package.nix
diff --git a/pkgs/osm/prettymapp/default.nix b/pkgs/by-name/pr/prettymapp/package.nix
rename from pkgs/osm/prettymapp/default.nix
rename to pkgs/by-name/pr/prettymapp/package.nix
diff --git a/pkgs/osm/py-osm-static-maps/default.nix b/pkgs/by-name/py/py-osm-static-maps/package.nix
rename from pkgs/osm/py-osm-static-maps/default.nix
rename to pkgs/by-name/py/py-osm-static-maps/package.nix
diff --git a/pkgs/osm/pyrobuf/default.nix b/pkgs/by-name/py/pyrobuf/package.nix
rename from pkgs/osm/pyrobuf/default.nix
rename to pkgs/by-name/py/pyrobuf/package.nix
diff --git a/pkgs/osm/pyrosm/default.nix b/pkgs/by-name/py/pyrosm/package.nix
rename from pkgs/osm/pyrosm/default.nix
rename to pkgs/by-name/py/pyrosm/package.nix
diff --git a/pkgs/osm/sdlmap/Makefile.patch b/pkgs/by-name/sd/sdlmap/Makefile.patch
rename from pkgs/osm/sdlmap/Makefile.patch
rename to pkgs/by-name/sd/sdlmap/Makefile.patch
diff --git a/pkgs/osm/sdlmap/default.nix b/pkgs/by-name/sd/sdlmap/package.nix
rename from pkgs/osm/sdlmap/default.nix
rename to pkgs/by-name/sd/sdlmap/package.nix
diff --git a/pkgs/osm/sdlmap/tile.patch b/pkgs/by-name/sd/sdlmap/tile.patch
rename from pkgs/osm/sdlmap/tile.patch
rename to pkgs/by-name/sd/sdlmap/tile.patch
diff --git a/pkgs/osm/smopy/default.nix b/pkgs/by-name/sm/smopy/package.nix
rename from pkgs/osm/smopy/default.nix
rename to pkgs/by-name/sm/smopy/package.nix
diff --git a/pkgs/osm/smrender/default.nix b/pkgs/by-name/sm/smrender/package.nix
rename from pkgs/osm/smrender/default.nix
rename to pkgs/by-name/sm/smrender/package.nix
diff --git a/pkgs/osm/srtm2osm/default.nix b/pkgs/by-name/sr/srtm2osm/package.nix
rename from pkgs/osm/srtm2osm/default.nix
rename to pkgs/by-name/sr/srtm2osm/package.nix
diff --git a/pkgs/osm/taginfo-tools/default.nix b/pkgs/by-name/ta/taginfo-tools/package.nix
rename from pkgs/osm/taginfo-tools/default.nix
rename to pkgs/by-name/ta/taginfo-tools/package.nix
diff --git a/pkgs/osm/tilelog/default.nix b/pkgs/by-name/ti/tilelog/package.nix
rename from pkgs/osm/tilelog/default.nix
rename to pkgs/by-name/ti/tilelog/package.nix
diff --git a/pkgs/osm/vectiler/default.nix b/pkgs/by-name/ve/vectiler/package.nix
rename from pkgs/osm/vectiler/default.nix
rename to pkgs/by-name/ve/vectiler/package.nix
diff --git a/pkgs/radio/acarsdec/default.nix b/pkgs/by-name/ac/acarsdec/package.nix
rename from pkgs/radio/acarsdec/default.nix
rename to pkgs/by-name/ac/acarsdec/package.nix
diff --git a/pkgs/radio/adsb_deku/default.nix b/pkgs/by-name/ad/adsb_deku/package.nix
rename from pkgs/radio/adsb_deku/default.nix
rename to pkgs/by-name/ad/adsb_deku/package.nix
diff --git a/pkgs/radio/ais-catcher/default.nix b/pkgs/by-name/ai/ais-catcher/package.nix
rename from pkgs/radio/ais-catcher/default.nix
rename to pkgs/by-name/ai/ais-catcher/package.nix
diff --git a/pkgs/radio/aprsc/default.nix b/pkgs/by-name/ap/aprsc/package.nix
rename from pkgs/radio/aprsc/default.nix
rename to pkgs/by-name/ap/aprsc/package.nix
diff --git a/pkgs/radio/dump1090_rs/default.nix b/pkgs/by-name/du/dump1090_rs/package.nix
rename from pkgs/radio/dump1090_rs/default.nix
rename to pkgs/by-name/du/dump1090_rs/package.nix
diff --git a/pkgs/radio/dumphfdl/default.nix b/pkgs/by-name/du/dumphfdl/package.nix
rename from pkgs/radio/dumphfdl/default.nix
rename to pkgs/by-name/du/dumphfdl/package.nix
diff --git a/pkgs/radio/fmreceiver/default.nix b/pkgs/by-name/fm/fmreceiver/package.nix
rename from pkgs/radio/fmreceiver/default.nix
rename to pkgs/by-name/fm/fmreceiver/package.nix
index f157168a20e0b15a92fce66fd840e951d7ed8719..fd90f39cca7541b60c4266d9a64181f1faa89f11 100644
--- a/pkgs/radio/fmreceiver/default.nix
+++ b/pkgs/by-name/fm/fmreceiver/package.nix
@@ -9,9 +9,8 @@   libsndfile,
   libusb1,
   portaudio,
   rtl-sdr,
-  qmake,
-  qwt,
-  wrapQtAppsHook,
+  qt5,
+  libsForQt5,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -46,8 +45,8 @@       substituteInPlace devices/rtlsdr-handler/rtlsdr-handler.cpp --replace-fail ".so" ".dylib"
     '';
 
   nativeBuildInputs = [
-    qmake
-    wrapQtAppsHook
+    qt5.qmake
+    qt5.wrapQtAppsHook
   ];
 
   buildInputs = [
@@ -56,7 +55,7 @@     libsamplerate
     libsndfile
     libusb1
     portaudio
-    qwt
+    libsForQt5.qwt
   ];
 
   qmakeFlags = [ "CONFIG+=dabstick" ];
@@ -72,7 +71,7 @@     if stdenv.isDarwin then
       ''
         mkdir -p $out/Applications
         mv linux-bin/fmreceiver-2.0.app $out/Applications/fmreceiver.app
-        install_name_tool -change {,${qwt}/lib/}libqwt.6.dylib "$out/Applications/fmreceiver.app/Contents/MacOS/fmreceiver-2.0"
+        install_name_tool -change {,${libsForQt5.qwt}/lib/}libqwt.6.dylib "$out/Applications/fmreceiver.app/Contents/MacOS/fmreceiver-2.0"
       ''
     else
       ''
diff --git a/pkgs/radio/goestools/default.nix b/pkgs/by-name/go/goestools/package.nix
rename from pkgs/radio/goestools/default.nix
rename to pkgs/by-name/go/goestools/package.nix
diff --git a/pkgs/radio/gqrx-scanner/default.nix b/pkgs/by-name/gq/gqrx-scanner/package.nix
rename from pkgs/radio/gqrx-scanner/default.nix
rename to pkgs/by-name/gq/gqrx-scanner/package.nix
diff --git a/pkgs/radio/linrad/default.nix b/pkgs/by-name/li/linrad/package.nix
rename from pkgs/radio/linrad/default.nix
rename to pkgs/by-name/li/linrad/package.nix
diff --git a/pkgs/radio/radiolib/default.nix b/pkgs/by-name/ra/radiolib/package.nix
rename from pkgs/radio/radiolib/default.nix
rename to pkgs/by-name/ra/radiolib/package.nix
diff --git a/pkgs/radio/rtlsdr-airband/default.nix b/pkgs/by-name/rt/rtlsdr-airband/package.nix
rename from pkgs/radio/rtlsdr-airband/default.nix
rename to pkgs/by-name/rt/rtlsdr-airband/package.nix
diff --git a/pkgs/radio/rtltcp/cargo-lock.patch b/pkgs/by-name/rt/rtltcp/cargo-lock.patch
rename from pkgs/radio/rtltcp/cargo-lock.patch
rename to pkgs/by-name/rt/rtltcp/cargo-lock.patch
diff --git a/pkgs/radio/rtltcp/default.nix b/pkgs/by-name/rt/rtltcp/package.nix
rename from pkgs/radio/rtltcp/default.nix
rename to pkgs/by-name/rt/rtltcp/package.nix
diff --git a/pkgs/radio/sdr-modem/default.nix b/pkgs/by-name/sd/sdr-modem/package.nix
rename from pkgs/radio/sdr-modem/default.nix
rename to pkgs/by-name/sd/sdr-modem/package.nix
diff --git a/pkgs/radio/sdr-server/default.nix b/pkgs/by-name/sd/sdr-server/package.nix
rename from pkgs/radio/sdr-server/default.nix
rename to pkgs/by-name/sd/sdr-server/package.nix
diff --git a/pkgs/radio/smallrx/default.nix b/pkgs/by-name/sm/smallrx/package.nix
rename from pkgs/radio/smallrx/default.nix
rename to pkgs/by-name/sm/smallrx/package.nix
diff --git a/pkgs/suckless/amused/default.nix b/pkgs/by-name/am/amused/package.nix
rename from pkgs/suckless/amused/default.nix
rename to pkgs/by-name/am/amused/package.nix
diff --git a/pkgs/suckless/blind/default.nix b/pkgs/by-name/bl/blind/package.nix
rename from pkgs/suckless/blind/default.nix
rename to pkgs/by-name/bl/blind/package.nix
diff --git a/pkgs/suckless/chibicc/default.nix b/pkgs/by-name/ch/chibicc/package.nix
rename from pkgs/suckless/chibicc/default.nix
rename to pkgs/by-name/ch/chibicc/package.nix
diff --git a/pkgs/suckless/cproc/default.nix b/pkgs/by-name/cp/cproc/package.nix
rename from pkgs/suckless/cproc/default.nix
rename to pkgs/by-name/cp/cproc/package.nix
diff --git a/pkgs/suckless/dragon/default.nix b/pkgs/by-name/dr/dragon/package.nix
rename from pkgs/suckless/dragon/default.nix
rename to pkgs/by-name/dr/dragon/package.nix
diff --git a/pkgs/suckless/dtree/default.nix b/pkgs/by-name/dt/dtree/package.nix
rename from pkgs/suckless/dtree/default.nix
rename to pkgs/by-name/dt/dtree/package.nix
diff --git a/pkgs/suckless/edit/default.nix b/pkgs/by-name/ed/edit/package.nix
rename from pkgs/suckless/edit/default.nix
rename to pkgs/by-name/ed/edit/package.nix
diff --git a/pkgs/suckless/farbfeld-utils/default.nix b/pkgs/by-name/fa/farbfeld-utils/package.nix
rename from pkgs/suckless/farbfeld-utils/default.nix
rename to pkgs/by-name/fa/farbfeld-utils/package.nix
diff --git a/pkgs/suckless/ff-tools/default.nix b/pkgs/by-name/ff/ff-tools/package.nix
rename from pkgs/suckless/ff-tools/default.nix
rename to pkgs/by-name/ff/ff-tools/package.nix
diff --git a/pkgs/suckless/ffshot/default.nix b/pkgs/by-name/ff/ffshot/package.nix
rename from pkgs/suckless/ffshot/default.nix
rename to pkgs/by-name/ff/ffshot/package.nix
diff --git a/pkgs/suckless/hurl/default.nix b/pkgs/by-name/hu/hurl/package.nix
rename from pkgs/suckless/hurl/default.nix
rename to pkgs/by-name/hu/hurl/package.nix
diff --git a/pkgs/suckless/imscript/default.nix b/pkgs/by-name/im/imscript/package.nix
rename from pkgs/suckless/imscript/default.nix
rename to pkgs/by-name/im/imscript/package.nix
diff --git a/pkgs/suckless/imsg-compat/default.nix b/pkgs/by-name/im/imsg-compat/package.nix
rename from pkgs/suckless/imsg-compat/default.nix
rename to pkgs/by-name/im/imsg-compat/package.nix
diff --git a/pkgs/suckless/kilo/default.nix b/pkgs/by-name/ki/kilo/package.nix
rename from pkgs/suckless/kilo/default.nix
rename to pkgs/by-name/ki/kilo/package.nix
diff --git a/pkgs/suckless/lacc/default.nix b/pkgs/by-name/la/lacc/package.nix
rename from pkgs/suckless/lacc/default.nix
rename to pkgs/by-name/la/lacc/package.nix
diff --git a/pkgs/suckless/lbm/default.nix b/pkgs/by-name/lb/lbm/package.nix
rename from pkgs/suckless/lbm/default.nix
rename to pkgs/by-name/lb/lbm/package.nix
diff --git a/pkgs/suckless/lchat/default.nix b/pkgs/by-name/lc/lchat/package.nix
rename from pkgs/suckless/lchat/default.nix
rename to pkgs/by-name/lc/lchat/package.nix
diff --git a/pkgs/suckless/lel/default.nix b/pkgs/by-name/le/lel/package.nix
rename from pkgs/suckless/lel/default.nix
rename to pkgs/by-name/le/lel/package.nix
diff --git a/pkgs/suckless/libst/default.nix b/pkgs/by-name/li/libst/package.nix
rename from pkgs/suckless/libst/default.nix
rename to pkgs/by-name/li/libst/package.nix
diff --git a/pkgs/suckless/libutf/default.nix b/pkgs/by-name/li/libutf/package.nix
rename from pkgs/suckless/libutf/default.nix
rename to pkgs/by-name/li/libutf/package.nix
diff --git a/pkgs/suckless/mage/default.nix b/pkgs/by-name/ma/mage/package.nix
rename from pkgs/suckless/mage/default.nix
rename to pkgs/by-name/ma/mage/package.nix
diff --git a/pkgs/suckless/makel/default.nix b/pkgs/by-name/ma/makel/package.nix
rename from pkgs/suckless/makel/default.nix
rename to pkgs/by-name/ma/makel/package.nix
diff --git a/pkgs/suckless/nextvi/default.nix b/pkgs/by-name/ne/nextvi/package.nix
rename from pkgs/suckless/nextvi/default.nix
rename to pkgs/by-name/ne/nextvi/package.nix
diff --git a/pkgs/suckless/pista/default.nix b/pkgs/by-name/pi/pista/package.nix
rename from pkgs/suckless/pista/default.nix
rename to pkgs/by-name/pi/pista/package.nix
diff --git a/pkgs/suckless/poe/default.nix b/pkgs/by-name/po/poe/package.nix
rename from pkgs/suckless/poe/default.nix
rename to pkgs/by-name/po/poe/package.nix
diff --git a/pkgs/suckless/saait/default.nix b/pkgs/by-name/sa/saait/package.nix
rename from pkgs/suckless/saait/default.nix
rename to pkgs/by-name/sa/saait/package.nix
diff --git a/pkgs/suckless/sbase/default.nix b/pkgs/by-name/sb/sbase/package.nix
rename from pkgs/suckless/sbase/default.nix
rename to pkgs/by-name/sb/sbase/package.nix
diff --git a/pkgs/suckless/scc/default.nix b/pkgs/by-name/sc/scc/package.nix
rename from pkgs/suckless/scc/default.nix
rename to pkgs/by-name/sc/scc/package.nix
diff --git a/pkgs/suckless/scroll/default.nix b/pkgs/by-name/sc/scroll/package.nix
rename from pkgs/suckless/scroll/default.nix
rename to pkgs/by-name/sc/scroll/package.nix
diff --git a/pkgs/suckless/sdhcp/default.nix b/pkgs/by-name/sd/sdhcp/package.nix
rename from pkgs/suckless/sdhcp/default.nix
rename to pkgs/by-name/sd/sdhcp/package.nix
diff --git a/pkgs/suckless/se/default.nix b/pkgs/by-name/se/se/package.nix
rename from pkgs/suckless/se/default.nix
rename to pkgs/by-name/se/se/package.nix
diff --git a/pkgs/suckless/sled/default.nix b/pkgs/by-name/sl/sled/package.nix
rename from pkgs/suckless/sled/default.nix
rename to pkgs/by-name/sl/sled/package.nix
diff --git a/pkgs/suckless/ste/default.nix b/pkgs/by-name/st/ste/package.nix
rename from pkgs/suckless/ste/default.nix
rename to pkgs/by-name/st/ste/package.nix
diff --git a/pkgs/suckless/sthkd/default.nix b/pkgs/by-name/st/sthkd/package.nix
rename from pkgs/suckless/sthkd/default.nix
rename to pkgs/by-name/st/sthkd/package.nix
diff --git a/pkgs/suckless/svtm/default.nix b/pkgs/by-name/sv/svtm/package.nix
rename from pkgs/suckless/svtm/default.nix
rename to pkgs/by-name/sv/svtm/package.nix
diff --git a/pkgs/suckless/table/default.nix b/pkgs/by-name/ta/table/package.nix
rename from pkgs/suckless/table/default.nix
rename to pkgs/by-name/ta/table/package.nix
diff --git a/pkgs/suckless/webdump/default.nix b/pkgs/by-name/we/webdump/package.nix
rename from pkgs/suckless/webdump/default.nix
rename to pkgs/by-name/we/webdump/package.nix
