mirror of
https://github.com/smxi/inxi.git
synced 2024-11-16 16:21:39 +00:00
devuan distro ids, derived, system base
This commit is contained in:
parent
0b22951e48
commit
f1fdbd0d60
50
pinxi
50
pinxi
|
@ -50,8 +50,8 @@ use POSIX qw(ceil uname strftime ttyname);
|
|||
## INXI INFO ##
|
||||
my $self_name='pinxi';
|
||||
my $self_version='3.3.31';
|
||||
my $self_date='2023-11-12';
|
||||
my $self_patch='10';
|
||||
my $self_date='2023-11-17';
|
||||
my $self_patch='11';
|
||||
## END INXI INFO ##
|
||||
|
||||
my ($b_pledge,@pledges);
|
||||
|
@ -30952,7 +30952,8 @@ sub get_linux_distro {
|
|||
my $osr_good = 'antergos|chakra|fedora|guix|mageia|manjaro|oracle|pclinuxos|';
|
||||
$osr_good .= 'porteux|raspberry pi os|slint|zorin';
|
||||
# Force use of pretty name because that's only location of derived distro name
|
||||
my $osr_pretty = 'zinc';
|
||||
# devuan should catch many devuans spins, which often put their names in pretty
|
||||
my $osr_pretty = 'devuan|zinc';
|
||||
my ($b_issue,$b_lsb,$b_osr_pretty,$b_skip_issue,$b_skip_osr);
|
||||
my ($issue,$lsb_release) = ('/etc/issue','/etc/lsb-release');
|
||||
# Note: OpenSuse Tumbleweed 2018-05 has made /etc/issue created by sym link to /run/issue
|
||||
|
@ -31248,6 +31249,8 @@ sub system_base {
|
|||
# detect debian steamos before arch steamos
|
||||
my $base_osr_debian_version = '\belive|lmde|neptune|nitrux|parrot|pureos|';
|
||||
$base_osr_debian_version .= 'rescatux|septor|sparky|steamos|tails';
|
||||
my $base_osr_devuan_version = 'crowz|dowse|etertics|\bexe\b|fluxuan|gnuinos|';
|
||||
$base_osr_devuan_version .= 'gobmis|heads|miyo|refracta|\bstar\b|virage';
|
||||
# osr has base ids
|
||||
my $base_default = 'antix-version|bodhi|mx-version';
|
||||
# base only found in issue
|
||||
|
@ -31299,6 +31302,9 @@ sub system_base {
|
|||
elsif (grep {/($base_osr_debian_version)/i} @osr){
|
||||
$system_base = debian_id();
|
||||
}
|
||||
elsif (grep {/($base_osr_devuan_version)/i} @osr){
|
||||
$system_base = devuan_id();
|
||||
}
|
||||
elsif (grep {/($base_osr_redhat)/i} @osr){
|
||||
$base_type = 'rhel';
|
||||
}
|
||||
|
@ -31524,6 +31530,9 @@ sub get_os_release {
|
|||
elsif ($base_type eq 'debian' && $base_version){
|
||||
$distro_osr = debian_id($base_version);
|
||||
}
|
||||
elsif ($base_type eq 'devuan' && $base_version){
|
||||
$distro_osr = devuan_id($base_version);
|
||||
}
|
||||
}
|
||||
eval $end if $b_log;
|
||||
return $distro_osr;
|
||||
|
@ -31604,6 +31613,41 @@ sub debian_id {
|
|||
return $id;
|
||||
}
|
||||
|
||||
# args: 0: optional: debian codename
|
||||
sub devuan_id {
|
||||
my ($codename) = @_;
|
||||
my ($devuan_version,$id);
|
||||
if (-r '/etc/devuan_version'){
|
||||
$devuan_version = main::reader('/etc/devuan_version','strip',0);
|
||||
}
|
||||
$id = 'Devuan';
|
||||
return if !$devuan_version && !$codename;
|
||||
my %devuans = (
|
||||
'1' => 'jesse', # jesse
|
||||
'2' => 'ascii', # stretch
|
||||
'3' => 'beowolf', # buster
|
||||
'4' => 'chimaera', # bullseye
|
||||
'5' => 'daedalus', # bookworm
|
||||
'6' => 'excalibur',# trixie
|
||||
'7' => 'freia', # forky
|
||||
# '' => 'ceres', # sid/unstable
|
||||
);
|
||||
if (main::is_numeric($devuan_version)){
|
||||
$id .= " $devuan_version " . $devuans{int($devuan_version)};
|
||||
}
|
||||
elsif ($codename){
|
||||
my %by_value = reverse %devuans;
|
||||
my $version = (main::is_numeric($devuan_version)) ? "$devuan_version $codename": $devuan_version;
|
||||
$id .= " $version";
|
||||
}
|
||||
# like ceres/unstable
|
||||
elsif ($devuan_version){
|
||||
$id .= " $devuan_version";
|
||||
}
|
||||
eval $end if $b_log;
|
||||
return $id;
|
||||
}
|
||||
|
||||
# Note, these are only for matching distro/mint derived names.
|
||||
# Update list as new names become available. While first Mint was 2006-08,
|
||||
# this method depends on /etc/os-release which was introduced 2012-02.
|
||||
|
|
Loading…
Reference in a new issue