LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 04-28-2023, 05:54 AM   #16
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512

h2-1 --

Just being curious here.

I don't run any of the higher-level Slackware Package Management Systems

So this is all I see:

Code:
# ./pinxi --vs -r

pinxi 3.3.26-27 (2023-04-27)

Repos:
  No slackpkg mirror set in: /etc/slackpkg/mirrors
However, I do keep a local mirror of the Official Slackware Package Tree ( as well as SBo and Alien )

I post-process the rsync logs generated by alien bob's rsync-slackware scripts to create an install list to keep my systems up-to-date.

The low-level Slackware Package Tools ( installpkg, upgradepkg, removepkg, etc ) maintain VERY useful Text File Logs in the following directories ( and/or SymLinks ):

Code:
   /var/log/packages/                   - installed packages         # symlink to /var/lib/pkgtools/packages/ 
   /var/log/scripts/                    - package doinst scripts     # symlink to /var/lib/pkgtools/scripts/ 
   /var/log/setup/                      - package setup scripts      # symlink to /var/lib/pkgtools/setup/ 

   /var/log/removed_packages/           - removed packages           # symlink to /var/lib/pkgtools/removed_packages/
   /var/log/removed_scripts/            - removed doinst scripts     # symlink to /var/lib/pkgtools/removed_scripts/
   /var/log/removed_uninstall_scripts/  - removed packages           # symlink to /var/lib/pkgtools/removed_uninstall_scripts/
The reason I reference the old /var/log/ directories is because the new /var/lib/pkgtools/ directories may not exist in old versions of Slackware out there in the wild.

The contents of these directories are oodles-n-gobs of text files ( perfect for perl )

The File Names in the /var/log/removed_*/ Directories include Parsable TimeStamps in the FileNames

Anyhow ... I am not sure what info `inxi -r` ( or `inxi --repos` ) is supposed to convey but there is a LOT of info about Slackware Packages, Current and Transaction-Wise is in the directories listed above ( everything is actually in there )

-- kjh
 
Old 04-28-2023, 06:17 AM   #17
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512
h2-1 --

Maybe Off-topic here but, Testing on ALMA9 ...

Code:
# cat /etc/redhat-release

AlmaLinux release 9.1 (Lime Lynx)

