RE: [PATCH 1/6] scripts: sphinx-pre-install: improve distro detection check

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> On Behalf Of Mauro Carvalho Chehab
> 
> The Arch-linux detection is hit by catting /etc/issue, whose
> contents is (nowadays):
> 
> 	Arch Linux \r (\l)
> 
> It sounds a little ackward to print such string, so,
> instead, let's use the /etc/os-release file, with exists
> on lots of distributions and should provide a more reliable
> result.
> 
> We'll keep the old tests before it, in order to avoid possible
> regressions with the other distros, although the new way should
> probably work on all the currently supported distributions.
> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
> ---
>  scripts/sphinx-pre-install | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/scripts/sphinx-pre-install b/scripts/sphinx-pre-install
> index fa3fb05cd54b..c2071a1c69ea 100755
> --- a/scripts/sphinx-pre-install
> +++ b/scripts/sphinx-pre-install
> @@ -780,6 +780,24 @@ $system_release = catcheck("/etc/system-release") if !$system_release;
>  $system_release = catcheck("/etc/redhat-release") if !$system_release;
>  $system_release = catcheck("/etc/lsb-release") if !$system_release;
>  $system_release = catcheck("/etc/gentoo-release") if !$system_release;
> +
> +# This seems more common than LSB those days
should 'those' be 'these'?

> +if (!$system_release) {
> +	my %os_var;
> +	if (open IN, "cat /etc/os-release|") {
> +		while (<IN>) {
> +			if (m/^([\w\d\_]+)=\"?([^\"]*)\"?\n/) {
> +				$os_var{$1}=$2;
> +			}
> +		}
> +		$system_release = $os_var{"NAME"};
> +		if (defined($os_var{"VERSION_ID"})) {
> +			$system_release .= " " . $os_var{"VERSION_ID"} if (defined($os_var{"VERSION_ID"}));
> +		} else {
> +			$system_release .= " " . $os_var{"VERSION"};
> +		}
> +	}
> +}
>  $system_release = catcheck("/etc/issue") if !$system_release;
>  $system_release =~ s/\s+$//;
> 
> --
> 2.25.2





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux