about summary refs log tree commit diff
path: root/pkgs/tools/system
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/system')
-rw-r--r--pkgs/tools/system/actkbd/default.nix1
-rw-r--r--pkgs/tools/system/amdgpu_top/default.nix1
-rw-r--r--pkgs/tools/system/automatic-timezoned/default.nix1
-rw-r--r--pkgs/tools/system/awstats/default.nix1
-rw-r--r--pkgs/tools/system/bar/default.nix1
-rw-r--r--pkgs/tools/system/btop/default.nix1
-rw-r--r--pkgs/tools/system/chase/default.nix1
-rw-r--r--pkgs/tools/system/clinfo/default.nix1
-rw-r--r--pkgs/tools/system/colorls/default.nix1
-rw-r--r--pkgs/tools/system/confd/default.nix1
-rw-r--r--pkgs/tools/system/ctop/default.nix1
-rw-r--r--pkgs/tools/system/daemon/default.nix1
-rw-r--r--pkgs/tools/system/daemonize/default.nix1
-rw-r--r--pkgs/tools/system/datefudge/default.nix1
-rw-r--r--pkgs/tools/system/dcfldd/default.nix1
-rw-r--r--pkgs/tools/system/ddh/default.nix1
-rw-r--r--pkgs/tools/system/ddrescueview/default.nix1
-rw-r--r--pkgs/tools/system/dfc/default.nix1
-rw-r--r--pkgs/tools/system/dfrs/default.nix1
-rw-r--r--pkgs/tools/system/disk-filltest/default.nix1
-rw-r--r--pkgs/tools/system/dog/default.nix1
-rw-r--r--pkgs/tools/system/dool/default.nix1
-rw-r--r--pkgs/tools/system/envconsul/default.nix1
-rw-r--r--pkgs/tools/system/epilys-bb/default.nix1
-rw-r--r--pkgs/tools/system/facter/default.nix1
-rw-r--r--pkgs/tools/system/foreman/default.nix1
-rw-r--r--pkgs/tools/system/foremost/default.nix1
-rw-r--r--pkgs/tools/system/gdmap/default.nix1
-rw-r--r--pkgs/tools/system/gdu/default.nix1
-rw-r--r--pkgs/tools/system/gkraken/default.nix1
-rw-r--r--pkgs/tools/system/go-audit/default.nix1
-rw-r--r--pkgs/tools/system/gohai/default.nix1
-rw-r--r--pkgs/tools/system/gopsuinfo/default.nix1
-rw-r--r--pkgs/tools/system/gotop/default.nix1
-rw-r--r--pkgs/tools/system/gptman/default.nix1
-rw-r--r--pkgs/tools/system/gt5/default.nix1
-rw-r--r--pkgs/tools/system/gtop/default.nix1
-rw-r--r--pkgs/tools/system/hardinfo/default.nix1
-rw-r--r--pkgs/tools/system/hddfancontrol/default.nix1
-rw-r--r--pkgs/tools/system/hiera-eyaml/default.nix1
-rw-r--r--pkgs/tools/system/honcho/default.nix1
-rw-r--r--pkgs/tools/system/hostctl/default.nix1
-rw-r--r--pkgs/tools/system/hw-probe/default.nix1
-rw-r--r--pkgs/tools/system/idle3tools/default.nix1
-rw-r--r--pkgs/tools/system/illum/default.nix1
-rw-r--r--pkgs/tools/system/inxi/default.nix1
-rw-r--r--pkgs/tools/system/ioping/default.nix1
-rw-r--r--pkgs/tools/system/java-service-wrapper/default.nix1
-rw-r--r--pkgs/tools/system/jobber/default.nix1
-rw-r--r--pkgs/tools/system/jsvc/default.nix1
-rw-r--r--pkgs/tools/system/jump/default.nix1
-rw-r--r--pkgs/tools/system/kmon/default.nix1
-rw-r--r--pkgs/tools/system/lact/default.nix1
-rw-r--r--pkgs/tools/system/localtime/default.nix1
-rw-r--r--pkgs/tools/system/logrotate/default.nix1
-rw-r--r--pkgs/tools/system/lr/default.nix1
-rw-r--r--pkgs/tools/system/lshw/default.nix1
-rw-r--r--pkgs/tools/system/mediawriter/default.nix1
-rw-r--r--pkgs/tools/system/memtester/default.nix1
-rw-r--r--pkgs/tools/system/minijail/default.nix1
-rw-r--r--pkgs/tools/system/mlc/default.nix1
-rw-r--r--pkgs/tools/system/monit/default.nix1
-rw-r--r--pkgs/tools/system/mq-cli/default.nix1
-rw-r--r--pkgs/tools/system/nats-top/default.nix1
-rw-r--r--pkgs/tools/system/opencl-info/default.nix1
-rw-r--r--pkgs/tools/system/pcstat/default.nix1
-rw-r--r--pkgs/tools/system/procodile/default.nix1
-rw-r--r--pkgs/tools/system/ps_mem/default.nix1
-rw-r--r--pkgs/tools/system/psensor/default.nix1
-rw-r--r--pkgs/tools/system/psstop/default.nix1
-rw-r--r--pkgs/tools/system/r10k/default.nix1
-rw-r--r--pkgs/tools/system/retry/default.nix1
-rw-r--r--pkgs/tools/system/rofi-systemd/default.nix1
-rw-r--r--pkgs/tools/system/runitor/default.nix1
-rw-r--r--pkgs/tools/system/rwc/default.nix1
-rw-r--r--pkgs/tools/system/s-tui/default.nix1
-rw-r--r--pkgs/tools/system/s0ix-selftest-tool/default.nix1
-rw-r--r--pkgs/tools/system/safe-rm/default.nix1
-rw-r--r--pkgs/tools/system/safecopy/default.nix1
-rw-r--r--pkgs/tools/system/setserial/default.nix1
-rw-r--r--pkgs/tools/system/skeema/default.nix1
-rw-r--r--pkgs/tools/system/snooze/default.nix1
-rw-r--r--pkgs/tools/system/stacer/default.nix1
-rw-r--r--pkgs/tools/system/stress-ng/default.nix1
-rw-r--r--pkgs/tools/system/stress/default.nix1
-rw-r--r--pkgs/tools/system/stressapptest/default.nix1
-rw-r--r--pkgs/tools/system/supercronic/default.nix1
-rw-r--r--pkgs/tools/system/symlinks/default.nix1
-rw-r--r--pkgs/tools/system/systemd-journal2gelf/default.nix1
-rw-r--r--pkgs/tools/system/thermald/default.nix1
-rw-r--r--pkgs/tools/system/thinkfan/default.nix1
-rw-r--r--pkgs/tools/system/tm/default.nix1
-rw-r--r--pkgs/tools/system/tp-auto-kbbl/default.nix1
-rw-r--r--pkgs/tools/system/ts/default.nix1
-rw-r--r--pkgs/tools/system/ttop/default.nix1
-rw-r--r--pkgs/tools/system/tuptime/default.nix1
-rw-r--r--pkgs/tools/system/ufiformat/default.nix1
-rw-r--r--pkgs/tools/system/undaemonize/default.nix1
-rw-r--r--pkgs/tools/system/vbetool/default.nix1
-rw-r--r--pkgs/tools/system/wsysmon/default.nix1
-rw-r--r--pkgs/tools/system/xe/default.nix1
-rw-r--r--pkgs/tools/system/yeshup/default.nix1
-rw-r--r--pkgs/tools/system/zfxtop/default.nix1
-rw-r--r--pkgs/tools/system/zps/default.nix1
-rw-r--r--pkgs/tools/system/zx/default.nix1
105 files changed, 105 insertions, 0 deletions
diff --git a/pkgs/tools/system/actkbd/default.nix b/pkgs/tools/system/actkbd/default.nix
index 61be7e5a4a92..5dd024e573d4 100644
--- a/pkgs/tools/system/actkbd/default.nix
+++ b/pkgs/tools/system/actkbd/default.nix
@@ -31,5 +31,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     homepage = "http://users.softlab.ece.ntua.gr/~thkala/projects/actkbd/";
     platforms = platforms.linux;