# ./pinxi -r --vs
Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/^\s*(\S+?)_(repo(|_name|_mirror))\s*=\s*[\['"]{ <-- HERE ,2}(.*?)[\]'"]{,2}\s*$/ at ./pinxi line 23491.
The version info from pinxi:
Code:
my $self_version='3.3.26';
my $self_date='2023-04-27';
my $self_patch='27';
HTH

-- kjh

EDIT: the same version does work on CentOS 7 ...
Code:
# cat /etc/redhat-release ; ./pinxi -r --vs
CentOS Linux release 7.9.2009 (Core)
pinxi 3.3.26-27 (2023-04-27)
Repos:
  No active yum repos in: /etc/yum.conf
  No active yum repos in: /etc/yum.repos.d/CentOS-Base.repo
  No active yum repos in: /etc/yum.repos.d/CentOS-CR.repo
  No active yum repos in: /etc/yum.repos.d/CentOS-Debuginfo.repo
  No active yum repos in: /etc/yum.repos.d/CentOS-Media.repo
  No active yum repos in: /etc/yum.repos.d/CentOS-Sources.repo
  No active yum repos in: /etc/yum.repos.d/CentOS-Vault.repo
  No active yum repos in: /etc/yum.repos.d/CentOS-fasttrack.repo
  No active yum repos in: /etc/yum.repos.d/CentOS-x86_64-kernel.repo
  No active yum repos in: /etc/yum.repos.d/epel-testing.repo
  Active yum repos in: /etc/yum.repos.d/epel.repo
    1: epel ~ https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch&infra=$infra&content=$contentdir
  No active yum repos in: /etc/yum.repos.d/jenkins.repo
  Active yum repos in: /etc/yum.repos.d/microsoft-prod.repo
    1: packages-microsoft-com-prod ~ https://packages.microsoft.com/rhel/7/prod/
  No active yum repos in: /etc/yum.repos.d/niftyrepo.repo

Last edited by kjhambrick; 04-28-2023 at 06:38 AM. Reason: EDIT - CentOS 7 does work
 
Old 04-28-2023, 11:01 AM   #18
h2-1
Member
 
Registered: Mar 2018
Distribution: Debian Testing
Posts: 556

Original Poster
Rep: Reputation: 314Reputation: 314Reputation: 314Reputation: 314
rizitis, are these literal values? If not, can you post the possible range of actual values for these fields?

Code:
REPO_NAME= (should be SBo or SBo-git)
REPO_BRANCH=(15.0 or current)
I actually added the sbopkg to the package tool reports last night, and was wondering about repo configurations, but didn't find them documented anywhere, but I didn't look very long either.

Once I have the files and syntax and possible field values, ideally several samples so I can see what the range is, adding a repo is pretty easy, unless it involves complicated regex-foo like slpkg did, but it's still not hard really.
 
Old 04-28-2023, 01:31 PM   #19
rizitis
Member
 
Registered: Mar 2009
Location: Greece,Crete
Distribution: Slackware64-current, Slint
Posts: 600

Rep: Reputation: 469Reputation: 469Reputation: 469Reputation: 469Reputation: 469
pinxi will find this:
Code:
REPO_BRANCH=${REPO_BRANCH:-15.0}
REPO_NAME=${REPO_NAME:-SBo}
which means that sbopkg is focus to SBo repo for Slackware-15.0

or this
Code:
REPO_NAME=SBo-git
REPO_BRANCH=current
Which means that sbopkg is focus to Sbo-git repo for Slackware current

=============================================================================

But thats not the problem... I just realize that might need root access to read /root/.sbopkg.conf and to be honest i dont think that Slackware users will give root access to pinxi...
why that is problem?
Because when user install sbopkg the default conf file is stored in /etc/sbopkg/sbopkg.conf and it focus by default to Slackware. When we say Slackware we always mean the stable version...
Slackware current is the dev release which PAT and Slackware devs use to prepare the next stable release every exactly (from 1 to 10 years)
I m in Slackware current and if pinxi read my /etc/sbopkg.conf will see these 2 lines
Code:
REPO_BRANCH=${REPO_BRANCH:-15.0}
REPO_NAME=${REPO_NAME:-SBo}
which is not the true because in my
/root/.sbopkg.conf
I have these:
Code:
REPO_NAME=SBo-git
REPO_BRANCH=current
So if slackers run $ ./pinxi (options) in slackware current,
then I think pinxi wont read /root/.sbopkg.conf it will give access error or fake results since it will read /etc/sbopkg.conf which might not be the truth...
But for Slackware stable it will give true results because 99% of users users keep the /etc/sbopkg.conf as the default config file...
So i really dont know what to say about about that!
 
Old 04-28-2023, 02:33 PM   #20
rizitis
Member
 
Registered: Mar 2009
Location: Greece,Crete
Distribution: Slackware64-current, Slint
Posts: 600

Rep: Reputation: 469Reputation: 469Reputation: 469Reputation: 469Reputation: 469
Ok i m right
Code:
omen@$~>   ./pinxi  -r
Repos:
  slackpkg mirror in: /etc/slackpkg/mirrors
    1: http://slackware.uk/slackware/slackware64-current/
  No active slapt-get repos in: /etc/slapt-get/private-keys-v1.d
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx~
  slapt-get repos in: /etc/slapt-get/slapt-getrc
    1: https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/:CUSTOM
  No active slapt-get repos in: /etc/slapt-get/trustdb.gpg
  Active slpkg repos in: /etc/slpkg/repositories.toml
    1: ponce ~ https://cgit.ponce.cc/slackbuilds/plain/
    2: slack_extra ~ https://slackware.uk/slackware/slackware64-current/extra/
    3: alien ~ https://slackware.nl/people/alien/sbrepos/current/x86_64/
    4: restricted ~ https://slackware.nl/people/alien/restricted_sbrepos/current/x86_64/
    5: gnome ~ https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/
    6: conraid ~ https://slack.conraid.net/repository/slackware64-current/
omen@$~>   sudo !!
sudo ./pinxi  -r
Repos:
  slackpkg mirror in: /etc/slackpkg/mirrors
    1: http://slackware.uk/slackware/slackware64-current/
  No active slapt-get repos in: /etc/slapt-get/private-keys-v1.d
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx~
  slapt-get repos in: /etc/slapt-get/slapt-getrc
    1: https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/:CUSTOM
  No active slapt-get repos in: /etc/slapt-get/trustdb.gpg
  Active sbopkg repos in: /root/.sbopkg.conf
    1: REPO_NAME=SBo-git
    2: REPO_BRANCH=current
  Active slpkg repos in: /etc/slpkg/repositories.toml
    1: ponce ~ https://cgit.ponce.cc/slackbuilds/plain/
    2: slack_extra ~ https://slackware.uk/slackware/slackware64-current/extra/
    3: alien ~ https://slackware.nl/people/alien/sbrepos/current/x86_64/
    4: restricted ~ https://slackware.nl/people/alien/restricted_sbrepos/current/x86_64/
    5: gnome ~ https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/
    6: conraid ~ https://slack.conraid.net/repository/slackware64-current/
omen@$~>
I dirty hack your code just to see if I m taking any result...
As you can see without root access the sbopkg repo is not there...
So the only way to have correct repo infos in sbopkg is user to run pinxi with root access.
Its up to you... and to every user what will do...

Last edited by rizitis; 04-28-2023 at 02:34 PM.
 
Old 04-28-2023, 03:58 PM   #21
chris.willing
Member
 
Registered: Jun 2014
Location: Brisbane, Australia
Distribution: Slackware,LFS
Posts: 914

Rep: Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619
Quote:
Originally Posted by rizitis View Post
Active sbopkg repos in: /root/.sbopkg.conf
Maybe this is a problem for sbopkg to fix? A system config file probably shouldn't be hidden in what is effectively a user directory.

chris
 
4 members found this post helpful.
Old 04-28-2023, 04:49 PM   #22
h2-1
Member
 
Registered: Mar 2018
Distribution: Debian Testing
Posts: 556

Original Poster
Rep: Reputation: 314Reputation: 314Reputation: 314Reputation: 314
Today I rolled out the full suite of USB features, now the rev/lanes/speed mode work for:
-A USB audio
-D USB drive
-E USB bluetooth
-G USB graphics
-N USB network

-D was tricky but thanks to the wonders of the /sys file system, I was able to match up the USB drive to the drive ID.

Code:
Audio:
...
  Device-4: C-Media Audio Adapter (Planet UP-100 Genius G-Talk)
    type: USB
    driver: cm109,snd-usb-audio
    rev: 1.1
      speed: 12 Mb/s
      lanes: 1
      mode: legacy-1.1
    bus-ID: 1-14.4:112
    chip-ID: 0d8c:000e
    class-ID: 0300

Network:
...
  Device-3: Apple Ethernet Adapter [A1277]
    type: USB
    driver: asix
    rev: 2.0
      speed: 12 Mb/s
      lanes: 1
      mode: legacy-1.1
    bus-ID: 1-14.1:110
    chip-ID: 05ac:1402
    class-ID: ff00
    serial: <filter>

Bluetooth:
  Device-1: Broadcom BCM20702A0 Bluetooth 4.0
    type: USB
    driver: btusb
      v: 0.8
    rev: 2.0
      speed: 12 Mb/s
      lanes: 1
      mode: legacy-1.1
    bus-ID: 1-14.2:111
    chip-ID: 0a5c:21e8
    class-ID: fe01
    serial: <filter>
    Report: hciconfig
      ID: hci0
        rfk-id: 0
      state: down
        bt-service: enabled,running
        rfk-block:
          hardware: no
          software: no
      address: <filter>
      Info:
        acl-mtu: 0:0
        sco-mtu: 0:0
        link-mode: peripheral accept

Drives:
...
  ID-5: /dev/sde
    maj-min: 8:64
    type: USB
    vendor: SanDisk
    model: Ultra
    size: 116.53 GiB
    block-size:
      physical: 512 B
      logical: 512 B
    usb:
      rev: 3.0
      spd: 5 Gb/s
      lanes: 1
      mode: 3.2 gen-1x1
    tech: N/A
    serial: <filter>
    fw-rev: 1.00
    scheme: MBR
    SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
 
2 members found this post helpful.
Old 04-28-2023, 04:53 PM   #23
rizitis
Member
 
Registered: Mar 2009
Location: Greece,Crete
Distribution: Slackware64-current, Slint
Posts: 600

Rep: Reputation: 469Reputation: 469Reputation: 469Reputation: 469Reputation: 469
Quote:
Originally Posted by chris.willing View Post
Maybe this is a problem for sbopkg to fix? A system config file probably shouldn't be hidden in what is effectively a user directory.

chris
I think the same, probably /etc/sbopkg/sbopkg.conf is enough to setup a user his repo.

For now I can say that with this patch
Code:
--- origin.pinxi	2023-04-29 00:29:29.968127928 +0300
+++ pinxi	2023-04-29 00:20:01.004110565 +0300
@@ -50,7 +50,7 @@
 my $self_name='pinxi';
 my $self_version='3.3.26';
 my $self_date='2023-04-27';
-my $self_patch='24';
+my $self_patch='27';
 ## END INXI INFO ##
 
 my ($b_pledge,@pledges);
@@ -3087,7 +3087,7 @@
 		";
 	}
 	elsif ($type eq 'recommended kernel modules'){
-		@data = qw(amdgpu drivetemp nouveau);
+		@data = qw(amdgpu drivetemp nouveau radeon);
 		@modules = main::lister('/sys/module/');
 		$b_kernel_module = 1;
 		$extra2 = "GPU modules are only needed if applicable. NVMe drives do not need drivetemp 
@@ -3253,7 +3253,7 @@
 	},
 	## Kernel Module Data ##
 	'amdgpu' => {
-	'info' => '-s AMD GPU sensor data (newer AMD GPUs)',
+	'info' => '-s, -G AMD GPU sensor data (newer GPUs)',
 	'info-bsd' => '',
 	},
 	'drivetemp' => {
@@ -3261,7 +3261,11 @@
 	'info-bsd' => '',
 	},
 	'nouveau' => {
-	'info' => '-s Nvidia GPU sensor data (if using free driver)',
+	'info' => '-s, -G Nvidia GPU sensor data (if using free driver)',
+	'info-bsd' => '',
+	},
+	'radeon' => {
+	'info' => '-s, -G AMD GPU sensor data (older GPUs)',
 	'info-bsd' => '',
 	},
 	## START PACKAGE MANAGER BLOCK ##
@@ -5807,7 +5811,7 @@
 	mounted ${partition_string}s."],
 	['1', '-r', '--repos', "Distro repository data. Supported repo types: APK, 
 	APT, CARDS, EOPKG, NETPKG, NIX, PACMAN, PACMAN-G2, PISI, PKG (BSDs), PORTAGE, 
-	PORTS (BSDs), SCRATCHPKG, SLACKPKG, SLAPT_GET, SLPKG, TCE, URPMQ, XBPS, 
+	PORTS (BSDs), SCRATCHPKG, SLACKPKG, SLAPT_GET, SLPKG, SBOPKG, TCE, URPMQ, XBPS, 
 	YUM/ZYPP."],
 	['1', '-R', '--raid', "RAID data. Shows RAID devices, states, levels, array 
 	sizes, and components. md-raid: If device is resyncing, also shows resync
@@ -6780,7 +6784,7 @@
 	return $string;
 }
 
-# note, let the print logic handle N/A cases
+# Note, let the print logic handle N/A cases
 sub filter_partition {
 	my ($source,$string,$type) = @_;
 	return $string if !$string || $string eq 'N/A';
@@ -6810,8 +6814,8 @@
 	return; # don't return undef explicitly, only implicitly!
 }
 
-# args: 0: vendor id; 1: product id
-# returns print ready vendor:chip id string, or na variants
+# args: 0: vendor id; 1: product id.
+# Returns print ready vendor:chip id string, or na variants
 sub get_chip_id {
 	my ($vendor,$product)= @_;
 	my $id = 'N/A';
@@ -6828,8 +6832,8 @@
 }
 
 # args: 0: size in KiB, return KiB, MiB, GiB, TiB, PiB, EiB; 1: 'string';
-# 2: default value if null
-# returns string with units or array or size unmodified if not numeric
+# 2: default value if null.
+# Returns string with units or array or size unmodified if not numeric
 sub get_size {
 	my ($size,$type,$empty) = @_;
 	my (@data);
@@ -7062,7 +7066,7 @@
 }
 
 # args: 0: string to turn to KiB integer value.
-# convert string passed to KB, based on GB/MB/TB id
+# Convert string passed to KB, based on GB/MB/TB id
 # NOTE: 1 [K 1000; kB: 1000; KB 1024; KiB 1024] bytes
 # The logic will turn false MB to M for this tool
 # Hopefully one day sizes will all be in KiB type units
@@ -7113,7 +7117,7 @@
 	return $b_good;
 }
 
-# passing along hash ref
+# Passing along hash ref
 sub output_handler {
 	my ($data) = @_;
 	# print Dumper \%data;
@@ -7128,7 +7132,7 @@
 	}
 }
 
