On Tue, 9 Jun 2020 22:22:07 +0000 Matt Bagnara <bagnaram...@gmail.com> said:

> On 09/06/2020, Carsten Haitzler <ras...@rasterman.com> wrote:
> > On Tue, 9 Jun 2020 18:11:11 +0000 Matt Bagnara <bagnaram...@gmail.com>
> > said:
> >
> >> They are being set by the  environment script
> >> /nix/store*-set-environment. The strange thing is that the icons will
> >
> > but does this set the environment before e runs?
> Yes, I did some digging, and it gets set single-time in /etc/profile
> when lightDM starts the shell initially for the enlightenment launch
> process.
> >
> >> display in the title-bar when launched. However, not in the menu. The
> >> icon theme is set to  the default "Enlightenment-x" for applications.
> >>
> >> strings /proc/`pidof enlightenment`/environ | grep XDG_DATA
> >> XDG_DATA_DIRS=/home/mbagnara/.nix-profile/share:/etc/profiles/per-user/mbagnara/share:/nix/var/nix/profiles/default/share:/run/current-system/sw/share
> >
> > it's not set to
> > /nix/store/mip8jx89p9h8dixngwhhcwnhxvs5a0rv-enlightenment-0.24.1/share/enlightenment:/nix/store/mip8jx89p9h8dixngwhhcwnhxvs5a0rv-enlightenment-0.24.1/share:/home/mbagnara/.nix-profile/share:/etc/profiles/per-user/mbagnara/share:/nix/var/nix/profiles/default/share:/run/current-system/sw/share
> >
> > so not set to what you think it should be set to... nix with its non-fhs
> > layout
> > will make this hard and you have to pay attention to these details :)
> 
> Indeed these environments are different, but that  is because any
> shell that is started through E gets appended its path to
> XDG_DATA_DIRS. Looking at a generic shell, it is set to  the previous
> value.
> XDG_DATA_DIRS=/home/mbagnara/.nix-profile/share:/etc/profiles/per-user/mbagnara/share:/nix/var/nix/profiles/default/share:/run/current-system/sw/share.
> There is something about this  path scheme that E doesn't like. I wonder if
> it has anything to  do with following symlinks.

wel lit';s entirely missing the store/SOMELONGUUIDSTRING bit entirely...

enlightenment does indeed modify XDG_DATA_DIRS. specifically if it is not set
it sets it to:

        snprintf(buf, sizeof(buf), "%s:%s/share:/usr/local/share:/usr/share",
e_prefix_data_get(), p);

so that means whatever install prefix e is in + /share, then /usr/local/share
and then /usr/share.

if it is set e PREPENDS to the env var like:

   if (s)
     {
        Eina_Bool pfxdata, pfx;

        pfxdata = !_xdg_check_str(s, e_prefix_data_get());
        snprintf(newpath, sizeof(newpath), "%s/share", p);
        pfx = !_xdg_check_str(s, newpath);
        if (pfxdata || pfx)
          {
             snprintf(buf, sizeof(buf), "%s%s%s%s%s",
               pfxdata ? e_prefix_data_get() : "",
               pfxdata ? ":" : "",
               pfx ? newpath : "",
               pfx ? ":" : "",
               s);
             e_util_env_set("XDG_DATA_DIRS", buf);
          }
     }

so basically it's looking to see if e's prefix is already accounted for in the
env var, if it is NOT then it prepends PREFIX/share/enlightenment 9tyhis is
actually pointless but won't hort except to cause a false hunt for icons there
and it'll go onto the next dir), then PREFIX/share, then what was in the env
var to begin with. it's basically ensuring that e's enlightenment-X icon theme
can be found (and then a bit in addition). so the env var you gave to begin
with makes sense the "long id strings" are where e has figureout out it's
installed (nix/store/mip8jx89p9h8dixngwhhcwnhxvs5a0rv-enlightenment-0.24.1 is
the runtime detected prefix).  everything after that is from your environment
so /run/current-system/sw/share is there at the end and that is where
icons/hicolor is so ... it's found.

so where are the firefox etc. icons? ar they in the data dirs search path at
all (remember these just indicate the share dirs - inside of that an icons dir
is expected then a dir for name of icon theme and so on)? Enlightenment-X
doesnt ship with app icons as there really is a massive numbr to then make and
ship, so it'll be depending on the icons in XXX/icons/hilcolor or
XXX/share/pixmaps or in some icon theme you selected... ?

> >> On 09/06/2020, Carsten Haitzler <ras...@rasterman.com> wrote:
> >> > On Tue, 9 Jun 2020 01:16:19 +0000 Matt Bagnara <bagnaram...@gmail.com>
> >> > said:
> >> >
> >> > did you choose an icon theme?
> >> >   settings->look->application theme->icons
> >> > ?
> >> >
> >> > how do you set XDG_DATA_DIRS? like in ~/.xinitrc or ~/.xsession before
> >> > e
> >> > runs?
> >> > have you checked:
> >> >
> >> >   strings /proc/`pidof enlightenment`/environ | grep XDG_DATA_DIRS
> >> > ?
> >> >
> >> >> Hi folks! I am a happy user of e24.1 I seem to  have issues with
> >> >> application icons showing up in the menu and window titles. Specific
> >> >> applications like Firefox and emacs have missing icons, but icons that
> >> >> are part of  the  hicolor pack show up fine. I have made sure  that my
> >> >> $XDG_DATA_DIRS points to a location containing my icons. In this case
> >> >> they are in  /run/current-system/sw/share/icons/hicolor/ This
> >> >> directory is part of my search path
> >> >> $XDG_DATA_DIRS=/nix/store/mip8jx89p9h8dixngwhhcwnhxvs5a0rv-enlightenment-0.24.1/share/enlightenment:/nix/store/mip8jx89p9h8dixngwhhcwnhxvs5a0rv-enlightenment-0.24.1/share:/home/mbagnara/.nix-profile/share:/etc/profiles/per-user/mbagnara/share:/nix/var/nix/profiles/default/share:/run/current-system/sw/share.
> >> >> I have tried setting the path also in the Icons Search Path Settings
> >> >> under the enlightenment settings. I have restarted E and tried
> >> >> creating fresh users and I still cannot seem to display application
> >> >> icons.
> >> >>
> >> >> Many thanks!
> >> >>
> >> >>
> >> >> _______________________________________________
> >> >> enlightenment-users mailing list
> >> >> enlightenment-users@lists.sourceforge.net
> >> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> >> >>
> >> >
> >> >
> >> > --
> >> > ------------- Codito, ergo sum - "I code, therefore I am"
> >> > --------------
> >> > Carsten Haitzler - ras...@rasterman.com
> >> >
> >> >
> >>
> >
> >
> > --
> > ------------- Codito, ergo sum - "I code, therefore I am" --------------
> > Carsten Haitzler - ras...@rasterman.com
> >
> >
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
Carsten Haitzler - ras...@rasterman.com



_______________________________________________
enlightenment-users mailing list
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to