+    mainProgram = "actkbd";
   };
 }
diff --git a/pkgs/tools/system/amdgpu_top/default.nix b/pkgs/tools/system/amdgpu_top/default.nix
index b8f753bc5a46..85a7b40cd540 100644
--- a/pkgs/tools/system/amdgpu_top/default.nix
+++ b/pkgs/tools/system/amdgpu_top/default.nix
@@ -54,5 +54,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ geri1701 ];
     platforms = platforms.linux;
+    mainProgram = "amdgpu_top";
   };
 }
diff --git a/pkgs/tools/system/automatic-timezoned/default.nix b/pkgs/tools/system/automatic-timezoned/default.nix
index 7233a41142ed..f6bfe6db6958 100644
--- a/pkgs/tools/system/automatic-timezoned/default.nix
+++ b/pkgs/tools/system/automatic-timezoned/default.nix
@@ -23,5 +23,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.gpl3;
     maintainers = with maintainers; [ maxbrunet ];
     platforms = platforms.linux;
+    mainProgram = "automatic-timezoned";
   };
 }
diff --git a/pkgs/tools/system/awstats/default.nix b/pkgs/tools/system/awstats/default.nix
index 21b76adf3e59..e1479e6192cb 100644
--- a/pkgs/tools/system/awstats/default.nix
+++ b/pkgs/tools/system/awstats/default.nix
@@ -63,5 +63,6 @@ perlPackages.buildPerlPackage rec {
     homepage = "https://awstats.org";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
+    mainProgram = "awstats";
   };
 }
diff --git a/pkgs/tools/system/bar/default.nix b/pkgs/tools/system/bar/default.nix
index 9ff8d2080f7f..1109def2bf30 100644
--- a/pkgs/tools/system/bar/default.nix
+++ b/pkgs/tools/system/bar/default.nix
@@ -15,5 +15,6 @@ stdenv.mkDerivation rec {
     license = lib.licenses.gpl2;
     maintainers = [ lib.maintainers.rdnetto ];
     platforms = lib.platforms.all;
+    mainProgram = "bar";
   };
 }
diff --git a/pkgs/tools/system/btop/default.nix b/pkgs/tools/system/btop/default.nix
index a4a5156525dd..6a51b29d1d1c 100644
--- a/pkgs/tools/system/btop/default.nix
+++ b/pkgs/tools/system/btop/default.nix
@@ -43,5 +43,6 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ rmcgibbo ];
+    mainProgram = "btop";
   };
 }
diff --git a/pkgs/tools/system/chase/default.nix b/pkgs/tools/system/chase/default.nix
index d20d33235cf8..40f09089fdff 100644
--- a/pkgs/tools/system/chase/default.nix
+++ b/pkgs/tools/system/chase/default.nix
@@ -23,5 +23,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.polyrod ];
     platforms = platforms.all;
+    mainProgram = "chase";
   };
 }
diff --git a/pkgs/tools/system/clinfo/default.nix b/pkgs/tools/system/clinfo/default.nix
index 746f83690e7d..50e72498bf64 100644
--- a/pkgs/tools/system/clinfo/default.nix
+++ b/pkgs/tools/system/clinfo/default.nix
@@ -26,5 +26,6 @@ stdenv.mkDerivation rec {
     license = licenses.cc0;
     maintainers = with maintainers; [ athas r-burns ];
     platforms = platforms.unix;
+    mainProgram = "clinfo";
   };
 }
diff --git a/pkgs/tools/system/colorls/default.nix b/pkgs/tools/system/colorls/default.nix
index 8243590cd7d5..3dc460140cb6 100644
--- a/pkgs/tools/system/colorls/default.nix
+++ b/pkgs/tools/system/colorls/default.nix
@@ -14,5 +14,6 @@ bundlerApp {
     license     = with licenses; mit;
     maintainers = with maintainers; [ lukebfox nicknovitski cbley ];
     platforms   = ruby.meta.platforms;
+    mainProgram = "colorls";
   };
 }
diff --git a/pkgs/tools/system/confd/default.nix b/pkgs/tools/system/confd/default.nix
index 25f03e1a665f..bdbba9bc9f21 100644
--- a/pkgs/tools/system/confd/default.nix
+++ b/pkgs/tools/system/confd/default.nix
@@ -20,5 +20,6 @@ buildGoPackage rec {
     homepage = "https://github.com/kelseyhightower/confd";
     license = lib.licenses.mit;
     maintainers = [ lib.maintainers.zimbatm ];
+    mainProgram = "confd";
   };
 }
diff --git a/pkgs/tools/system/ctop/default.nix b/pkgs/tools/system/ctop/default.nix
index e3a9e82d8a22..6cf30afa3fd7 100644
--- a/pkgs/tools/system/ctop/default.nix
+++ b/pkgs/tools/system/ctop/default.nix
@@ -20,5 +20,6 @@ buildGoModule rec {
     homepage = "https://ctop.sh/";
     license = licenses.mit;
     maintainers = with maintainers; [ apeyroux marsam ];
+    mainProgram = "ctop";
   };
 }
diff --git a/pkgs/tools/system/daemon/default.nix b/pkgs/tools/system/daemon/default.nix
index 7d63b12850ea..0a7b57934717 100644
--- a/pkgs/tools/system/daemon/default.nix
+++ b/pkgs/tools/system/daemon/default.nix
@@ -28,5 +28,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.sander ];
     platforms = platforms.unix;
+    mainProgram = "daemon";
   };
 }
diff --git a/pkgs/tools/system/daemonize/default.nix b/pkgs/tools/system/daemonize/default.nix
index b3cf2a4356f6..3a1340e606d0 100644
--- a/pkgs/tools/system/daemonize/default.nix
+++ b/pkgs/tools/system/daemonize/default.nix
@@ -16,5 +16,6 @@ stdenv.mkDerivation rec {
     homepage = "http://software.clapper.org/daemonize/";
     license = licenses.bsd3;
     platforms = with platforms; linux ++ freebsd ++ darwin;
+    mainProgram = "daemonize";
   };
 }
diff --git a/pkgs/tools/system/datefudge/default.nix b/pkgs/tools/system/datefudge/default.nix
index d83e4aa383bc..e32fb70e2e09 100644
--- a/pkgs/tools/system/datefudge/default.nix
+++ b/pkgs/tools/system/datefudge/default.nix
@@ -40,5 +40,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ leenaars ];
+    mainProgram = "datefudge";
   };
 }
diff --git a/pkgs/tools/system/dcfldd/default.nix b/pkgs/tools/system/dcfldd/default.nix
index 7047d41c5bb5..395b4431acee 100644
--- a/pkgs/tools/system/dcfldd/default.nix
+++ b/pkgs/tools/system/dcfldd/default.nix
@@ -20,5 +20,6 @@ stdenv.mkDerivation rec {
 
     platforms = platforms.all;
     maintainers = with maintainers; [ qknight ];
+    mainProgram = "dcfldd";
   };
 }
