Announcement

Collapse
No announcement yet.

No icons when running as other user.

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    No icons when running as other user.

    When, within my KDE session, I login as an other user ( so using `su -l OtherUser` ) I can perfectly start graphical programs such as dolphin or synaptic, but none of the icons are present.

    What is exactly going on or what do I do wrong ?

    The terminal shows (cut after a few lines) :

    Code:
    StandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    kf5.kio.core: Refilling KProtocolInfoFactory cache in the hope to find "stash"
    org.kde.dolphin: Ignore KIO url: QUrl("timeline:/today")
    org.kde.dolphin: Ignore KIO url: QUrl("timeline:/yesterday")
    org.kde.dolphin: Ignore KIO url: QUrl("timeline:/thismonth")
    org.kde.dolphin: Ignore KIO url: QUrl("timeline:/lastmonth")
    org.kde.dolphin: Ignore KIO url: QUrl("search:/documents")
    org.kde.dolphin: Ignore KIO url: QUrl("search:/images")
    org.kde.dolphin: Ignore KIO url: QUrl("search:/audio")
    org.kde.dolphin: Ignore KIO url: QUrl("search:/videos")
    qt.accessibility.core: Cannot create accessible child interface for object:  PlacesView(0x55d6e237d490)  index:  19
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/libexec/kf5/klauncher'
    kdeinit5: Launched KLauncher, pid = 13529, result = 0
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    kdeinit5: opened connection to :0
    kdeinit5: Got EXEC_NEW '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so' from launcher.
    kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so'
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    kdeinit5: Got EXEC_NEW '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/trash.so' from launcher.
    kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/trash.so'
    QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-administrator'
    QPixmap::scaled: Pixmap is a null pixmap
    QPixmap::scaled: Pixmap is a null pixmap
    QPixmap::scaled: Pixmap is a null pixmap

    #2
    It's probably because GUI programs aren't intended to be used that way. Logging into a terminal from from account to another, then launching a GUI program, is probably "pointing" the program at YOUR home but without your ownership, thus things can't be accessed like icon cache. When you do this as root user, you end up with a broken system because root ends up owning files in your home.

    Short answer: This won't work and don't do it. If you need to run a GUI program as another user, use the "Switch User" capability instead.

    Please Read Me

    Comment


      #3
      Originally posted by oshunluvr View Post
      It's probably because GUI programs aren't intended to be used that way. Logging into a terminal from from account to another, then launching a GUI program, is probably "pointing" the program at YOUR home but without your ownership, thus things can't be accessed like icon cache. When you do this as root user, you end up with a broken system because root ends up owning files in your home.

      Short answer: This won't work and don't do it. If you need to run a GUI program as another user, use the "Switch User" capability instead.
      Thanks for the reply. Disappointing though.
      Unix/Linux used to be the environment were you could do this in a trivial way by allowing xhost+ and setting DISPLAY variable ...

      Comment


        #4
        Originally posted by Camiel B View Post
        Thanks for the reply. Disappointing though.
        Unix/Linux used to be the environment were you could do this in a trivial way by allowing xhost+ and setting DISPLAY variable ...
        It were missing XDG_* environment variables in the case of Dolphin. I guess that will be for many Qt applications the case.
        Following does work :

        Code:
        #!/bin/bash
        export XDG_DATA_DIRS=/usr/share/plasma:/usr/local/share:/usr/share:/var/lib/snapd/desktop
        export XDG_CURRENT_DESKTOP=KDE
        export XDG_CONFIG_DIRS=/etc/xdg/xdg-plasma:/etc/xdg:/usr/share/kubuntu-default-settings/kf5-settings
        dolphin

        Comment


          #5
          Interesting. I had no idea that would work.

          Still, I don't see why you would want to, but hey - it's your system

          Please Read Me

          Comment


            #6
            Originally posted by oshunluvr View Post
            Interesting. I had no idea that would work.

            Still, I don't see why you would want to, but hey - it's your system
            The use case is straightforward : from within my 'serious' account, I every now and then want to have a peek into or a short chat in an other account. Switching sessions is taking 1 minute. Switching to a virtual desktop were 2 or 3 programs are running under an other account with output to the running desktop is taking 1 second.

            Comment


              #7
              What I find fascinating, is that an esoteric 'use case' from bygone days can still be accommodated in Linux today. That's the real power of todays Linux.
              Using Kubuntu Linux since March 23, 2007
              "It is a capital mistake to theorize before one has data." - Sherlock Holmes

              Comment

              Working...
              X