From 20c06e3b0a7763716dd55a848b7c47aaac5a48f5 Mon Sep 17 00:00:00 2001 From: Adeel Date: Thu, 27 Dec 2018 04:15:36 +0200 Subject: [PATCH] base-files: preserve PATH preset by environment This delta aligns the value of `PATH` variable with other shells/distros, which in their default configuration preserve (append) the old value. For instance: https://src.fedoraproject.org/rpms/bash/blob/master/f/dot-bashrc#_9. In order to exercise interoperability with Win32 applications in WSL, the subsystem process injects Windows environment's PATH to the Linux OS, which in this case gets lost. closes #6233 Co-authored-by: maxice8 --- srcpkgs/base-files/files/profile | 18 +++++++++++++++++- srcpkgs/base-files/template | 2 +- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/srcpkgs/base-files/files/profile b/srcpkgs/base-files/files/profile index 6fd2d93fb21..947aeada566 100644 --- a/srcpkgs/base-files/files/profile +++ b/srcpkgs/base-files/files/profile @@ -2,8 +2,24 @@ # System wide environment and startup programs. +appendpath () { + case ":$PATH:" in + *:"$1":*) + ;; + *) + PATH="${PATH:+$PATH:}$1" + esac +} + # Set our default path (/usr/sbin:/sbin:/bin included for non-Void chroots) -PATH="/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin" +appendpath '/usr/local/sbin' +appendpath '/usr/local/bin' +appendpath '/usr/bin' +appendpath '/usr/sbin' +appendpath '/sbin' +appendpath '/bin' +unset appendpath + export PATH # Set default umask diff --git a/srcpkgs/base-files/template b/srcpkgs/base-files/template index 9b9fcec8395..18ba0a452ca 100644 --- a/srcpkgs/base-files/template +++ b/srcpkgs/base-files/template @@ -1,7 +1,7 @@ # Template file for 'base-files' pkgname=base-files version=0.140 -revision=2 +revision=3 bootstrap=yes depends="xbps-triggers" short_desc="Void Linux base system files"