diff --git a/pkgs/tools/system/ddh/default.nix b/pkgs/tools/system/ddh/default.nix
index cba8ade1f428..33618da36376 100644
--- a/pkgs/tools/system/ddh/default.nix
+++ b/pkgs/tools/system/ddh/default.nix
@@ -22,5 +22,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.lgpl3Only;
     maintainers = with maintainers; [ h7x4 ];
     platforms = platforms.all;
+    mainProgram = "ddh";
   };
 }
diff --git a/pkgs/tools/system/ddrescueview/default.nix b/pkgs/tools/system/ddrescueview/default.nix
index c22c74cd4a84..3576c0eb6537 100644
--- a/pkgs/tools/system/ddrescueview/default.nix
+++ b/pkgs/tools/system/ddrescueview/default.nix
@@ -33,5 +33,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ orivej ];
+    mainProgram = "ddrescueview";
   };
 }
diff --git a/pkgs/tools/system/dfc/default.nix b/pkgs/tools/system/dfc/default.nix
index 6478e699539f..0ad1d745b066 100644
--- a/pkgs/tools/system/dfc/default.nix
+++ b/pkgs/tools/system/dfc/default.nix
@@ -17,5 +17,6 @@ stdenv.mkDerivation rec {
     license = lib.licenses.bsd3;
     maintainers = with lib.maintainers; [qknight];
     platforms = lib.platforms.all;
+    mainProgram = "dfc";
   };
 }
diff --git a/pkgs/tools/system/dfrs/default.nix b/pkgs/tools/system/dfrs/default.nix
index f9bbbd12388f..002e421900b9 100644
--- a/pkgs/tools/system/dfrs/default.nix
+++ b/pkgs/tools/system/dfrs/default.nix
@@ -18,5 +18,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/anthraxx/dfrs";
     license = licenses.mit;
     maintainers = with maintainers; [ wamserma ];
+    mainProgram = "dfrs";
   };
 }
diff --git a/pkgs/tools/system/disk-filltest/default.nix b/pkgs/tools/system/disk-filltest/default.nix
index ecfa14aa91be..aeef6732236f 100644
--- a/pkgs/tools/system/disk-filltest/default.nix
+++ b/pkgs/tools/system/disk-filltest/default.nix
@@ -33,6 +33,7 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3;
     maintainers = with maintainers; [ caadar ];
     platforms = platforms.all;
+    mainProgram = "disk-filltest";
   };
 
 }
diff --git a/pkgs/tools/system/dog/default.nix b/pkgs/tools/system/dog/default.nix
index 6d15f5bbd52b..b8ed50c0c63e 100644
--- a/pkgs/tools/system/dog/default.nix
+++ b/pkgs/tools/system/dog/default.nix
@@ -29,5 +29,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ qknight ];
     platforms = platforms.all;
+    mainProgram = "dog";
   };
 }
diff --git a/pkgs/tools/system/dool/default.nix b/pkgs/tools/system/dool/default.nix
index 27d98a49ef7d..a54bcd4b14e8 100644
--- a/pkgs/tools/system/dool/default.nix
+++ b/pkgs/tools/system/dool/default.nix
@@ -38,5 +38,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ figsoda ];
     platforms = platforms.unix;
+    mainProgram = "dool";
   };
 }
diff --git a/pkgs/tools/system/envconsul/default.nix b/pkgs/tools/system/envconsul/default.nix
index 5f21a0bcafdc..f3e5609d9abd 100644
--- a/pkgs/tools/system/envconsul/default.nix
+++ b/pkgs/tools/system/envconsul/default.nix
@@ -29,5 +29,6 @@ buildGoModule rec {
     description = "Read and set environmental variables for processes from Consul";
     license = licenses.mpl20;
     maintainers = with maintainers; [ pradeepchhetri ];
+    mainProgram = "envconsul";
   };
 }
diff --git a/pkgs/tools/system/epilys-bb/default.nix b/pkgs/tools/system/epilys-bb/default.nix
index 169e10bc30c4..44a1e566c5d4 100644
--- a/pkgs/tools/system/epilys-bb/default.nix
+++ b/pkgs/tools/system/epilys-bb/default.nix
@@ -19,5 +19,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ cafkafk ];
     platforms = platforms.linux;
+    mainProgram = "bb";
   };
 }
diff --git a/pkgs/tools/system/facter/default.nix b/pkgs/tools/system/facter/default.nix
index c6c091c1fba1..02c48d302ac3 100644
--- a/pkgs/tools/system/facter/default.nix
+++ b/pkgs/tools/system/facter/default.nix
@@ -34,5 +34,6 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     maintainers = [ maintainers.womfoo ];
     platforms = platforms.unix;
+    mainProgram = "facter";
   };
 }
diff --git a/pkgs/tools/system/foreman/default.nix b/pkgs/tools/system/foreman/default.nix
index ce2f20176290..8a7cfde32ee0 100644
--- a/pkgs/tools/system/foreman/default.nix
+++ b/pkgs/tools/system/foreman/default.nix
@@ -11,5 +11,6 @@ bundlerEnv {
     license = licenses.mit;
     maintainers = with maintainers; [ zimbatm ];
     platforms = ruby.meta.platforms;
+    mainProgram = "foreman";
   };
 }
diff --git a/pkgs/tools/system/foremost/default.nix b/pkgs/tools/system/foremost/default.nix
index 140ce91fd66c..a1a09826c537 100644
--- a/pkgs/tools/system/foremost/default.nix
+++ b/pkgs/tools/system/foremost/default.nix
@@ -41,5 +41,6 @@ stdenv.mkDerivation rec {
     license = licenses.publicDomain;
     maintainers = [ maintainers.jiegec ];
     platforms = platforms.linux ++ platforms.darwin;
+    mainProgram = "foremost";
   };
 }
diff --git a/pkgs/tools/system/gdmap/default.nix b/pkgs/tools/system/gdmap/default.nix
index 2d5cafc4de1c..900dabf834b5 100644
--- a/pkgs/tools/system/gdmap/default.nix
+++ b/pkgs/tools/system/gdmap/default.nix
@@ -24,5 +24,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
+    mainProgram = "gdmap";
   };
 }
diff --git a/pkgs/tools/system/gdu/default.nix b/pkgs/tools/system/gdu/default.nix
index 1b6f44fd700b..ba95a6730630 100644
--- a/pkgs/tools/system/gdu/default.nix
+++ b/pkgs/tools/system/gdu/default.nix
@@ -55,5 +55,6 @@ buildGoModule rec {
     changelog = "https://github.com/dundee/gdu/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab zowoq ];
+    mainProgram = "gdu";
   };
 }
diff --git a/pkgs/tools/system/gkraken/default.nix b/pkgs/tools/system/gkraken/default.nix
index f37a21db79f4..330d9f1129f7 100644
--- a/pkgs/tools/system/gkraken/default.nix
+++ b/pkgs/tools/system/gkraken/default.nix
@@ -82,5 +82,6 @@ python3Packages.buildPythonApplication rec {
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ OPNA2608 ];
     platforms = platforms.linux;
+    mainProgram = "gkraken";
   };
 }