-# passing along hash ref
+# Passing along hash ref
 # NOTE: file has already been set and directory verified
 sub generate_json {
 	eval $start if $b_log;
@@ -7298,9 +7302,8 @@
 	}
 }
 
-# this has to get a hash of hashes, at least for now.
-# because perl does not retain insertion order, I use a prefix for each
-# hash key to force sorts. 
+# This has to get a hash of hashes, at least for now. Because perl does not 
+# retain insertion order, I use a prefix for each hash key to force sorts. 
 sub print_data {
 	my ($data) = @_;
 	my ($counter,$length,$split_count) = (0,0,0);
@@ -7393,7 +7396,7 @@
 					if (!$b_single && $val2 || $val2 eq '0'){
 						$val2 .= " ";
 					}
-					# see: Use of implicit split to @_ is deprecated. Only get this
+					# See: Use of implicit split to @_ is deprecated. Only get this
 					# warning in Perl 5.08 oddly enough. ie, no: scalar (split(...));
 					my @values = split(/\s+/, $val2);
 					$split_count = scalar @values;
@@ -7404,7 +7407,7 @@
 						$length += length("$key$sep{'s2'} $val2");
 						$holder .= "$colors{'c1'}$key$sep{'s2'}$colors{'c2'} $val2";
 					}
