Failed install on ostree distros with /var/home
Pantar2205 opened this issue · 9 comments
Describe the bug
Silverblue, Kinote and other ostree distro that have home stored in /var/home/USER
Setup script doesn't work with this type of a home.
To Reproduce
Steps to reproduce the behavior:
- Follow install instructions on any distro with home set as /var/home
This is odd, but I wouldn't be surprised if I used /home/${USER}/...
somewhere and that is the problem. Let me have a quick look at the setup script and such.
What message/behavior do you get exactly? So I can narrow down the culprit :)
Also, I've never played with any of those distros. I guess that if the envvar $HOME
is always set to /var/home/USER
, correct?
I've gone through all files in the script and there is not a single /home/$USER
; in fact, there seems to be no reference to /home
at all, only several instances of $HOME
.
pwd
prints your current working directory. Could you check that $HOME
is defined? (e.g., echo $HOME
).
I fear I have no access to the distros you've listed at the moment to test it myself. Could you elaborate on what is not working? Do you see an error message while running the setup-script? Or is any of the sub components failing, such as synth-shell-greeter or synth-shell-prompt?
Once we know what is failing it should be fairly easy to fix ;)
Sorry Andre. I am only a casual user, so you will need to bare with me.
echo €HOME
provides /var/home/ger
(My username on this machine is ger)
I ran everything again and it all seemed to work fine but then the first thing I tested was running ls
which provides =
ger ger-desktop ~ ls bash: alias: better_ls: not found bash: alias: (): not found bash: alias: {: not found bash: alias: shopt: not found bash: alias: -s: not found bash: alias: extglob;: not found bash: alias: local: not found bash: alias: ls)";: not found bash: alias: if: not found bash: alias: [: not found bash: alias: $#: not found bash: alias: -eq: not found bash: alias: 0: not found bash: alias: ];: not found bash: alias: then: not found bash: alias: -U: not found bash: alias: Applications: not found bash: alias: Desktop: not found bash: alias: Documents: not found bash: alias: Downloads: not found bash: alias: Games: not found bash: alias: Music: not found bash: alias: OnionShare: not found bash: alias: Pictures: not found bash: alias: Public: not found bash: alias: Templates: not found bash: alias: truenas-backups: not found bash: alias: truenas-data: not found bash: alias: Videos: not found bash: alias: 2>: not found bash: alias: /dev/null: not found bash: alias: |: not found bash: alias: wc: not found bash: alias: -l);: not found bash: alias: if: not found bash: alias: [: not found bash: alias: "$files": not found bash: alias: "0": not found bash: alias: ];: not found bash: alias: then: not found bash: alias: $LS: not found bash: alias: -d: not found bash: alias: {.,..,*}: not found bash: alias: -lA: not found bash: alias: --human-readable: not found bash: alias: --group-directories-first;: not found bash: alias: -U: not found bash: alias: -d: not found bash: alias: .bash_history: not found bash: alias: .bash_logout: not found bash: alias: .bash_profile: not found bash: alias: .bashrc: not found bash: alias: .cache: not found bash: alias: .config: not found bash: alias: .lesshst: not found bash: alias: .lmmsrc.xml: not found bash: alias: .local: not found bash: alias: .mozilla: not found bash: alias: .pki: not found bash: alias: .ssh: not found bash: alias: .var: not found bash: alias: .vscode: not found bash: alias: 2>: not found bash: alias: /dev/null: not found bash: alias: |: not found bash: alias: wc: not found bash: alias: -l);: not found bash: alias: if: not found bash: alias: [: not found bash: alias: "$hidden_files": not found bash: alias: "0": not found bash: alias: ];: not found bash: alias: then: not found bash: alias: echo: not found bash: alias: "";: not found bash: alias: $LS: not found bash: alias: -d: not found bash: alias: .bash_history: not found bash: alias: .bash_logout: not found bash: alias: .bash_profile: not found bash: alias: .bashrc: not found bash: alias: .cache: not found bash: alias: .config: not found bash: alias: .lesshst: not found bash: alias: .lmmsrc.xml: not found bash: alias: .local: not found bash: alias: .mozilla: not found bash: alias: .pki: not found bash: alias: .ssh: not found bash: alias: .var: not found bash: alias: .vscode: not found bash: alias: -l: not found bash: alias: --human-readable: not found bash: alias: --group-directories-first;: not found bash: alias: fi;: not found bash: alias: else: not found bash: alias: $LS: not found bash: alias: -d: not found bash: alias: {.,..,}: not found bash: alias: -lA: not found bash: alias: --human-readable: not found bash: alias: --group-directories-first;: not found bash: alias: fi;: not found bash: alias: else: not found bash: alias: if: not found bash: alias: [: not found bash: alias: $#: not found bash: alias: -eq: not found bash: alias: 1: not found bash: alias: -a: not found bash: alias: -d: not found bash: alias: "$1": not found bash: alias: ];: not found bash: alias: then: not found bash: alias: local: not found bash: alias: 'cd': not found bash: alias: "$1/";: not found bash: alias: better_ls;: not found bash: alias: 'cd': not found bash: alias: "$current_pwd";: not found bash: alias: else: not found bash: alias: if: not found bash: alias: [: not found bash: alias: $#: not found bash: alias: -eq: not found bash: alias: 1: not found bash: alias: -a: not found bash: alias: -f: not found bash: alias: "$1": not found bash: alias: ];: not found bash: alias: then: not found bash: alias: $LS: not found bash: alias: -l: not found bash: alias: --human-readable: not found bash: alias: "$1";: not found bash: alias: else: not found bash: alias: $LS: not found bash: alias: --human-readable: not found bash: alias: --group-directories-first: not found bash: alias: "$@";: not found bash: alias: fi;: not found bash: alias: fi;: not found bash: alias: fi: not found bash: alias: }: not found bash: alias: -d: not found bash: alias: .: not found bash: alias: ..: not found bash: alias: -lA: not found bash: alias: --human-readable: not found bash: alias: --group-directories-first: not found
For the greeter, I am not sure as I have always selected no to just that.
a cat of my .bashrc provides
` ger ger-desktop ~ cat .bashrc
.bashrc
Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
User specific environment
if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]]
then
PATH="$HOME/.local/bin:$HOME/bin:$PATH"
fi
export PATH
Uncomment the following line if you don't like systemctl's auto-paging feature:
export SYSTEMD_PAGER=
User specific aliases and functions
if [ -d ~/.bashrc.d ]; then
for rc in ~/.bashrc.d/*; do
if [ -f "$rc" ]; then
. "$rc"
fi
done
fi
unset rc
##-----------------------------------------------------
synth-shell-prompt.sh
if [ -f /var/home/ger/.config/synth-shell/synth-shell-prompt.sh ] && [ -n "$( echo $- | grep i )" ]; then
source /var/home/ger/.config/synth-shell/synth-shell-prompt.sh
fi
##-----------------------------------------------------
better-ls
if [ -f /var/home/ger/.config/synth-shell/better-ls.sh ] && [ -n "$( echo $- | grep i )" ]; then
source /var/home/ger/.config/synth-shell/better-ls.sh
fi
##-----------------------------------------------------
alias
if [ -f /var/home/ger/.config/synth-shell/alias.sh ] && [ -n "$( echo $- | grep i )" ]; then
source /var/home/ger/.config/synth-shell/alias.sh
fi
##-----------------------------------------------------
better-history
if [ -f /var/home/ger/.config/synth-shell/better-history.sh ] && [ -n "$( echo $- | grep i )" ]; then
source /var/home/ger/.config/synth-shell/better-history.sh
`
Hmm this is an odd error message you are getting. Now I can only speculate, but its seems that the setup tried to "alias" everything related to better-ls or bash is going crazy.
The output of your $HOME
seems sane. I'm not seeing anything in the error message pointing to the possibility that the problem is caused by your user's file not being under the traditional /home
dir. What made you think it could be related? Did you get a different error message in the past?
Also great that you've shared your bashrc file. Nothing odd there... Could you try deleting all the bash entries related to better-ls
, alias
and better-history
? Just leave in place those related to the prompt. That way we can determine whether the problem is caused by the prompt (in terms of code, the most complex one of the 4) or if it is only caused by better-ls
(since the error messages mention it). Or for that matter, if alias is messing stuff up. In either case, you can peek into the code under /var/home/ger/.config/synth-shell/
and you will find all 4 scripts and some config files
before i read your post, i just moved bashrc to bashrcOLD and touch bashrc empty file. i ran your script including the greeter and its working flawlessly now.
this is worse than finding a problem and fixing it because now its totally fine but we don't know why wht happened happened.
Apologies for wasting your time and thanks for helping me out.
I suppose for anyone else reading this. just rename your bashrc and start fresh.
Well, this is surprising. Maybe the problem was not related to synth-shell? Please re-open the issue if you experience problems again, maybe there is a small no-easy-to-reproduce bug hiding in there.
Have fun fooling around with bash!!