diff --git a/pkgs/tools/system/go-audit/default.nix b/pkgs/tools/system/go-audit/default.nix
index 83bd7827fff5..38fd38897390 100644
--- a/pkgs/tools/system/go-audit/default.nix
+++ b/pkgs/tools/system/go-audit/default.nix
@@ -25,5 +25,6 @@ buildGoModule rec {
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
     platforms = platforms.linux;
+    mainProgram = "go-audit";
   };
 }
diff --git a/pkgs/tools/system/gohai/default.nix b/pkgs/tools/system/gohai/default.nix
index 64d051a923f2..5fa84e873ba3 100644
--- a/pkgs/tools/system/gohai/default.nix
+++ b/pkgs/tools/system/gohai/default.nix
@@ -27,5 +27,6 @@ buildGoModule rec {
       information. It is used by the Datadog agent to provide detailed
       system metrics.
     '';
+    mainProgram = "gohai";
   };
 }
diff --git a/pkgs/tools/system/gopsuinfo/default.nix b/pkgs/tools/system/gopsuinfo/default.nix
index df8cd5026eaf..b4a1003e40cf 100644
--- a/pkgs/tools/system/gopsuinfo/default.nix
+++ b/pkgs/tools/system/gopsuinfo/default.nix
@@ -37,5 +37,6 @@ buildGoModule rec {
     license = licenses.bsd2;
     maintainers = with maintainers; [ otini ];
     platforms = platforms.linux;
+    mainProgram = "gopsuinfo";
   };
 }
diff --git a/pkgs/tools/system/gotop/default.nix b/pkgs/tools/system/gotop/default.nix
index 966406971a55..9681d3286cef 100644
--- a/pkgs/tools/system/gotop/default.nix
+++ b/pkgs/tools/system/gotop/default.nix
@@ -49,5 +49,6 @@ buildGoModule rec {
     changelog = "https://github.com/xxxserxxx/gotop/raw/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = [ maintainers.magnetophon ];
+    mainProgram = "gotop";
   };
 }
diff --git a/pkgs/tools/system/gptman/default.nix b/pkgs/tools/system/gptman/default.nix
index e8fc661dd72d..3e3fc623a9e7 100644
--- a/pkgs/tools/system/gptman/default.nix
+++ b/pkgs/tools/system/gptman/default.nix
@@ -26,5 +26,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/rust-disk-partition-management/gptman";
     license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ akshgpt7 ];
+    mainProgram = "gptman";
   };
 }
diff --git a/pkgs/tools/system/gt5/default.nix b/pkgs/tools/system/gt5/default.nix
index edd1a8ecfd48..49d9fe651d49 100644
--- a/pkgs/tools/system/gt5/default.nix
+++ b/pkgs/tools/system/gt5/default.nix
@@ -23,5 +23,6 @@ stdenv.mkDerivation rec {
     license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [viric];
     platforms = with lib.platforms; all;
+    mainProgram = "gt5";
   };
 }
diff --git a/pkgs/tools/system/gtop/default.nix b/pkgs/tools/system/gtop/default.nix
index 766719dfb347..327f09a91fb3 100644
--- a/pkgs/tools/system/gtop/default.nix
+++ b/pkgs/tools/system/gtop/default.nix
@@ -23,5 +23,6 @@ buildNpmPackage rec {
     homepage = "https://github.com/aksakalli/gtop";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ tfc ];
+    mainProgram = "gtop";
   };
 }
diff --git a/pkgs/tools/system/hardinfo/default.nix b/pkgs/tools/system/hardinfo/default.nix
index 66669b5e850c..99ffe50786ec 100644
--- a/pkgs/tools/system/hardinfo/default.nix
+++ b/pkgs/tools/system/hardinfo/default.nix
@@ -46,5 +46,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     maintainers = with maintainers; [ bjornfor ];
     platforms = [ "x86_64-linux" "i686-linux" ]; # ARMv7 and AArch64 are unsupported
+    mainProgram = "hardinfo";
   };
 }
diff --git a/pkgs/tools/system/hddfancontrol/default.nix b/pkgs/tools/system/hddfancontrol/default.nix
index 117acd7f7531..64409cbcdba0 100644
--- a/pkgs/tools/system/hddfancontrol/default.nix
+++ b/pkgs/tools/system/hddfancontrol/default.nix
@@ -30,5 +30,6 @@ python3Packages.buildPythonPackage rec {
     homepage = "https://github.com/desbma/hddfancontrol";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ benley ];
+    mainProgram = "hddfancontrol";
   };
 }
diff --git a/pkgs/tools/system/hiera-eyaml/default.nix b/pkgs/tools/system/hiera-eyaml/default.nix
index be6fb1c7462a..1f48d37f5847 100644
--- a/pkgs/tools/system/hiera-eyaml/default.nix
+++ b/pkgs/tools/system/hiera-eyaml/default.nix
@@ -13,5 +13,6 @@ bundlerEnv {
     license = licenses.mit;
     maintainers = with maintainers; [ benley nicknovitski ];
     platforms = platforms.unix;
+    mainProgram = "eyaml";
   };
 }
diff --git a/pkgs/tools/system/honcho/default.nix b/pkgs/tools/system/honcho/default.nix
index 1fef47933bb5..08c0fb3f6b58 100644
--- a/pkgs/tools/system/honcho/default.nix
+++ b/pkgs/tools/system/honcho/default.nix
@@ -34,5 +34,6 @@ python3Packages.buildPythonApplication rec {
     homepage = "https://github.com/nickstenning/honcho";
     maintainers = with maintainers; [ benley ];
     platforms = platforms.unix;
+    mainProgram = "honcho";
   };
 }
diff --git a/pkgs/tools/system/hostctl/default.nix b/pkgs/tools/system/hostctl/default.nix
index 9f349423f9f0..76c41d85ecdf 100644
--- a/pkgs/tools/system/hostctl/default.nix
+++ b/pkgs/tools/system/hostctl/default.nix
@@ -42,5 +42,6 @@ buildGoModule rec {
     homepage = "https://guumaster.github.io/hostctl/";
     license = licenses.mit;
     maintainers = with maintainers; [ blaggacao ];
+    mainProgram = "hostctl";
   };
 }
diff --git a/pkgs/tools/system/hw-probe/default.nix b/pkgs/tools/system/hw-probe/default.nix
index 501ae69dbfd2..8b190087ffd5 100644
--- a/pkgs/tools/system/hw-probe/default.nix
+++ b/pkgs/tools/system/hw-probe/default.nix
@@ -136,5 +136,6 @@ stdenv.mkDerivation rec {
     platforms = with platforms; (linux ++ freebsd ++ netbsd ++ openbsd);
     license = with licenses; [ lgpl21 bsdOriginal ];
     maintainers = with maintainers; [ rehno-lindeque  ];
+    mainProgram = "hw-probe";
   };
 }
diff --git a/pkgs/tools/system/idle3tools/default.nix b/pkgs/tools/system/idle3tools/default.nix
index c0386fb66bcf..d66a7f9b66a8 100644
--- a/pkgs/tools/system/idle3tools/default.nix
+++ b/pkgs/tools/system/idle3tools/default.nix
@@ -19,5 +19,6 @@ stdenv.mkDerivation rec {
     license = lib.licenses.gpl3;
     maintainers = with lib.maintainers; [viric];
     platforms = with lib.platforms; linux;
+    mainProgram = "idle3ctl";
   };
 }
