You are not logged in.

#1 2024-11-30 10:02:38

hikmateustad
Member
Registered: 2022-01-23
Posts: 66

Add/Remove paths from $PATH variable

hikmateustad@hikmateustad-dell ~ % neofetch
                   -`                    hikmateustad@hikmateustad-dell 
                  .o+`                   ------------------------------ 
                 `ooo/                   OS: Arch Linux x86_64 
                `+oooo:                  Host: Inspiron One 2320 00 
               `+oooooo:                 Kernel: 6.12.1-zen1-1-zen 
               -+oooooo+:                Uptime: 35 mins 
             `/:-:++oooo+:               Packages: 2157 (pacman) 
            `/++++/+++++++:              Shell: zsh 5.9 
           `/++++++++++++++:             Resolution: 1920x1080 
          `/+++ooooooooooooo/`           DE: Plasma 6.2.4 
         ./ooosssso++osssssso+`          WM: KWin 
        .oossssso-````/ossssss+`         Theme: Breeze Light [Plasma], Breeze-Dark [GTK2], Breeze [GTK3] 
       -osssssso.      :ssssssso.        Icons: [Plasma], breeze-dark [GTK2/3] 
      :osssssss/        osssso+++.       Terminal: konsole 
     /ossssssss/        +ssssooo/-       CPU: Intel i5-2400S (4) @ 3.300GHz 
   `/ossssso+/:-        -:/+osssso+-     GPU: Intel 2nd Generation Core Processor Family 
  `+sso+:-`                 `.-/+oso:    GPU: NVIDIA GeForce GT 525M 
 `++:.                           `-/+/   Memory: 3282MiB / 15896MiB 
 .`                                 `/
                                                                 
                                                      


hikmateustad@hikmateustad-dell ~ % 

I have zsh Konsole.

I installed Nvidia Cuda 8.0 because that is last version officially supported by my latest Nvidia card.

The installation ended like this

Please make sure that
 -   PATH includes /home/hikmateustad/.cache/yay/cuda-8.0/pkg/cuda-8.0/opt/cuda/bin
 -   LD_LIBRARY_PATH includes /home/hikmateustad/.cache/yay/cuda-8.0/pkg/cuda-8.0/opt/cuda/lib64, or, add /home/hikmateustad/.cache/yay/cuda-8.0/pkg/cuda-8.0/opt/cuda/lib64 to /etc/ld.so.conf and run ldconfig as root

To uninstall the NVIDIA CUDA Samples, run the uninstall script in /home/hikmateustad/.cache/yay/cuda-8.0/pkg/cuda-8.0/opt/cuda/samples
Installation Complete


==> Sources are ready.
 -> cuda-8.0-8.0.61-3 already made -- skipping build
