Can't `source /etc/profile` using fish

Guys, I'm getting this issue when I execute source /etc/profile command. I've tried live and installed versions of both dragonized and dragonized gaming. Could you please help ? Check the attached image and the code.

/etc/profile code

error with code

Thanks :slight_smile:


Short text you can post here directly, and also text expired the in 6 days.
@dr460nf1r3 can we set to never as standard?

# /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

# Append our default paths
append_path '/usr/local/sbin'
append_path '/usr/local/bin'
append_path '/usr/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"
	unset profile

# 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
	. /etc/bash.bashrc

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

# Man is much better than us at figuring this out
1 Like

I suspect it's an issue with the fish shell being unable to run POSIX-compatible scripts.

If it works from within a bash shell then it's fish at fault:

Finally, please post text output as text rather than as images.


You already posted that.

I was referring to your screenshot showing text output from a terminal and text output from a text editor.

There's no need to re-post it now, though.


could you please tell me how to edit environmnetal variables? All I want to do is set path for oracle java jdk 8 (/usr/jvm/jdk1.8.0_281). I was using Debian for 1year and never used Arch linux before.

Check here:, for fish_user_paths and also check the fish documentation.


I dont know, need to have a look :face_with_raised_eyebrow:

1 Like

System specs should persist IMO, as they are very pertinent to any solution that applies to the individual users specific hardware.

Even very long logs serve a worthwhile purpose as I've found many solutions by cross referencing specific error messages found in dmesg (or other logs) with specific hardware. If the error messages are not persistent it removes a major way of locating relevant/similar topics/solutions.

Just saying, remove the logs and specs and the post becomes next to useless for reference in the future when searching for related issues. I realize some people have legitimate privacy concerns. However, the major benefit of the forum is as a reference source. If you erase the pertinent info from the help threads they're near useless for comparing issues against one another (or even identifying them in the first place).

I think persistent should be the default, and if the user has a genuine privacy concern then they can change it.