• exu@feditown.com
    link
    fedilink
    English
    arrow-up
    9
    ·
    3 days ago

    At the risk of being serious, there’s really no good way to set user environment variables. (It’s been a while since I last checked, so I might be wrong)

    PAM used to have an equivalent to their /etc/environment for users, but that was deprecated or maybe removed last I checked.

    Systemd user environment variables don’t apply in a shell context

    .bashrc only works if you use bash as login shell and I’m not sure if it applies everywhere. Sure, I can set stuff in the shell I use, but it feels weird to modify my shell in order to change global environment variables.

    • LiveLM@lemmy.zip
      link
      fedilink
      English
      arrow-up
      4
      ·
      3 days ago

      Yeah it’s such a mess. Last I tried I had to set my variable in like 3 different places and it still didn’t apply everywhere I expected it to.

    • eleijeep@piefed.social
      link
      fedilink
      English
      arrow-up
      4
      ·
      3 days ago

      It sounds like you’ve looked into this before, so I’ll ask you: what is the use-case for per-user environment variables that can’t be achieved trivially through ~/.bashrc or /etc/profile ?

      It sounds to me like the problem they want to solve is that there is some piece of information which needs to be present in the environment for every process that a user runs regardless of the context it was executed from (eg. $DBUS_SESSION_BUS_ADDRESS)?

      In which case it would surely be served better by being contained in a config file in a standard location where it can be read by every process that needs that info instead of the executing process having to know the information and pass it in the environment, for every possible caller and calling context.

      • exu@feditown.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 days ago

        /etc/profile also needs root to edit. I agree that there should be a config file in a standard location, my issue is that using $(your local shell config) is barely a standard.
        For this purpose PAM’s /etc/environment works great in the global context, but there’s no PAM equivalent for each user.
        Systemd has global and per user environment stuff, but last I checked this only worked for systemd services

  • lambalicious@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    2
    ·
    3 days ago

    Fedora rejects something from systemd

    date: April 1

    source: Phoronix

    Yeah no, good try tho. Had me hopeful for 6 seconds.