Hi Rutherther,

Sorry for the late response.

On Tue, 27 May 2025, at 20:04, Rutherther wrote:
> Hi Jayesh,
>
> "Jayesh Bhoot" <[email protected]> writes:
>
>> Hello,
>>
>> =======
>> Problem
>> =======
>>
>> None of the applications I installed are picked up by the KDE desktop's 
>> application runners - KRunner and Kickoff launcher.
>>
>> ==============================
>> How I've installed my packages
>> ==============================
>>
>> I've specified the applications in the system's os.scm:
>>
>> (packages
>>   (append
>>    (specifications->packages
>>     (list
>>      "ark"
>>      "emacs"
>>      "kmousetool"
>>      ;; others
>>      ))
>>    %base-packages))
>>
>> So that they are installed along with the command:
>>
>> $ sudo guix system reconfigure safed-hathi/os.scm.
>>
>> ==================================
>> ~/.guix-profile lookup didn't work
>> ==================================
>>
>> I found a Guix Help thread 
>> (https://lists.gnu.org/archive/html/help-guix/2020-02/msg00007.html) which 
>> suggested to check if the *.desktop files are located in 
>> ~/.guix-profile/share/applications/. But, ~/.guix-profile does not have that 
>> structure at all in my system:
>
> ~/.guix-profile is where `guix install` / `guix package` installed stuff
> goes, it doesn't have anything to do with guix system.
>
>>
>> $ ls -la ~/.guix-profile  
>> lrwxrwxrwx 1 bhoot users 46 May 12 22:23 */home/bhoot/.guix-profile* -> 
>> /var/guix/profiles/per-user/bhoot/guix-profile
>>
>> Source of the link does not exist though:
>>
>> $ ls /var/guix/profiles/per-user/bhoot/guix-profile 
>> ls: cannot access '/var/guix/profiles/per-user/bhoot/guix-profile': No such 
>> file or directory
>
> Expected if you've never installed anything to the profile.
>
>>
>> But an empty lock file does exist:
>>
>> $ ls /var/guix/profiles/per-user/bhoot/guix-profile.lock  
>> /var/guix/profiles/per-user/bhoot/guix-profile.lock
>> $ cat /var/guix/profiles/per-user/bhoot/guix-profile.lock 
>> $
>>
>> I even tried to search for *.desktop files in the whole user dir, but in 
>> vain:
>>
>> $ find /var/guix/profiles/per-user/bhoot/ -name '*.desktop'
>> $
>>
>> ========================================================
>> *.desktop files in system-wide profile are not picked up
>> ========================================================
>>
>> I then looked for the .desktop files in the system directories and found 
>> their symlinks inside /run/current-system/profile/share/applications/*.
>>
>> This directory has .desktop files for system-default applications:
>>
>> $ find -L /run/current-system -wholename '*applications/*.desktop' | grep 
>> konsole 
>> /run/current-system/profile/share/applications/org.kde.*konsole*.desktop
>>
>> as well as for applications I explicitly installed:
>>
>> $ find -L /run/current-system -wholename '*applications/*.desktop' | grep 
>> emacs 
>> /run/current-system/profile/share/applications/*emacs*.desktop
>
> So the desktop files are there. Is /run/current-system/profile/share in
> XDG_DATA_DIRS environment variable? It has to be, specifically in the
> environment of your desktop environment, so checking just in shell might
> not be enough.
>

So I looked in two places:

1. I verified that /run/current-system/profile/share exists in XDG_DATA_DIRS in 
Konsole/Shell env.

$ echo $XDG_DATA_DIRS | sed s/:/\\n/g | grep "/run/current-system/profile/share"
/run/current-system/profile/share

2. Then I verified (or tried to at least) that KDE desktop env also sees it in 
XDG_DATA_DIRS:

$ cat /proc/$(pidof kded6)/environ | tr '\0' '\n' | sed '/XDG_DATA_DIRS/!d' | 
sed 's/:/\n/g' | grep "/run/current-system/profile/share"
/run/current-system/profile/share

So, it seems that the directory does exist in XDG_DATA_DIRS path and is 
probably visible to KDE.

What else can I check or do? Thank you for your time.

>>
>> But the user-installed apps are not picked up by either krunner of Kickoff 
>> launcher.
>>
>> Any pointers are appreciated.
>>
>> Regards,
>> Jayesh Bhoot
>
> Rutherther

Reply via email to