-					# handle case where the key/value pair is > max, and where there are 
+					# Handle case where the key/value pair is > max, and where there are 
 					# a lot of terms, like cpu flags, raid types supported. Raid can have
 					# the last row have a lot of devices, or many raid types. But we don't
 					# want to wrap things like: 3.45 MiB (6.3%)
@@ -7414,7 +7417,7 @@
 						# print "m-2 r1: $b_row1 iu: $indent_use\n";
 						$val3 = shift @values;
 						$start2 = "$colors{'c1'}$key$sep{'s2'}$colors{'c2'} $val3 ";
-						# case where not first item in line, but when key+first word added,
+						# Case where not first item in line, but when key+first word added,
 						# is wider than max width.
 						if ($holder && 
 						 ($length + length("$key$sep{'s2'} $val3")) > $size{'max-cols'}){
@@ -7468,7 +7471,7 @@
 								$start = '';
 							}
 						}
-						# we don't want to start a new line, continue until full length.
+						# We don't want to start a new line, continue until full length.
 						if ($holder2 !~ /^\s*$/){
 							# print "p-2: r1: $b_row1 iu: $indent_use\n";
 							$holder2 = "$colors{'c2'}$holder2";
@@ -7516,28 +7519,31 @@
 					$start = '';
 				}
 			}
-			# only for repos currently
+			# Only for repos currently
 			elsif (ref($val1) eq 'ARRAY'){
 				# print "p-5: r1: $b_row1 iu: $indent_use\n";
-				my $array=0;
+				my $num = 0;
+				my ($l1,$l2);
 				$indent_use = $indent_2;
 				foreach my $item (@$val1){
-					$array++;
+					$num++;
 					if ($size{'max-lines'}){
-						my $l1 = length("$array$sep{'s2'} $item") + $indent_use;
+						$l1 = length("$num$sep{'s2'} $item") + $indent_use;
+						# Cut down the line string until it's short enough to fit in term
 						if ($l1 > $size{'term-cols'}){
-							my $l2 = length("$array$sep{'s2'} ") + $indent_use + 6;
-							# print "$l1 $size{'term-cols'} $l2 $array $indent_use\n";
+							$l2 = length("$num$sep{'s2'} ") + $indent_use + 6;
+							# print "$l1 $size{'term-cols'} $l2 $num $indent_use\n";
 							$item = substr($item,0,$size{'term-cols'} - $l2) . '[...]';
 						}
 					}
-					$line = "$colors{'c1'}$array$sep{'s2'} $colors{'c2'}$item$colors{'cn'}";
+					$line = "$colors{'c1'}$num$sep{'s2'} $colors{'c2'}$item$colors{'cn'}";
 					$line = sprintf("%-${indent_use}s%s\n","","$line");
 					print_line($line);
 				}
+				
 			}
 		}
-		# we want a space between data blocks for single
+		# We want a space between data blocks for single
 		print_line("\n") if $b_single;
 	}
 }
@@ -7566,9 +7572,9 @@
 			# -y1 + -Y can result in start of output scrolling off screen if terminal
 			# wrapped lines happen.
 			if ((($size{'max-lines'} >= $size{'term-lines'}) && 
-			 $size{'max-lines'} == $size{'lines'}) ||
-			 ($size{'max-lines'} < $size{'term-lines'} && 
-			 $size{'max-lines'} + 1 == $size{'lines'})){
+			$size{'max-lines'} == $size{'lines'}) ||
+			($size{'max-lines'} < $size{'term-lines'} && 
+			$size{'max-lines'} + 1 == $size{'lines'})){
 				output_control();
 			}
 		}
@@ -23257,8 +23263,10 @@
 	my $xbps_dir_1 = '/etc/xbps.d/';
 	my $xbps_dir_2 = '/usr/share/xbps.d/';
 	my $zypp_repo_dir = '/etc/zypp/repos.d/';
+	my $sbopkg = '/root/.sbopkg.conf';
+	my $sbopkg2 = '/etc/sbopkg/sbopkg.conf';
 	my $b_test = 0;
-	## apt: Debian, *buntus + derived (deb based), PCLinuxOS (rpms)
+	## apt: Debian, *buntus + derived (deb files);AltLinux, PCLinuxOS (rpm files)
 	# Sometimes some yum/rpm repos may create apt repos here as well
 	if (-f $apt || -d "$apt.d"){
 		my ($apt_arch,$apt_comp,$apt_suites,$apt_types,@apt_urls,@apt_working,
@@ -23418,9 +23426,9 @@
 			push(@$rows,@$data);
 		}
 	}
-	## slackpkg, slackpkg+, slapt_get, slpkg: Slackware + derived
+	## slackpkg, slackpkg+, sbopkg, slapt_get, slpkg: Slackware + derived
 	# $slpkg = "$ENV{'HOME'}/bin/scripts/inxi/data/repo/slackware/slpkg-2.toml";
