]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Make "don't run me with sudo/kdesu" message informative
authorNate Graham <nate@kde.org>
Tue, 4 Apr 2023 13:58:16 +0000 (07:58 -0600)
committerNate Graham <nate@kde.org>
Wed, 5 Apr 2023 16:17:56 +0000 (16:17 +0000)
We tell users what not to do, but we don't tell then what to do instead.
At one point we told them to just use Dolphin normally and the polkit
integration would kick in, but that work ended up being reverted and
abandoned. Instead, tell them to use kio-admin, which exists as a
released product and will hopefully not get removed anytime soon.

CCBUG: 467948

src/main.cpp

index e1e559f976e47b9c16600bcc7092ff750f101399..2d1ccd0c89951ca1d881b2be052bce7ae3e453d8 100644 (file)
@@ -54,10 +54,16 @@ int main(int argc, char **argv)
     // Prohibit using sudo or kdesu (but allow using the root user directly)
     if (getuid() == 0) {
         if (!qEnvironmentVariableIsEmpty("SUDO_USER")) {
-            std::cout << "Running Dolphin with sudo can cause bugs and expose you to security vulnerabilities." << std::endl;
+            std::cout << "Running Dolphin with sudo is not supported as it can cause bugs and expose you to security vulnerabilities. Instead, install the "
+                         "`kio-admin` package from your distro and use it to manage root-owned locations by right-clicking on them and selecting \"Open as "
+                         "Administrator\"."
+                      << std::endl;
             return EXIT_FAILURE;
         } else if (!qEnvironmentVariableIsEmpty("KDESU_USER")) {
-            std::cout << "Running Dolphin with kdesu can cause bugs and expose you to security vulnerabilities." << std::endl;
+            std::cout << "Running Dolphin with kdesu is not supported as it can cause bugs and expose you to security vulnerabilities. Instead, install the "
+                         "`kio-admin` package from your distro and use it to manage root-owned locations by right-clicking on them and selecting \"Open as "
+                         "Administrator\"."
+                      << std::endl;
             return EXIT_FAILURE;
         }
     }