diff --git a/pkgs/tools/system/illum/default.nix b/pkgs/tools/system/illum/default.nix
index c9e87bef6214..3d33be9ed635 100644
--- a/pkgs/tools/system/illum/default.nix
+++ b/pkgs/tools/system/illum/default.nix
@@ -38,5 +38,6 @@ stdenv.mkDerivation rec {
     platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.dancek ];
     license = lib.licenses.agpl3;
+    mainProgram = "illum-d";
   };
 }
diff --git a/pkgs/tools/system/inxi/default.nix b/pkgs/tools/system/inxi/default.nix
index b03a7c14a7d6..a376146032ac 100644
--- a/pkgs/tools/system/inxi/default.nix
+++ b/pkgs/tools/system/inxi/default.nix
@@ -58,5 +58,6 @@ in stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ ];
+    mainProgram = "inxi";
   };
 }
diff --git a/pkgs/tools/system/ioping/default.nix b/pkgs/tools/system/ioping/default.nix
index 9af290503f49..f610258cf503 100644
--- a/pkgs/tools/system/ioping/default.nix
+++ b/pkgs/tools/system/ioping/default.nix
@@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     license = licenses.gpl3Plus;
     homepage = "https://github.com/koct9i/ioping";
+    mainProgram = "ioping";
   };
 }
diff --git a/pkgs/tools/system/java-service-wrapper/default.nix b/pkgs/tools/system/java-service-wrapper/default.nix
index 63300964f672..acc5ddf3f54e 100644
--- a/pkgs/tools/system/java-service-wrapper/default.nix
+++ b/pkgs/tools/system/java-service-wrapper/default.nix
@@ -46,5 +46,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Only;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = [ maintainers.suhr ];
+    mainProgram = "wrapper";
   };
 }
diff --git a/pkgs/tools/system/jobber/default.nix b/pkgs/tools/system/jobber/default.nix
index d226d82d8cd8..d9620e49977b 100644
--- a/pkgs/tools/system/jobber/default.nix
+++ b/pkgs/tools/system/jobber/default.nix
@@ -36,5 +36,6 @@ buildGoModule rec {
     description = "An alternative to cron, with sophisticated status-reporting and error-handling";
     license = licenses.mit;
     maintainers = with maintainers; [ urandom ];
+    mainProgram = "jobber";
   };
 }
diff --git a/pkgs/tools/system/jsvc/default.nix b/pkgs/tools/system/jsvc/default.nix
index 4dcc773ebf43..9d1b07895fc3 100644
--- a/pkgs/tools/system/jsvc/default.nix
+++ b/pkgs/tools/system/jsvc/default.nix
@@ -36,5 +36,6 @@ stdenv.mkDerivation rec {
     maintainers = with lib.maintainers; [ rsynnest ];
     license     = lib.licenses.asl20;
     platforms = with lib.platforms; unix;
+    mainProgram = "jsvc";
   };
 }
diff --git a/pkgs/tools/system/jump/default.nix b/pkgs/tools/system/jump/default.nix
index 3ff64996d013..483ea356f0e9 100644
--- a/pkgs/tools/system/jump/default.nix
+++ b/pkgs/tools/system/jump/default.nix
@@ -31,5 +31,6 @@ buildGoModule rec {
     homepage = "https://github.com/gsamokovarov/jump";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
+    mainProgram = "jump";
   };
 }
diff --git a/pkgs/tools/system/kmon/default.nix b/pkgs/tools/system/kmon/default.nix
index 4b9b2d009932..df7ccfa4cf25 100644
--- a/pkgs/tools/system/kmon/default.nix
+++ b/pkgs/tools/system/kmon/default.nix
@@ -30,5 +30,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.gpl3Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ figsoda misuzu matthiasbeyer ];
+    mainProgram = "kmon";
   };
 }
diff --git a/pkgs/tools/system/lact/default.nix b/pkgs/tools/system/lact/default.nix
index e91326972949..234e58832fca 100644
--- a/pkgs/tools/system/lact/default.nix
+++ b/pkgs/tools/system/lact/default.nix
@@ -76,5 +76,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ figsoda ];
     platforms = platforms.linux;
+    mainProgram = "lact";
   };
 }
diff --git a/pkgs/tools/system/localtime/default.nix b/pkgs/tools/system/localtime/default.nix
index 10ee42bf0308..bdb1fa2e7444 100644
--- a/pkgs/tools/system/localtime/default.nix
+++ b/pkgs/tools/system/localtime/default.nix
@@ -39,5 +39,6 @@ buildGoModule {
     maintainers = with maintainers; [ lovesegfault ];
     platforms = platforms.linux;
     license = licenses.gpl3;
+    mainProgram = "localtimed";
   };
 }
diff --git a/pkgs/tools/system/logrotate/default.nix b/pkgs/tools/system/logrotate/default.nix
index e7d60479a3e5..e92f34188f4f 100644
--- a/pkgs/tools/system/logrotate/default.nix
+++ b/pkgs/tools/system/logrotate/default.nix
@@ -33,5 +33,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.viric ];
     platforms = platforms.all;
+    mainProgram = "logrotate";
   };
 }
diff --git a/pkgs/tools/system/lr/default.nix b/pkgs/tools/system/lr/default.nix
index 806b329196a2..e3f62a79e4c1 100644
--- a/pkgs/tools/system/lr/default.nix
+++ b/pkgs/tools/system/lr/default.nix
@@ -19,5 +19,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ vikanezrimaya ];
+    mainProgram = "lr";
   };
 }
diff --git a/pkgs/tools/system/lshw/default.nix b/pkgs/tools/system/lshw/default.nix
index f5b4486365c3..9878f82b9d09 100644
--- a/pkgs/tools/system/lshw/default.nix
+++ b/pkgs/tools/system/lshw/default.nix
@@ -47,5 +47,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     maintainers = with maintainers; [ thiagokokada ];
     platforms = platforms.linux;
+    mainProgram = "lshw";
   };
 }
diff --git a/pkgs/tools/system/mediawriter/default.nix b/pkgs/tools/system/mediawriter/default.nix
index eaea077c8520..f0b8305bc8e8 100644
--- a/pkgs/tools/system/mediawriter/default.nix
+++ b/pkgs/tools/system/mediawriter/default.nix
@@ -41,5 +41,6 @@ stdenv.mkDerivation rec {
     changelog = "https://github.com/FedoraQt/MediaWriter/releases/tag/${version}";
     license = licenses.lgpl2Only;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "mediawriter";
   };
 }
diff --git a/pkgs/tools/system/memtester/default.nix b/pkgs/tools/system/memtester/default.nix
index 14b3610abe97..7753ed804e16 100644
--- a/pkgs/tools/system/memtester/default.nix
+++ b/pkgs/tools/system/memtester/default.nix
@@ -22,5 +22,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.unix;
+    mainProgram = "memtester";
   };
 }
diff --git a/pkgs/tools/system/minijail/default.nix b/pkgs/tools/system/minijail/default.nix
index ab237dd30727..87913252ab4b 100644
--- a/pkgs/tools/system/minijail/default.nix
+++ b/pkgs/tools/system/minijail/default.nix
@@ -43,5 +43,6 @@ stdenv.mkDerivation rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ pcarrier qyliss ];
     platforms = platforms.linux;
+    mainProgram = "minijail0";
   };
 }
diff --git a/pkgs/tools/system/mlc/default.nix b/pkgs/tools/system/mlc/default.nix
index 5df3579ca9a1..409738e4a353 100644
--- a/pkgs/tools/system/mlc/default.nix
+++ b/pkgs/tools/system/mlc/default.nix
@@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
     license = licenses.unfree;
     maintainers = with maintainers; [ basvandijk ];
     platforms = with platforms; linux;
+    mainProgram = "mlc";
   };
 }
diff --git a/pkgs/tools/system/monit/default.nix b/pkgs/tools/system/monit/default.nix
index f1ebd6596c5b..bd36d6fa400e 100644
--- a/pkgs/tools/system/monit/default.nix
+++ b/pkgs/tools/system/monit/default.nix
@@ -50,5 +50,6 @@ stdenv.mkDerivation rec {
     license = lib.licenses.agpl3;
     maintainers = with lib.maintainers; [ raskin wmertens ryantm ];
     platforms = with lib; platforms.linux ++ platforms.darwin;
+    mainProgram = "monit";
   };
 }
diff --git a/pkgs/tools/system/mq-cli/default.nix b/pkgs/tools/system/mq-cli/default.nix
index cdbff1921a79..81adc7daa272 100644
--- a/pkgs/tools/system/mq-cli/default.nix
+++ b/pkgs/tools/system/mq-cli/default.nix
@@ -19,5 +19,6 @@ rustPlatform.buildRustPackage rec {
     license          = licenses.mit;
     maintainers      = with maintainers; [ tazjin ];
     platforms        = platforms.linux;
+    mainProgram      = "mq";
   };
 }
diff --git a/pkgs/tools/system/nats-top/default.nix b/pkgs/tools/system/nats-top/default.nix
index 49d70e0b30cf..c26c65d48a89 100644
--- a/pkgs/tools/system/nats-top/default.nix
+++ b/pkgs/tools/system/nats-top/default.nix
@@ -37,5 +37,6 @@ buildGoModule rec {
     changelog = "https://github.com/nats-io/nats-top/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
+    mainProgram = "nats-top";
   };
 }
diff --git a/pkgs/tools/system/opencl-info/default.nix b/pkgs/tools/system/opencl-info/default.nix
index 124b53512d72..fc549d2d7961 100644
--- a/pkgs/tools/system/opencl-info/default.nix
+++ b/pkgs/tools/system/opencl-info/default.nix
@@ -33,5 +33,6 @@ stdenv.mkDerivation {
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar ];
+    mainProgram = "opencl-info";
   };
 }
diff --git a/pkgs/tools/system/pcstat/default.nix b/pkgs/tools/system/pcstat/default.nix
index 8e45896632b3..85e6c791990e 100644
--- a/pkgs/tools/system/pcstat/default.nix
+++ b/pkgs/tools/system/pcstat/default.nix
@@ -18,5 +18,6 @@ buildGoModule rec {
     homepage = "https://github.com/tobert/pcstat";
     license = licenses.asl20;
     maintainers = with maintainers; [ aminechikhaoui ];
+    mainProgram = "pcstat";
   };
 }
diff --git a/pkgs/tools/system/procodile/default.nix b/pkgs/tools/system/procodile/default.nix
index 6c463b454333..3c4437ea09c4 100644
--- a/pkgs/tools/system/procodile/default.nix
+++ b/pkgs/tools/system/procodile/default.nix
@@ -13,5 +13,6 @@ bundlerApp {
     license     = with licenses; mit;
     maintainers = with maintainers; [ manveru nicknovitski ];
     platforms   = platforms.unix;
+    mainProgram = "procodile";
   };
 }
diff --git a/pkgs/tools/system/ps_mem/default.nix b/pkgs/tools/system/ps_mem/default.nix
index 8408ed5e8d18..96c21e461d4a 100644
--- a/pkgs/tools/system/ps_mem/default.nix
+++ b/pkgs/tools/system/ps_mem/default.nix
@@ -17,5 +17,6 @@ python3Packages.buildPythonApplication rec {
     license = licenses.lgpl21;
     maintainers = [ ];
     platforms = platforms.linux;
+    mainProgram = "ps_mem";
   };
 }
diff --git a/pkgs/tools/system/psensor/default.nix b/pkgs/tools/system/psensor/default.nix
index b6c6e947b0c4..47456b76f325 100644
--- a/pkgs/tools/system/psensor/default.nix
+++ b/pkgs/tools/system/psensor/default.nix
@@ -46,5 +46,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
+    mainProgram = "psensor";
   };
 }
diff --git a/pkgs/tools/system/psstop/default.nix b/pkgs/tools/system/psstop/default.nix
index 1d4fff918ec7..1adb6c4e5ed5 100644
--- a/pkgs/tools/system/psstop/default.nix
+++ b/pkgs/tools/system/psstop/default.nix
@@ -20,5 +20,6 @@ stdenv.mkDerivation rec {
     description = "Show processes' memory usage by looking into pss"; # upstream summary
     license = licenses.gpl3;
     maintainers = with maintainers; [ dtzWill ];
+    mainProgram = "psstop";
   };
 }
diff --git a/pkgs/tools/system/r10k/default.nix b/pkgs/tools/system/r10k/default.nix
index 12522bd8cff1..75b75d00253e 100644
--- a/pkgs/tools/system/r10k/default.nix
+++ b/pkgs/tools/system/r10k/default.nix
@@ -19,5 +19,6 @@ bundlerApp {
     license     = licenses.asl20;
     maintainers = with maintainers; [ zimbatm manveru nicknovitski ];
     platforms = platforms.unix;
+    mainProgram = "r10k";
   };
 }
diff --git a/pkgs/tools/system/retry/default.nix b/pkgs/tools/system/retry/default.nix
index 34d4bbb13960..998ba8cb7286 100644
--- a/pkgs/tools/system/retry/default.nix
+++ b/pkgs/tools/system/retry/default.nix
@@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ gfrascadorio ];
     platforms = platforms.all;
+    mainProgram = "retry";
   };
 }
 
diff --git a/pkgs/tools/system/rofi-systemd/default.nix b/pkgs/tools/system/rofi-systemd/default.nix
index f64a84c55095..b8be1adea984 100644
--- a/pkgs/tools/system/rofi-systemd/default.nix
+++ b/pkgs/tools/system/rofi-systemd/default.nix
@@ -42,5 +42,6 @@ stdenv.mkDerivation rec {
     maintainers = with lib.maintainers; [ imalison ];
     license = lib.licenses.gpl3;
     platforms = with lib.platforms; linux;
+    mainProgram = "rofi-systemd";
   };
 }
diff --git a/pkgs/tools/system/runitor/default.nix b/pkgs/tools/system/runitor/default.nix
index d724d4c43700..d5d2f50cc0f5 100644
--- a/pkgs/tools/system/runitor/default.nix
+++ b/pkgs/tools/system/runitor/default.nix
@@ -39,5 +39,6 @@ buildGoModule rec {
     '';
     license = licenses.bsd0;
     maintainers = with maintainers; [ bdd ];
+    mainProgram = "runitor";
   };
 }
diff --git a/pkgs/tools/system/rwc/default.nix b/pkgs/tools/system/rwc/default.nix
index 7180c2554702..19d1c1abbfec 100644
--- a/pkgs/tools/system/rwc/default.nix
+++ b/pkgs/tools/system/rwc/default.nix
@@ -18,5 +18,6 @@ stdenv.mkDerivation rec {
     license = licenses.publicDomain;
     platforms = platforms.linux;
     maintainers = with maintainers; [ somasis ];
+    mainProgram = "rwc";
   };
 }
diff --git a/pkgs/tools/system/s-tui/default.nix b/pkgs/tools/system/s-tui/default.nix
index 29b37aa0b0fd..8f81ba97a0da 100644
--- a/pkgs/tools/system/s-tui/default.nix
+++ b/pkgs/tools/system/s-tui/default.nix
@@ -32,5 +32,6 @@ python3Packages.buildPythonPackage rec {
     license = licenses.gpl2;
     maintainers = with maintainers; [ infinisil ];
     broken = stdenv.isDarwin; # https://github.com/amanusk/s-tui/issues/49
+    mainProgram = "s-tui";
   };
 }
diff --git a/pkgs/tools/system/s0ix-selftest-tool/default.nix b/pkgs/tools/system/s0ix-selftest-tool/default.nix
index f75ba42ac90a..535a68f6ff75 100644
--- a/pkgs/tools/system/s0ix-selftest-tool/default.nix
+++ b/pkgs/tools/system/s0ix-selftest-tool/default.nix
@@ -76,5 +76,6 @@ resholve.mkDerivation {
     license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [adamcstephens];
+    mainProgram = "s0ix-selftest-tool";
   };
 }
diff --git a/pkgs/tools/system/safe-rm/default.nix b/pkgs/tools/system/safe-rm/default.nix
index bac9bb356024..26b0aba9889f 100644
--- a/pkgs/tools/system/safe-rm/default.nix
+++ b/pkgs/tools/system/safe-rm/default.nix
@@ -32,5 +32,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.gpl3Plus;
     platforms = platforms.all;
     maintainers = with maintainers; [ SuperSandro2000 ];
+    mainProgram = "safe-rm";
   };
 }
diff --git a/pkgs/tools/system/safecopy/default.nix b/pkgs/tools/system/safecopy/default.nix
index ff7149a4063a..2bf454777765 100644
--- a/pkgs/tools/system/safecopy/default.nix
+++ b/pkgs/tools/system/safecopy/default.nix
@@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
 
     platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.bluescreen303 ];
+    mainProgram = "safecopy";
   };
 }
diff --git a/pkgs/tools/system/setserial/default.nix b/pkgs/tools/system/setserial/default.nix
index be4ffa3388e7..d224b96d89dc 100644
--- a/pkgs/tools/system/setserial/default.nix
+++ b/pkgs/tools/system/setserial/default.nix
@@ -23,5 +23,6 @@ stdenv.mkDerivation rec {
     description = "Serial port configuration utility";
     platforms = lib.platforms.linux;
     license = lib.licenses.gpl2;
+    mainProgram = "setserial";
   };
 }
diff --git a/pkgs/tools/system/skeema/default.nix b/pkgs/tools/system/skeema/default.nix
index 86798155047c..1d5c7c4886a9 100644
--- a/pkgs/tools/system/skeema/default.nix
+++ b/pkgs/tools/system/skeema/default.nix
@@ -53,5 +53,6 @@ buildGoModule rec {
     homepage = "https://skeema.io/";
     license = licenses.asl20;
     maintainers = with maintainers; [ aaronjheng ];
+    mainProgram = "skeema";
   };
 }
diff --git a/pkgs/tools/system/snooze/default.nix b/pkgs/tools/system/snooze/default.nix
index bfe91c6e0e8d..1a719a494f84 100644
--- a/pkgs/tools/system/snooze/default.nix
+++ b/pkgs/tools/system/snooze/default.nix
@@ -15,5 +15,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ kaction ];
     license = licenses.cc0;
     platforms = platforms.unix;
+    mainProgram = "snooze";
   };
 }
diff --git a/pkgs/tools/system/stacer/default.nix b/pkgs/tools/system/stacer/default.nix
index 75068148bd74..57d376bea9fe 100644
--- a/pkgs/tools/system/stacer/default.nix
+++ b/pkgs/tools/system/stacer/default.nix
@@ -45,5 +45,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ dit7ya ];
     platforms = platforms.linux;
+    mainProgram = "stacer";
   };
 }
diff --git a/pkgs/tools/system/stress-ng/default.nix b/pkgs/tools/system/stress-ng/default.nix
index b6ce8fc8d8a4..40211cb4e71b 100644
--- a/pkgs/tools/system/stress-ng/default.nix
+++ b/pkgs/tools/system/stress-ng/default.nix
@@ -70,5 +70,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ c0bw3b ];
     platforms = platforms.unix;
+    mainProgram = "stress-ng";
   };
 }
diff --git a/pkgs/tools/system/stress/default.nix b/pkgs/tools/system/stress/default.nix
index ab765c820131..0334ed757b36 100644
--- a/pkgs/tools/system/stress/default.nix
+++ b/pkgs/tools/system/stress/default.nix
@@ -17,5 +17,6 @@ stdenv.mkDerivation rec {
     description = "Simple workload generator for POSIX systems. It imposes a configurable amount of CPU, memory, I/O, and disk stress on the system";
     license = licenses.gpl2;
     platforms = platforms.unix;
+    mainProgram = "stress";
   };
 }
diff --git a/pkgs/tools/system/stressapptest/default.nix b/pkgs/tools/system/stressapptest/default.nix
index 2a1bc008e18c..3243db0d0076 100644
--- a/pkgs/tools/system/stressapptest/default.nix
+++ b/pkgs/tools/system/stressapptest/default.nix
@@ -26,5 +26,6 @@ stdenv.mkDerivation rec {
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
     platforms = platforms.unix;
+    mainProgram = "stressapptest";
   };
 }
diff --git a/pkgs/tools/system/supercronic/default.nix b/pkgs/tools/system/supercronic/default.nix
index 3b3f285a0865..6b2b4ef5c43a 100644
--- a/pkgs/tools/system/supercronic/default.nix
+++ b/pkgs/tools/system/supercronic/default.nix
@@ -34,5 +34,6 @@ buildGoModule rec {
     homepage = "https://github.com/aptible/supercronic";
     license = licenses.mit;
     maintainers = with maintainers; [ nasageek ];
+    mainProgram = "supercronic";
   };
 }
diff --git a/pkgs/tools/system/symlinks/default.nix b/pkgs/tools/system/symlinks/default.nix
index 8d1213c0afef..3a4029542559 100644
--- a/pkgs/tools/system/symlinks/default.nix
+++ b/pkgs/tools/system/symlinks/default.nix
@@ -25,5 +25,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     maintainers = with maintainers; [ goibhniu ckauhaus ];
     platforms = platforms.unix;
+    mainProgram = "symlinks";
   };
 }
diff --git a/pkgs/tools/system/systemd-journal2gelf/default.nix b/pkgs/tools/system/systemd-journal2gelf/default.nix
index ef7f5b039cfb..cb319fbd52d8 100644
--- a/pkgs/tools/system/systemd-journal2gelf/default.nix
+++ b/pkgs/tools/system/systemd-journal2gelf/default.nix
@@ -22,5 +22,6 @@ buildGoModule rec {
     homepage = "https://github.com/parse-nl/SystemdJournal2Gelf";
     license = licenses.bsd2;
     maintainers = with maintainers; [ fadenb fpletz ];
+    mainProgram = "SystemdJournal2Gelf";
   };
 }
diff --git a/pkgs/tools/system/thermald/default.nix b/pkgs/tools/system/thermald/default.nix
index 9f667bb4203e..193287b022d2 100644
--- a/pkgs/tools/system/thermald/default.nix
+++ b/pkgs/tools/system/thermald/default.nix
@@ -70,5 +70,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = with maintainers; [ abbradar ];
+    mainProgram = "thermald";
   };
 }
diff --git a/pkgs/tools/system/thinkfan/default.nix b/pkgs/tools/system/thinkfan/default.nix
index dc6920a97bdc..17887cc7bdf5 100644
--- a/pkgs/tools/system/thinkfan/default.nix
+++ b/pkgs/tools/system/thinkfan/default.nix
@@ -55,5 +55,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/vmatare/thinkfan";
     maintainers = with lib.maintainers; [ domenkozar rnhmjoj ];
     platforms = lib.platforms.linux;
+    mainProgram = "thinkfan";
   };
 }
diff --git a/pkgs/tools/system/tm/default.nix b/pkgs/tools/system/tm/default.nix
index 19ade9b929cb..129630596373 100644
--- a/pkgs/tools/system/tm/default.nix
+++ b/pkgs/tools/system/tm/default.nix
@@ -24,5 +24,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ viric ];
     platforms = platforms.all;
+    mainProgram = "tm";
   };
 }
diff --git a/pkgs/tools/system/tp-auto-kbbl/default.nix b/pkgs/tools/system/tp-auto-kbbl/default.nix
index fa257fc2a361..60bd8dcc6410 100644
--- a/pkgs/tools/system/tp-auto-kbbl/default.nix
+++ b/pkgs/tools/system/tp-auto-kbbl/default.nix
@@ -29,5 +29,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ sebtm ];
     platforms = platforms.linux;
+    mainProgram = "tp-auto-kbbl";
   };
 }
diff --git a/pkgs/tools/system/ts/default.nix b/pkgs/tools/system/ts/default.nix
index df19955b6076..843249f911e8 100644
--- a/pkgs/tools/system/ts/default.nix
+++ b/pkgs/tools/system/ts/default.nix
@@ -23,5 +23,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     maintainers = with maintainers; [ viric ];
     platforms = platforms.all;
+    mainProgram = "ts";
   };
 }
diff --git a/pkgs/tools/system/ttop/default.nix b/pkgs/tools/system/ttop/default.nix
index ceea0e215b1f..694964daf9c3 100644
--- a/pkgs/tools/system/ttop/default.nix
+++ b/pkgs/tools/system/ttop/default.nix
@@ -31,5 +31,6 @@ nimPackages.buildNimPackage (finalAttrs: {
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ figsoda sikmir ];
+    mainProgram = "ttop";
   };
 })
diff --git a/pkgs/tools/system/tuptime/default.nix b/pkgs/tools/system/tuptime/default.nix
index b49063d68093..d93f1a346ca6 100644
--- a/pkgs/tools/system/tuptime/default.nix
+++ b/pkgs/tools/system/tuptime/default.nix
@@ -45,5 +45,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = [ maintainers.evils ];
+    mainProgram = "tuptime";
   };
 }
diff --git a/pkgs/tools/system/ufiformat/default.nix b/pkgs/tools/system/ufiformat/default.nix
index 5b778c5230e3..52204a073ae7 100644
--- a/pkgs/tools/system/ufiformat/default.nix
+++ b/pkgs/tools/system/ufiformat/default.nix
@@ -25,5 +25,6 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.amarshall ];
     platforms = platforms.linux;
     license = licenses.gpl2Plus;
+    mainProgram = "ufiformat";
   };
 }
diff --git a/pkgs/tools/system/undaemonize/default.nix b/pkgs/tools/system/undaemonize/default.nix
index 50ae366d10bd..83007db867dc 100644
--- a/pkgs/tools/system/undaemonize/default.nix
+++ b/pkgs/tools/system/undaemonize/default.nix
@@ -19,6 +19,7 @@ stdenv.mkDerivation {
     license = lib.licenses.mit;
     maintainers = [ lib.maintainers.canndrew ];
     platforms = lib.platforms.linux;
+    mainProgram = "undaemonize";
   };
 }
 
diff --git a/pkgs/tools/system/vbetool/default.nix b/pkgs/tools/system/vbetool/default.nix
index ebdeae60c386..8cc7b338ca96 100644
--- a/pkgs/tools/system/vbetool/default.nix
+++ b/pkgs/tools/system/vbetool/default.nix
@@ -23,5 +23,6 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
     license = licenses.gpl2;
+    mainProgram = "vbetool";
   };
 }
diff --git a/pkgs/tools/system/wsysmon/default.nix b/pkgs/tools/system/wsysmon/default.nix
index 96c3cc30587e..8f03fdf90ccd 100644
--- a/pkgs/tools/system/wsysmon/default.nix
+++ b/pkgs/tools/system/wsysmon/default.nix
@@ -49,5 +49,6 @@ stdenv.mkDerivation rec {
     license = [ licenses.mit ];
     platforms = platforms.linux;
     maintainers = with maintainers; [ totoroot ];
+    mainProgram = "WSysMon";
   };
 }
diff --git a/pkgs/tools/system/xe/default.nix b/pkgs/tools/system/xe/default.nix
index 133c7d873619..2a8231b7fb03 100644
--- a/pkgs/tools/system/xe/default.nix
+++ b/pkgs/tools/system/xe/default.nix
@@ -19,5 +19,6 @@ stdenv.mkDerivation rec {
     license = licenses.publicDomain;
     platforms = platforms.all;
     maintainers = with maintainers; [ ];
+    mainProgram = "xe";
   };
 }
diff --git a/pkgs/tools/system/yeshup/default.nix b/pkgs/tools/system/yeshup/default.nix
index 113d17b09b53..723021d0ee74 100644
--- a/pkgs/tools/system/yeshup/default.nix
+++ b/pkgs/tools/system/yeshup/default.nix
@@ -21,5 +21,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     license = licenses.cc-by-sa-30; # From Stackoverflow answer
     maintainers = with maintainers; [ obadz ];
+    mainProgram = "yeshup";
   };
 }
diff --git a/pkgs/tools/system/zfxtop/default.nix b/pkgs/tools/system/zfxtop/default.nix
index 0ffbeac5e638..5c216c7ca0cb 100644
--- a/pkgs/tools/system/zfxtop/default.nix
+++ b/pkgs/tools/system/zfxtop/default.nix
@@ -21,5 +21,6 @@ buildGoModule rec {
     homepage = "https://github.com/ssleert/zfxtop";
     license = licenses.bsd2;
     maintainers = with maintainers; [ wozeparrot ];
+    mainProgram = "zfxtop";
   };
 }
diff --git a/pkgs/tools/system/zps/default.nix b/pkgs/tools/system/zps/default.nix
index 91ce2ed8f6a8..776a53cdc72c 100644
--- a/pkgs/tools/system/zps/default.nix
+++ b/pkgs/tools/system/zps/default.nix
@@ -32,5 +32,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ figsoda ];
     platforms = platforms.linux;
+    mainProgram = "zps";
   };
 }
diff --git a/pkgs/tools/system/zx/default.nix b/pkgs/tools/system/zx/default.nix
index 857661c31f2f..1dec344ed3aa 100644
--- a/pkgs/tools/system/zx/default.nix
+++ b/pkgs/tools/system/zx/default.nix
@@ -21,5 +21,6 @@ buildNpmPackage rec {
     homepage = "https://github.com/google/zx";
     license = lib.licenses.asl20;
     maintainers = with lib.maintainers; [ hlolli ];
+    mainProgram = "zx";
   };
 }