-	if (-f $slackpkg || -f $slackpkg_plus || -d $slapt_get || -f $slpkg){
+	if (-f $slackpkg || -f $slackpkg_plus || -d $slapt_get || -f $sbopkg || -f $slpkg){
 		#$slackpkg = "$ENV{HOME}/bin/scripts/inxi/data/repo/slackware/slackpkg-2.conf";
 		if (-f $slackpkg){
 			$data = repo_builder($slackpkg,'slackpkg','^[[:space:]]*[^#]+');
@@ -23469,6 +23477,16 @@
 			clean_url(\@data);
 			push(@$rows,@data);
 			@content = ();
+		}	
+		if (-f $sbopkg){
+			$data = repo_builder($sbopkg,'sbopkg','^REPO_NAME');
+			push(@$rows,@$data);
+			}
+		else {
+		       if (-f $sbopkg2){
+		       $data = repo_builder($sbopkg2,'sbopkg','^REPO_NAME');
+			push(@$rows,@$data);
+			}
 		}
 		if (-f $slpkg){
 			my ($active,$name,$repo);
@@ -23510,6 +23528,11 @@
 				$key = repo_data('missing','slpkg');
 			}
 			else {
+				# Special case, sbo and ponce true, dump sbo, they conflict.
+				# slpkg does this internally so no other way to handle.
+				if (grep {/^ponce ~/} @content){
+					@content = grep {!/sbo ~/} @content;
+				}
 				clean_url(\@content);
 				$key = repo_data('active','slpkg');
 			}
@@ -23586,8 +23609,7 @@
 				if ($url && $title && $enabled){
 					push(@content, "$title ~ $url");
 				}
-				
-				if (! @content){
+				if (!@content){
 					$key = repo_data('missing',$repo);
 				}
 				else {
@@ -23735,18 +23757,18 @@
 	if ($path = main::check_program('urpmq')){
 		@data2 = main::grabber("$path --list-media active --list-url","\n",'strip');
 		main::writer("$debugger_dir/system-repo-data-urpmq.txt",\@data2) if $debugger_dir;
-		# now we need to create the structure: repo info: repo path
-		# we do that by looping through the lines of the output and then
-		# putting it back into the <data>:<url> format print repos expects to see
-		# note this structure in the data, so store first line and make start of line
-		# then when it's an http line, add it, and create the full line collection.
+		# Now we need to create the structure: repo info: repo path. We do that by 
+		# looping through the lines of the output and then putting it back into the
+		# <data>:<url> format print repos expects to see. Note this structure in the
+		# data, so store first line and make start of line then when it's an http 
+		# line, add it, and create the full line collection.
 		# Contrib ftp://ftp.uwsg.indiana.edu/linux/mandrake/official/2011/x86_64/media/contrib/release
 		# Contrib Updates ftp://ftp.uwsg.indiana.edu/linux/mandrake/official/2011/x86_64/media/contrib/updates
 		# Non-free ftp://ftp.uwsg.indiana.edu/linux/mandrake/official/2011/x86_64/media/non-free/release
 		# Non-free Updates ftp://ftp.uwsg.indiana.edu/linux/mandrake/official/2011/x86_64/media/non-free/updates
 		# Nonfree Updates (Local19) /mnt/data/mirrors/mageia/distrib/cauldron/x86_64/media/nonfree/updates
 		foreach (@data2){
-			# need to dump leading/trailing spaces and clear out color codes for irc output
+			# Need to dump leading/trailing spaces and clear out color codes for irc output
 			$_ =~ s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g;
 			$_ =~ s/\e\[([0-9];)?[0-9]+m//g;
 			# urpmq output is the same each line, repo name space repo url, can be:
@@ -23775,11 +23797,11 @@
 		# @data2 = main::reader($file,'strip');
 		@data2 = main::grabber("$cmd 2>/dev/null","\n",'strip');
 		main::writer("$debugger_dir/system-repo-data-$which.txt",\@data2) if $debugger_dir;
-		# now we need to create the structure: repo info: repo path
-		# we do that by looping through the lines of the output and then
-		# putting it back into the <data>:<url> format print repos expects to see
-		# note this structure in the data, so store first line and make start of line
-		# then when it's an http line, add it, and create the full line collection.
+		# Now we need to create the structure: repo info: repo path
+		# We do that by looping through the lines of the output and then putting it 
+		# back into the <data>:<url> format print repos expects to see. Note this 
+		# structure in the data, so store first line and make start of line then
+		# when  it's an http line, add it, and create the full line collection.
 		# Pardus-2009.1 [Aktiv]
 		# 	http://packages.pardus.org.tr/pardus-2009.1/pisi-index.xml.bz2
 		# Contrib [Aktiv]
@@ -24035,6 +24057,8 @@
 	'slaptget-missing' => 'No active slapt-get repos in',
 	'slpkg-active' => 'Active slpkg repos in',
 	'slpkg-missing' => 'No active slpkg repos in',
+	'sbopkg-active' => 'Active sbopkg repos in',
+	'sbopkg-missing' => 'No active sbopkg repos in',
 	'tce-active' => 'tce mirrors in',
 	'tce-missing' => 'No tce mirrors in',
 	'xbps-active' => 'Active xbps repos in',
@@ -24092,6 +24116,8 @@
 	@{$_[0]} = map {
 	$_ =~ s/\s\s+/ /g;
 	$_ =~ s/^\s+|\s+$//g;
+	$_ =~ s/\[\s+/[/g; # [ signed-by
+	$_ =~ s/\s+\]/]/g;
 	$_ =~ s/^(.*\/.*) #.*/$1/; 
 	$_;} @{$_[0]};
 }
@@ -31156,7 +31182,7 @@
 	# netpkg puts packages in same place as slackpkg, only way to tell apart
 	['netpkg','netpkg','d','/var/lib/pkgtools/packages/*',1,5,'\\/',
 	'-d \'/var/netpkg\' && -d \'/var/lib/pkgtools/packages\'',
-	 ['netpkg','slackpkg','slapt-get','slpkg','swaret']],
+	 ['netpkg','sbopkg','slackpkg','slapt-get','sbopkg','slpkg','swaret']],
 	['nix-sys','nix-store','p','-qR /run/current-system/sw',1,1,'-'], 
 	['nix-usr','nix-store','p','-qR ~/.nix-profile',1,1,'-'], 
 	['nix-default','nix-store','p','-qR /nix/var/nix/profiles/default',1,2,'-'], 
@@ -31175,10 +31201,10 @@
 	# slack 15 moves packages to /var/lib/pkgtools/packages but links to /var/log/packages
 	['pkgtool','installpkg','d','/var/lib/pkgtools/packages/*',1,5,'\\/',
 	'!-d \'/var/netpkg\' && -d \'/var/lib/pkgtools/packages\'',
-	 ['slackpkg','slapt-get','slpkg','swaret']],
+	 ['sbopkg','slackpkg','slapt-get','slpkg','swaret']],
 	['pkgtool','installpkg','d','/var/log/packages/*',1,4,'\\/',
 	'! -d \'/var/lib/pkgtools/packages\' && -d \'/var/log/packages/\'',
-	 ['slackpkg','slapt-get','slpkg','swaret']],
+	 ['sbopkg','slackpkg','slapt-get','slpkg','swaret']],
 	# rpm way too slow without nodigest/sig!! confirms packages exist
 	# but even with, MASSIVELY slow in some cases, > 20, 30 seconds!!!!
 	# find another way to get rpm package counts or don't show this feature for rpm!!
@@ -31188,7 +31214,7 @@
 	['scratch','pkgbuild','d','/var/lib/scratchpkg/index/*/.pkginfo',1,5,'\\/',
 	 '-d \'/var/lib/scratchpkg\''],
 	# note: slackpkg, slapt-get, spkg, and pkgtool all return the same count
-	# ['slackpkg','pkgtool','slapt-get','slpkg','swaret']],
+	# ['slackpkg','pkgtool','slapt-get','sbopkg','slpkg','swaret']],
 	# ['slapt-get','slapt-get','p','--installed',1,0,''],
 	# ['spkg','spkg','p','--installed',1,0,''],
 	['tce','tce-status','p','-i',1,0,'','',['apps','tce-load']],
If i run ./pinxi -r as user I m getting infos from /etc/sbopkg/sbopkg.conf
And if I run it by sudo ./pinxi -r
then pinxi first look at /root/.sbopkg.conf and if not there then look at /etc/sbopkg/sbopkg.conf

Code:
omen@$~>   ./pinxi -r
Repos:
  slackpkg mirror in: /etc/slackpkg/mirrors
    1: http://slackware.uk/slackware/slackware64-current/
  No active slapt-get repos in: /etc/slapt-get/private-keys-v1.d
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx~
  slapt-get repos in: /etc/slapt-get/slapt-getrc
    1: https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/:CUSTOM
  No active slapt-get repos in: /etc/slapt-get/trustdb.gpg
  Active sbopkg repos in: /etc/sbopkg/sbopkg.conf
    1: REPO_NAME=${REPO_NAME:-SBo}
  Active slpkg repos in: /etc/slpkg/repositories.toml
    1: ponce ~ https://cgit.ponce.cc/slackbuilds/plain/
    2: slack_extra ~ https://slackware.uk/slackware/slackware64-current/extra/
    3: alien ~ https://slackware.nl/people/alien/sbrepos/current/x86_64/
    4: restricted ~ https://slackware.nl/people/alien/restricted_sbrepos/current/x86_64/
    5: gnome ~ https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/
    6: conraid ~ https://slack.conraid.net/repository/slackware64-current/
omen@$~>   sudo !!
sudo ./pinxi -r
Repos:
  slackpkg mirror in: /etc/slackpkg/mirrors
    1: http://slackware.uk/slackware/slackware64-current/
  No active slapt-get repos in: /etc/slapt-get/private-keys-v1.d
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx
  No active slapt-get repos in: /etc/slapt-get/pubring.kbx~
  slapt-get repos in: /etc/slapt-get/slapt-getrc
    1: https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/:CUSTOM
  No active slapt-get repos in: /etc/slapt-get/trustdb.gpg
  Active sbopkg repos in: /root/.sbopkg.conf
    1: REPO_NAME=SBo-git
  Active slpkg repos in: /etc/slpkg/repositories.toml
    1: ponce ~ https://cgit.ponce.cc/slackbuilds/plain/
    2: slack_extra ~ https://slackware.uk/slackware/slackware64-current/extra/
    3: alien ~ https://slackware.nl/people/alien/sbrepos/current/x86_64/
    4: restricted ~ https://slackware.nl/people/alien/restricted_sbrepos/current/x86_64/
    5: gnome ~ https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/
    6: conraid ~ https://slack.conraid.net/repository/slackware64-current/
omen@$~>
but thats not the solution.
I think sbopkg need that fix , if maintainers agree...
idk
 
1 members found this post helpful.
Old 04-28-2023, 09:21 PM   #24
h2-1
Member
 
Registered: Mar 2018
Distribution: Debian Testing
Posts: 556

Original Poster
Rep: Reputation: 314Reputation: 314Reputation: 314Reputation: 314
I'd say there's two arguments against show sbopkg repo item:

1. The fact that the non user readable /root file can override the /etc file, making it impossible to really check as regular user what the active repo is. Also the unusual location for the file, which is very likely to change in the future. Expected would be something like /etc/sbopkg/sbopkg.conf, then override in /etc/sbopkg/sbopkg.conf.d/ or in user ~/.config location. Probably best to wait for this one I think.

2. I'd say more important, the fact there is no actual repo url listed, so the data is not super informative.

Note that pinxi does now detect sbopkg which it did not do before, but only as a package manager tool.

Last USB fixes being polished, mrmazda found a glitch in Perl 5.026 with the regex that all other perl versions were happy with, so that was a good find, that's hopefully corrected now for that Perl version.

kjhambrick, sorry I had missed that, mrmazda found that one too, that was related to a short term Perl version with the regex I used, which might not have been fully correct, at least it wasn't to Perl 5.026. Can you verify what Perl version is running on the Alma? pinxi --recommends shows perl version on top. Or just perl --version. I'm updating my Perl support docs and listing known issues with specific perl versions. That should be fixed now, if not, there's something wrong with that Perl version I believe. I was trying to use this: {,2} as a range, thinking that might work, and it does, but not in those perl versions aopparently. Switched it to the safer {0,2} which should not trigger a case.

Last edited by h2-1; 04-28-2023 at 09:41 PM.
 
Old 04-28-2023, 09:33 PM   #25
h2-1
Member
 
Registered: Mar 2018
Distribution: Debian Testing
Posts: 556

Original Poster
Rep: Reputation: 314Reputation: 314Reputation: 314Reputation: 314
kjhambrick, re the packages, those should show up with:

pinxi -ra

As long as the tool installpkg is present, and one of the following:
1. /var/netpkg not present, and /var/lib/pkgtools/packages present, then use /var/lib/pkgtools/packages/*

2. /var/lib/pkgtools/packages not present, and /var/log/packages/ present, then use /var/log/packages/*.

I hope the netpkg case, from Zenwalk, doesn't break it, which is:

If program netpkg exists, and /var/netpkg exists, and /var/lib/pkgtools/packages exists, then use /var/lib/pkgtools/packages/* but show netpkg as the package manager.

The package manager report is tacked onto -r when -r is used, and if -r is not used, then it's in -I. But as an advanced data options.

-rx shows only total number of packages
-rxx shows total number if > 1 pm then pm:, pkgs: per pm, otherwise shows core package manager name and how many pkgs.
-ra breaks it down more, adds how many lib packages found too, and the package manager tools, if any.

Last edited by h2-1; 04-28-2023 at 09:39 PM.
 
Old 04-29-2023, 11:41 AM   #26
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,949

Rep: Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531
So I'm thinking the discussion regarding sbopkg is that it's not currently supported. I find this to be true. I agree with @chris.willing on probably shouldn't be hidden, but why should pinxi be looking in a users home directory in the first place. If I need to see root access things with pinxi (normally use inxi), I run it as root.

Code:
~# ./pinxi -ra --vs
pinxi 3.3.26-29 (2023-04-28)
Repos:
  Packages: pm: pkgtool pkgs: 2007 libs: 343 tools: sbopkg,slackpkg,slpkg
    pm: rpm pkgs: 0
  slackpkg mirror in: /etc/slackpkg/mirrors
    1: file://home/slackware/slackware64-current/
  slackpkg+ repos in: /etc/slackpkg/slackpkgplus.conf
    1: justpkgs ~ dir://home/non-slack/justpkgs/
    2: nonslack ~ file://home/non-slack/slackbuilds/
    3: multilib ~ file://home/non-slack/multilib/current/
    4: restricted ~ file://home/non-slack/alienbob_restricted/
    5: alienbob ~ file://home/non-slack/alienbob/
  Active slpkg repos in: /etc/slpkg/repositories.toml
    1: ponce ~ https://cgit.ponce.cc/slackbuilds/plain/
    2: slack ~ https://slackware.uk/slackware/slackware64-current/
    3: slack_extra ~ https://slackware.uk/slackware/slackware64-current/extra/
    4: multilib ~ https://slackware.nl/people/alien/multilib/current/
I have this set in /etc/sbopkg/sbopkg.conf
Code:
REPO_NAME=SBo-git
REPO_BRANCH=current
I've no plans on using a /root/.sbopkg.conf, can't see a use for one in my user directory, since I can't run sbopkg via sudo (I wouldn't want to) anyway.

Last edited by chrisretusn; 04-29-2023 at 11:42 AM.
 
Old 04-29-2023, 07:31 PM   #27
h2-1
Member
 
Registered: Mar 2018
Distribution: Debian Testing
Posts: 556

Original Poster
Rep: Reputation: 314Reputation: 314Reputation: 314Reputation: 314
chrisretusn, the only reason inxi looks in user directory for anything is to find the inxi.conf file, or to write there if the logger is activated, or the debugger, it follows the standard sequence, overriding the values in first with last:

One of these, priority top to bottom:
$XDG_CONFIG_HOME/inxi/
~/.config/inxi/inxi.conf
~/.inxi/inxi.conf

then:
/etc/inxi.conf
/etc/inxi.d/inxi.conf

That's a normal config hierarchy I believe, at least it's meant to be, where user values override any value set in the /etc configs. If anything gives truth to the xkcd standards comic, these certainly do. https://m.xkcd.com/927/

pinxi is the same, except it's looking for pinxi and pinxi.conf directories/configs.

But a tool that is run as root obviously would not use such things, like a package manager tool.

inxi is meant to have different configurations per user, like colors, widths, output defaults etc, for example when I run it as root, it looks different than when I run it as user, so I can tell easily what I'm doing.

But a package manager doesn't have that type of customization requirement.
 
1 members found this post helpful.
Old 04-29-2023, 09:48 PM   #28
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,949

Rep: Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531
Quote:
Originally Posted by h2-1 View Post
inxi is meant to have different configurations per user, like colors, widths, output defaults etc, for example when I run it as root, it looks different than when I run it as user, so I can tell easily what I'm doing.
Make sense, forgot about this aspect.
 
Old 04-30-2023, 12:09 AM   #29
h2-1
Member
 
Registered: Mar 2018
Distribution: Debian Testing
Posts: 556

Original Poster
Rep: Reputation: 314Reputation: 314Reputation: 314Reputation: 314
chrisretusn, oh, that repo report is looking good for slackware, I didn't initially notice how many types were showing, that seems much more useful and reliable now.
 
Old 04-30-2023, 02:10 AM   #30
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,949

Rep: Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531Reputation: 1531
Quote:
Originally Posted by h2-1 View Post
chrisretusn, oh, that repo report is looking good for slackware, I didn't initially notice how many types were showing, that seems much more useful and reliable now.
sbopkg is not listed. This is my setting:
Code:
# grep -e REPO_B -e REPO_N  /etc/sbopkg/sbopkg.conf
REPO_BRANCH=${REPO_BRANCH:-current}
REPO_NAME=${REPO_NAME:-SBo-git}
Code:
# ./pinxi -ra --vs
pinxi 3.3.26-31 (2023-04-29)
Repos:
  Packages: pm: pkgtool pkgs: 2007 libs: 343 tools: sbopkg,slackpkg,slpkg
    pm: rpm pkgs: 0
  slackpkg mirror in: /etc/slackpkg/mirrors
    1: file://home/slackware/slackware64-current/
  slackpkg+ repos in: /etc/slackpkg/slackpkgplus.conf
    1: justpkgs ~ dir://home/non-slack/justpkgs/
    2: nonslack ~ file://home/non-slack/slackbuilds/
    3: multilib ~ file://home/non-slack/multilib/current/
    4: restricted ~ file://home/non-slack/alienbob_restricted/
    5: alienbob ~ file://home/non-slack/alienbob/
  Active slpkg repos in: /etc/slpkg/repositories.toml
    1: ponce ~ https://cgit.ponce.cc/slackbuilds/plain/
    2: slack ~ https://slackware.uk/slackware/slackware64-current/
    3: slack_extra ~ https://slackware.uk/slackware/slackware64-current/extra/
    4: multilib ~ https://slackware.nl/people/alien/multilib/current/
I am planning to add a couple of more to the mix.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Testersfeedback for new pinxi/inxi feature -E/--bluetooth h2-1 Slackware 2 01-29-2021 06:53 PM
Huge inxi/pinxi upgrade, new features, Logical volumes, raid rewrite, beta testers? h2-1 Slackware 12 12-17-2020 05:04 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 11:37 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration