Something is messing with default PATHs

This is a brand new install of EOS, Im tinkering around with Plasma Beta and doing some testing and come to find im missing things from PATH

My current path is

/usr/local/bin:/usr/bin

and im missing all the paths for flatpak and am unable to append new things to my PATH. Ive gone through

/etc/environment
/etc/profile
/etc/profile.d/

and my home directory to try and find what is butchering my PATH and have found nothing.

Anyone have any ideas what might be doing this?

What is your default shell?

Just using plain old bash, theres nothing in bashrc that looks to be doing it either this is a freshly installed EOS

Where are you trying to append them?

Ive tried in /etc/profile and /etc/profile.d

The issue is im also missing default paths that should be there and the paths that should be added automatically for flatpak for instance.

Nothing in profile or profile.d is used

The normal default path sans flatpak should be

/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl

Mine is:

/usr/local/sbin:/usr/local/bin:/usr/bin:/var/lib/flatpak/exports/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl

I haven’t customized it but I have a jre and flatpak installed.

It is interesting that you have only /usr/local/bin:/usr/bin. I suppose that means that something is happening before those are set, that is some kind of default path or it is being hard set to that later in the process.

Did you check your dotfiles(.bashrc, .bash_profile, .profile)?

checked .bashrc and i dont have .profile or .bash_profile in my home dir

checked bash.bashrc too and cant find anything. Another strange thing was that when i first booted the install and logged into plasma the .bashrc was root read/write only

tried a skeleton .bashrc with this just in case


#
# ~/.bashrc
#

# If not running interactively, don't do anything
[[ $- != *i* ]] && return

alias ls='ls --color=auto'
PS1='[\u@\h \W]\$ '

Take a look at /etc/profile. Make sure you have the section to read /etc/profile.d. It looks like you are missing all the paths from profile.d.

Mine looks like this:

# Load profiles from /etc/profile.d
if test -d /etc/profile.d/; then
        for profile in /etc/profile.d/*.sh; do
                test -r "$profile" && . "$profile"
        done
        unset profile
fi

This is mine, looks correct


# Load profiles from /etc/profile.d
if test -d /etc/profile.d/; then
	for profile in /etc/profile.d/*.sh; do
		test -r "$profile" && . "$profile"
	done
	unset profile
fi

Anything above that part that could terminate the script early?

not that i can tell, my current profile is this with the only addition being for rocm which my path was messed up before adding that and still is with it remove


# /etc/profile

# Set our umask
umask 022

# Append "$1" to $PATH when not already in.
# This function API is accessible to scripts in /etc/profile.d
append_path () {
    case ":$PATH:" in
        *:"$1":*)
            ;;
        *)
            PATH="${PATH:+$PATH:}$1"
    esac
}

# Append our default paths
append_path '/usr/local/sbin'
append_path '/usr/local/bin'
append_path '/usr/bin'
append_path '/opt/rocm/bin'

# Force PATH to be environment
export PATH

# Load profiles from /etc/profile.d
if test -d /etc/profile.d/; then
	for profile in /etc/profile.d/*.sh; do
		test -r "$profile" && . "$profile"
	done
	unset profile
fi

# Unload our profile API functions
unset -f append_path

# Source global bash config, when interactive but not posix or sh mode
if test "$BASH" &&\
   test "$PS1" &&\
   test -z "$POSIXLY_CORRECT" &&\
   test "${0#-}" != sh &&\
   test -r /etc/bash.bashrc
then
	. /etc/bash.bashrc
fi

# Termcap is outdated, old, and crusty, kill it.
unset TERMCAP

# Man is much better than us at figuring this out
unset MANPATH

I would try deleting that file and restoring it from the package in case there is something strange in there like a special character messing with things.

1 Like

Im going to try that and a test to see what happens on a fresh install again

@dalto figured it out

I was using GDM for my DM so I could easily do rootless X11 session but if you run a Plasma Wayland session with GDM it breaks your paths

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.