==> Making package: cuda-8.0 8.0.61-3 (Sat 30 Nov 2024 02:24:55 PM IST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Sources are ready.
loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (1) cuda-8.0-8.0.61-3

Total Installed Size:  2006.31 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                                                                [-------------------------------------------------------] 100%
(1/1) checking package integrity                                                              [-------------------------------------------------------] 100%
(1/1) loading package files                                                                   [-------------------------------------------------------] 100%
(1/1) checking for file conflicts                                                             [-------------------------------------------------------] 100%
:: Processing package changes...
(1/1) installing cuda-8.0                                                                     [-------------------------------------------------------] 100%
The cuda binaries are in /opt/cuda/bin
The cuda samples are in /opt/cuda/samples
The cuda docs are in /opt/cuda/doc
You need to relogin in order for the cuda binaries to appear in your PATH
Optional dependencies for cuda-8.0
    gdb: for cuda-gdb [installed]
:: Running post-transaction hooks...
(1/3) Arming ConditionNeedsUpdate...
(2/3) Refreshing PackageKit...
(3/3) Updating the desktop file MIME type cache...
yay -S cuda-8.0  46.11s user 19.12s system 64% cpu 1:41.29 total
hikmateustad@hikmateustad-dell ~ % 

Now I need to edit the path variable to make the installation workable but for the life of me cannot understand the appropriate place to edit the PATH variable as there are so many levels on which it can be modified according to the wiki https://wiki.archlinux.org/title/Environment_variables . After reading it I am confused.

I tried modifying sudo nano /etc/environment

#
# This file is parsed by pam_env module
#
# Syntax: simple "KEY=VAL" pairs on separate lines
#
LIBVA_DRIVERS_PATH=/usr/lib/dri
LIBVA_DRIVER_NAME=i965
VDPAU_DRIVER=nvidia

however on reboot I do not see any changes in the $PATH

I am afraid to touch sudo nano /etc/security/pam_env.conf

hikmateustad@hikmateustad-dell ~ % printenv
COLORFGBG=15;0
COLORTERM=truecolor
CUDA_PATH=/opt/cuda
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
DEBUGINFOD_URLS=https://debuginfod.archlinux.org 
DESKTOP_SESSION=plasmax11
DISPLAY=:0
GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:/home/hikmateustad/.gtkrc-2.0:/home/hikmateustad/.config/gtkrc-2.0
GTK3_MODULES=xapp-gtk3-module
GTK_MODULES=canberra-gtk-module:appmenu-gtk-module
GTK_RC_FILES=/etc/gtk/gtkrc:/home/hikmateustad/.gtkrc:/home/hikmateustad/.config/gtkrc
HOME=/home/hikmateustad
ICEAUTHORITY=/run/user/1000/iceauth_NLaqnv
INVOCATION_ID=b61731246ed848aab592a91bab2267c0
JOURNAL_STREAM=9:17880
KDE_APPLICATIONS_AS_SCOPE=1
KDE_FULL_SESSION=true
KDE_SESSION_UID=1000
KDE_SESSION_VERSION=6
KONSOLE_DBUS_SERVICE=:1.120
KONSOLE_DBUS_SESSION=/Sessions/1
KONSOLE_DBUS_WINDOW=/Windows/1
KONSOLE_VERSION=240803
LANG=en_US.UTF-8
LANGUAGE=
LC_ADDRESS=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_MONETARY=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_NUMERIC=en_US.UTF-8
LC_PAPER=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_TIME=en_US.UTF-8
LIBVA_DRIVERS_PATH=/usr/lib/dri
LIBVA_DRIVER_NAME=i965
LOGNAME=hikmateustad
MAIL=/var/spool/mail/hikmateustad
MANAGERPID=869
MEMORY_PRESSURE_WATCH=/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/session.slice/plasma-plasmashell.service/memory.pressure
MEMORY_PRESSURE_WRITE=c29tZSAyMDAwMDAgMjAwMDAwMAA=
MOTD_SHOWN=pam
NVCC_CCBIN=/usr/bin/g++-13
OLDPWD=/home/hikmateustad
PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/var/lib/snapd/snap/bin:/home/hikmateustad/.jiotv_go/bin
PKG_CONFIG_PATH=/opt/intel/opencl:
PROFILEHOME=
PWD=/home/hikmateustad
QT_AUTO_SCREEN_SCALE_FACTOR=0
QT_WAYLAND_RECONNECT=1
QV4_GC_TIMELIMIT=0
SESSION_MANAGER=local/hikmateustad-dell:@/tmp/.ICE-unix/1822,unix/hikmateustad-dell:/tmp/.ICE-unix/1822
SHELL=/bin/zsh
SHELL_SESSION_ID=865a093a1b6b4624b0e0c97c70bb55eb
SSH_AUTH_SOCK=/run/user/1000/gcr/ssh
SYSTEMD_EXEC_PID=1839
TERM=xterm-256color
UBUNTU_MENUPROXY=1
USER=hikmateustad
VDPAU_DRIVER=nvidia
WINDOWID=65011731
XAUTHORITY=/tmp/xauth_dDRGnU
XDG_CONFIG_DIRS=/home/hikmateustad/.config/kdedefaults:/etc/xdg
XDG_CURRENT_DESKTOP=KDE
XDG_MENU_PREFIX=plasma-
XDG_RUNTIME_DIR=/run/user/1000
XDG_SEAT=seat0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XDG_SESSION_CLASS=user
XDG_SESSION_DESKTOP=KDE
XDG_SESSION_ID=3
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session1
XDG_SESSION_TYPE=x11
XDG_VTNR=2
ZEITGEIST_DATA_PATH=/home/hikmateustad/.local/share/zeitgeist
SHLVL=1
EDITOR=vim
PAGER=less
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.7z=01;31:*.ace=01;31:*.alz=01;31:*.apk=01;31:*.arc=01;31:*.arj=01;31:*.bz=01;31:*.bz2=01;31:*.cab=01;31:*.cpio=01;31:*.crate=01;31:*.deb=01;31:*.drpm=01;31:*.dwm=01;31:*.dz=01;31:*.ear=01;31:*.egg=01;31:*.esd=01;31:*.gz=01;31:*.jar=01;31:*.lha=01;31:*.lrz=01;31:*.lz=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.lzo=01;31:*.pyz=01;31:*.rar=01;31:*.rpm=01;31:*.rz=01;31:*.sar=01;31:*.swm=01;31:*.t7z=01;31:*.tar=01;31:*.taz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tgz=01;31:*.tlz=01;31:*.txz=01;31:*.tz=01;31:*.tzo=01;31:*.tzst=01;31:*.udeb=01;31:*.war=01;31:*.whl=01;31:*.wim=01;31:*.xz=01;31:*.z=01;31:*.zip=01;31:*.zoo=01;31:*.zst=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.crdownload=00;90:*.dpkg-dist=00;90:*.dpkg-new=00;90:*.dpkg-old=00;90:*.dpkg-tmp=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:*.swp=00;90:*.tmp=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:
LESS_TERMCAP_mb=
LESS_TERMCAP_md=
LESS_TERMCAP_me=
LESS_TERMCAP_se=
LESS_TERMCAP_so=
LESS_TERMCAP_ue=
LESS_TERMCAP_us=
_=/usr/bin/printenv
hikmateustad@hikmateustad-dell ~ % sudo nano /etc/security/pam_env.conf

I would like to share the $PATH changes between all the sudo users of this system.

How do I proceed?

Thank you in advance for your time.

Offline

#2 2024-11-30 11:18:36

Head_on_a_Stick
Member
From: The Wirral
Registered: 2014-02-20
Posts: 8,327
Website

Re: Add/Remove paths from $PATH variable

Arch sets the system PATH via /etc/profile, if you want to modify that use ~/.bash_profile (if you use bash as your login shell, mutatis mutandis otherwise).

So add something like this to the end of the file:

export PATH="$PATH:/home/hikmateustad/.cache/yay/cuda-8.0/pkg/cuda-8.0/opt/cuda/bin"

Another alternative would be ~/.config/environment/path.conf, as per https://wiki.archlinux.org/title/Enviro … s#Per_user.

EDIT: I know _nothing_ about CUDA so be sure to read the reply below before doing anything else.

EDIT2: you're using zsh so ~/.zprofile is the relevant file if you choose to try that.

Last edited by Head_on_a_Stick (2024-11-30 11:39:20)


Para todos todo, para nosotros nada

Offline

#3 2024-11-30 11:19:33

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 12,970

Re: Add/Remove paths from $PATH variable

/etc/profile is where PATH on archlinux is set, but it's Very Unlikely you need to set those paths .

archlinux packages are forbidden to touch anything in user home folders.
Install and removal of packages is done by pacman , not by scripts from nvidia.

I expect this is a generic message from the nvidia cuda installer.
Should any of the things they mention (like setting LD_LIBRARY_PATH ) be needed , it's the packager/aur maintainers responsibilty to set that up.

Ignore for now and test cuda functionality without making any of those changes.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Online

#4 2024-11-30 14:21:48

hikmateustad
Member
Registered: 2022-01-23
Posts: 66

Re: Add/Remove paths from $PATH variable

Thank you all of you for replying.

I've managed to get LD_LIBRARY_PATH in envrionment by adding it in /etc/environment but for the life of me cannot append to $PATH.

I even added PATH="$PATH:/home/hikmateustad/.cache/yay/cuda-8.0/pkg/cuda-8.0/opt/cuda/bin" to /etc/environment but it just does not work

Only this what works in temporarily updating path once in a terminal.

export PATH="$PATH:/home/hikmateustad/.cache/yay/cuda-8.0/pkg/cuda-8.0/opt/cuda/bin"

but it lost once konsole is closed.

Dunno what to try next.

P.S

While we are at it, I wonder how I could remove some paths from $PATH.

Any leads on this?

Last edited by hikmateustad (2024-11-30 14:22:59)

Offline

#5 2024-11-30 14:27:50

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,107

Re: Add/Remove paths from $PATH variable

Because /etc/environment can't use $PATH like that. It's not a bash shell, it has it's own rules, and runs before the shell is setting it's variables.

Side note, WTF are you doing using the yay cache like that? Use the actual installed path, not where it was built and staged.

Last edited by Scimmia (2024-11-30 14:29:48)

Offline

#6 2024-11-30 14:36:50

hikmateustad
Member
Registered: 2022-01-23
Posts: 66

Re: Add/Remove paths from $PATH variable

Scimmia wrote:

Because /etc/environment can't use $PATH like that. It's not a bash shell, it has it's own rules, and runs before the shell is setting it's variables.

Side note, WTF are you doing using the yay cache like that? Use the actual installed path, not where it was built and staged.

Its is not me but what instructions I got from installing cuda-8.0 from aur. Please see my original post.

Offline

#7 2024-11-30 14:37:51

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,107

Re: Add/Remove paths from $PATH variable

Sure upstream's installation script says that, but come on, think for a minute.

Offline

#8 2024-11-30 14:41:00

hikmateustad
Member
Registered: 2022-01-23
Posts: 66

Re: Add/Remove paths from $PATH variable

Scimmia wrote:

Sure upstream's installation script says that, but come on, think for a minute.

Thinking is highly overrated and I do not have the expertise in this case to judge whether to think or not think or act or not act.

Just following upstream instructions.

Offline

#9 2024-11-30 15:01:15

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 12,970

Re: Add/Remove paths from $PATH variable

Lone_Wolf wrote:

/etc/profile is where PATH on archlinux is set, but it's Very Unlikely you need to set those paths .

Ignore for now and test cuda functionality without making any of those changes.

hikmateustad wrote:

Thinking is highly overated and I do not have the expertise in this case to judge whether to think or not think or act or not act.
Just following upstream instructions.

Upstream nvidia knows almost nothing about archlinux.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Online

#10 2024-11-30 15:19:37

hikmateustad
Member
Registered: 2022-01-23
Posts: 66

Re: Add/Remove paths from $PATH variable

Lone_Wolf wrote:
Lone_Wolf wrote:

/etc/profile is where PATH on archlinux is set, but it's Very Unlikely you need to set those paths .

Ignore for now and test cuda functionality without making any of those changes.

hikmateustad wrote:

Thinking is highly overated and I do not have the expertise in this case to judge whether to think or not think or act or not act.
Just following upstream instructions.

Upstream nvidia knows almost nothing about archlinux.

True to the letter.

Issue is this aur package is so old last updated 2017-10-27 07:08 (UTC) what can be done. And nvidia will not listen to anyone.
Leave cuda aside.

But just for the sake of technical knowledge as I posted in my title 'How to'  Add/Remove paths from $PATH variable coz I want to remove snapd and jio from my $PATH.

Last edited by hikmateustad (2024-11-30 15:20:28)

Offline

#11 2024-11-30 19:36:04

seth
Member
Registered: 2012-09-03
Posts: 58,974

Re: Add/Remove paths from $PATH variable

hikmateustad wrote:

Thinking is highly overrated

Ok.
So please punch yourself in the face, then look at  https://aur.archlinux.org/cgit/aur.git/ … da-8.0#n55 and "pacman -Ql cuda-8.0"
Without overusing your brain too much, does the latter output mention "/home/hikmateustad/.cache/yay/cuda-8.0" at all?
If not, why do you th… ah, fuck. Punch yourself in the face again, maybe it occurs to you…

But just for the sake of technical knowledge as I posted in my title 'How to'  Add/Remove paths from $PATH variable coz I want to remove snapd and jio from my $PATH.

This highly depend in
1. where those additions are made
2. in which context you'd like to remove them
Also why don't you just remove snapd and jio?

Online

Board footer

Powered by FluxBB