Simple Package Manager for Debian type

Here is a place for your projects which are not officially supported by the Porteus Team. For example: your own kernel patched with extra features; desktops not included in the standard ISO like Gnome; base modules that are different than the standard ISO, etc...
neko
Contributor
Contributor
Posts: 865
Joined: 09 Feb 2013, 09:55
Distribution: APorteus-FVWM-ja-x86_64.iso
Location: japan

Simple Package Manager for Debian type

Post#1 by neko » 17 Mar 2014, 04:05

Current version
spmDebian-15.01.28-noarch-4.xzm (37 K)
http://www.mediafire.com/download/i4vzw ... arch-4.xzm
md5sum: 27303ca65640901ff4f66159be5e58be spmDebian-15.01.28-noarch-4.xzm

is a simple package manager for debian type.
It downloads 'xxx.deb' type packages and converts those to Porteus modules 'xxx.xzm'.


The following description is displayed by pushing 'help' button.
####### INSTRUCTIONS ########

[Getting Package]
1. Specify your preferred package
1.1. Select from package list
(1) Select your preferred version in 'Version'
(2) Select one of 'all', 'main', 'contrib', 'non-free' in 'areas/module'.
'all' is same as 'main + contrib + non-free' areas.
(3) Select your preferred section in 'sections'.
(4) Select a package in 'package list'.
Click a package name, and the description will be displayed.

1.2. Search
(1) Select your preferred version in 'Version'
(2) Select one of 'all', 'main', 'contrib', 'non-free' in 'areas/module'.
(3) Set a search type buttons of
'package name' / 'key words' / 'library name'
(4) Enter search string
(5) Select a package in 'package list' that were searched.

2. Download the specified package
2.1. Single download
(1) Check off 'auto'
(2) Push download button
The specified package will be downloaded and converted to Porteus module in your storage.

2.2. Download with dependent packages
(1) Check on 'auto'
(2) Push download button
The specified package and it's dependent packages will be downloaded and converted to Porteus module in your storage.
The subdirectory in your storage is created and entities that are concerned with the package are symbolic linked here.
The libraries that are used by the package 'xxx_yyy.xzm' are merged into a 'lib4xxx_yyy.xzm' module.
The 'lib4xxx_yyy.xzm' module is created in the subdirectory 'xxx'.

[Merging libraries]
1. Select 'MODULE' in 'areas/module'.
All modules in your storage will be listed up in 'package list'
2. Select a module in 'package list'.
3. Push 'Merge' button
The specified package's dependent packages will be downloaded and converted to Porteus module in your storage.
The subdirectory in your storage is created and entities that are concerned with the package are symbolic linked here.
The libraries that are used by the package 'xxx_yyy.xzm' are merged into a 'lib4xxx_yyy.xzm' module.
The 'lib4xxx_yyy.xzm' module is created in the subdirectory 'xxx'.
Last edited by neko on 16 Jan 2016, 23:09, edited 5 times in total.

User avatar
brokenman
Site Admin
Site Admin
Posts: 5436
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Simple Package Manager for Debian type

Post#2 by brokenman » 17 Mar 2014, 04:26

Nice piece of work. I had a quick look but will test tomorrow.
How do i become super user?
Wear your underpants on the outside and put on a cape.

neko
Contributor
Contributor
Posts: 865
Joined: 09 Feb 2013, 09:55
Distribution: APorteus-FVWM-ja-x86_64.iso
Location: japan

Re: Simple Package Manager for Debian type

Post#3 by neko » 17 Mar 2014, 12:36

@brokenman

"Simple" means that there are many issues in spmDebian.

One of issues is 'ldd path lack'.
The lacked paths must be set manually.

For example (64bit), 'chromium' might be gotten from 'debian7.4' and activated.
But it would not run.

If following paths is set (in '/etc/ld.so.conf'),
and then "/sbin/ldconfig" command is performed,
'chromium' can run.

=========================
/lib
/lib/x86_64-linux-gnu
/lib32
/lib64
/usr/lib
/usr/lib/x86_64-linux-gnu
/usr/lib32
/usr/lib64
/usr/local/lib
/usr/local/lib64
/usr/x86_64-slackware-linux/lib64
=========================

Thanks.

User avatar
francois
Contributor
Contributor
Posts: 4902
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

Re: Simple Package Manager for Debian type

Post#4 by francois » 17 Mar 2014, 17:26

Thanks a lot neko. I had some thoughts about these debian packages for which it became more tedious to work with since we left PPM.

I will try it for sure. :D
Voltaire: Le mieux est l'ennemi du bien.

User avatar
Slaxmax
Contributor
Contributor
Posts: 403
Joined: 03 Jan 2013, 09:51
Distribution: KDE4
Location: Campinas Brazil https://goo.gl/yrxwKi

Re: Simple Package Manager for Debian type

Post#5 by Slaxmax » 17 Mar 2014, 22:30

ktsuss missing in kde
“DNA is like a computer program but far, far more advanced than any software ever created.”
― Bill Gates, The Road Ahead

neko
Contributor
Contributor
Posts: 865
Joined: 09 Feb 2013, 09:55
Distribution: APorteus-FVWM-ja-x86_64.iso
Location: japan

Re: Simple Package Manager for Debian type

Post#6 by neko » 18 Mar 2014, 02:42

@francois
Thank you for your interest.

I think that it is better to change from 'PPM' to 'USM' on the view point of software size.
However, I may need the debian packages. So I made spmDebian for myself.
It is useful for me. Therefore I open it.
I am happy if it is useful for somebody.



@Slaxmax
Thank you for a bug report.

BUG:
It is impossible to execute spmDebian on KDE.
The reason is "ktsuss missing in kde".

FIX:
[file]
/opt/porteus-scripts/simplepm/simplepm
[function]
checkSPM()
[routine]
=== old === line 44-51
if [[ "$ds" = "kde3" ]];
then
kdesu --noignorebutton -d -u root -c $script $@
exit
else
ktsuss "$script $@ && sleep 2"
exit
fi

=== new ===
for SUDO in gksu gnsu kdesu ktsuss;
do
if [[ ! "`which $SUDO 2>/dev/null`" ]]
then
continue
fi
case $SUDO in
kdesu )
kdesu --noignorebutton -d -u root -c $script $@
;;
ktsuss )
ktsuss "$script $@ && sleep 2"
;;
* )
$SUDO $script $@ &
;;
esac
exit
done
local spmMSG00_03=`gettext simplepm "No su gui found"`
echo "####################################"
echo "$spmMSG00_03"
exit

User avatar
francois
Contributor
Contributor
Posts: 4902
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

Re: Simple Package Manager for Debian type

Post#7 by francois » 18 Mar 2014, 17:24

I downloaded spmdebian, triggered it. Really, there is the essence of what I was looking for. 8)

I selected:
Jessie
all

I have unchecked auto. Then I have updated, thus the jessie database was updated it seem.

Code: Select all

With package selected, I get gnumerics package. Then I checkd auto. After download I get message;
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
Download
*** There is not a dependency at all. ***
Maybe it should say:
There is no more dependency for gnumeric package.

A. I activate the package and libraries converted into modules. I get the error:

Code: Select all

root@porteus:~# gnumeric
gnumeric: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory
root@porteus:~#


B. The subdirectory in your storage is created and entities that are concerned with the package are symbolic linked here. libraries, there seems to be a libgtk is amongst the downloaded missing symlink.

B. Comment on the procedure:
2.2. Download with dependent packages
...
The libraries that are used by the package 'xxx_yyy.xzm' are merged into a 'lib4xxx_yyy.xzm' module.
Where is lib4xxx_yyy.xzm?
The 'lib4xxx_yyy.xzm' module is created in the subdirectory 'xxx'.
Where is subdirectory 'xxx'
[Merging libraries]
1. Select 'MODULE' in 'areas/module'.
Where is areas/module?

Thanks.
Voltaire: Le mieux est l'ennemi du bien.

neko
Contributor
Contributor
Posts: 865
Joined: 09 Feb 2013, 09:55
Distribution: APorteus-FVWM-ja-x86_64.iso
Location: japan

Re: Simple Package Manager for Debian type

Post#8 by neko » 19 Mar 2014, 04:40

@francois
Thank you for your report.

1. The report message
"There is not a dependency at all."
and
"There is no more dependency for gnumeric package."

======>
If 'auto' is checked on but a merged libraries module is not created,
there are 2 report messages at end of merging depending on the reason.(except error)

(1) the reason that the target module does not need libraries at all.
"There is not a dependency at all."
(2) the reason that the target module needs libraries but there is not a library at all.
"Did not find a dependent library at all"

note:
On the case that the target module does not need libraries at all,
some library packages may be downloaded.

Because these packages are written in the dependency part of target package information,
and basic libraries are used from system.
The basic libraries are gotten from '00n-xxx.xzm's :
000-kernel.xzm,001-core.xzm,002-xorg.xzm,...

======>
The message will be changed to your suggestion.

2. can not execute with missing libraries
gnumeric: error while loading shared libraries:
there seems to be a libgtk is amongst the downloaded missing symlink.

======>
(may be) 'ldd path lack'
Please refer "by neko » 17 Mar 2014, 13:36" article.

======>
A patch will be inserted in order to set 'libpath for debian'.
This patch run at booting in '/etc/rc.d'.
So, spmDebian must have been already activated at booting.

3. description
(1)lib4xxx_yyy.xzm?

======>
These sentences will be changed.

The libraries that are used by the package 'xxx_yyy.xzm' are merged into a 'lib4xxx_yyy.xzm' module.
The 'lib4xxx_yyy.xzm' module is created in the subdirectory 'xxx'.
-->
The libraries that are used by the target package are merged into a libraries module.
The merged libraries module is created in the subdirectory.
The name of merged libraries module is lib4'target package name'.

(2)Select 'MODULE' in 'areas/module'
Where is areas/module?

======>
This sentence will be changed.

1. Select 'MODULE' in 'areas/module'
-->
1. Select 'MODULE' in 'Select an area or module'

neko
Contributor
Contributor
Posts: 865
Joined: 09 Feb 2013, 09:55
Distribution: APorteus-FVWM-ja-x86_64.iso
Location: japan

Re: Simple Package Manager for Debian type

Post#9 by neko » 19 Mar 2014, 06:57

spmDebian-14.03.17-noarch-2.xzm (32K)
http://www.mediafire.com/download/wicrs ... arch-2.xzm
md5sum: 9cdf5b154f10bb3fd07d661388eee864 spmDebian-14.03.17-noarch-2.xzm

is updated from spmDebian-14.03.17-noarch-1.xzm.

Thank Slaxmax and francois for your reports.

1. bug fix
(1)It is impossible to execute spmDebian on KDE.

Please refer
"by Slaxmax » 17 Mar 2014, 23:30" article,
"by neko » 18 Mar 2014, 03:42" article.

2. additional function
(1) A patch is inserted in order to set 'libpath for debian'.
This patch run at booting in '/etc/rc.d'.
So, spmDebian must have been already activated at booting.

Please refer
"by neko » 17 Mar 2014, 13:36" article,
"by francois » 18 Mar 2014, 18:24" article,
"by neko » 19 Mar 2014, 05:40" article.

3. betterment
(1)merging report message
(2)description by help button

Please refer
"by francois » 18 Mar 2014, 18:24" article,
"by neko » 19 Mar 2014, 05:40" article.

User avatar
francois
Contributor
Contributor
Posts: 4902
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

Re: Simple Package Manager for Debian type

Post#10 by francois » 19 Mar 2014, 11:19

My problem was that I used spmdebian with kde. :(

Please refer "by neko » 17 Mar 2014, 13:36" article.
Please refer
"by Slaxmax » 17 Mar 2014, 23:30" article,
"by neko » 18 Mar 2014, 03:42" article.

Is there some hyperlinks for these, I do not understand where are these articles could be.
Voltaire: Le mieux est l'ennemi du bien.

User avatar
Slaxmax
Contributor
Contributor
Posts: 403
Joined: 03 Jan 2013, 09:51
Distribution: KDE4
Location: Campinas Brazil https://goo.gl/yrxwKi

Re: Simple Package Manager for Debian type

Post#11 by Slaxmax » 19 Mar 2014, 19:28

@francois

kde is missing ktsuss command used in spmDebian.
In the newest version neko fixed the problem.
“DNA is like a computer program but far, far more advanced than any software ever created.”
― Bill Gates, The Road Ahead

User avatar
francois
Contributor
Contributor
Posts: 4902
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

Re: Simple Package Manager for Debian type

Post#12 by francois » 19 Mar 2014, 23:39

Thanks slaxmax.

I am on xfce presently. Trying spm debian with gnumeric and pychess.

I will report. 8)

What did you achieved to build?
Voltaire: Le mieux est l'ennemi du bien.

User avatar
brokenman
Site Admin
Site Admin
Posts: 5436
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Simple Package Manager for Debian type

Post#13 by brokenman » 20 Mar 2014, 01:12

In Porteus v3.0 ktsuss was replaced with a modified 'gnsu' package (latest shadow package broke ktsuss and gksu) which uses sudo as a back end. Any ktsuss file should link to /usr/bin/gnsu.
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
Slaxmax
Contributor
Contributor
Posts: 403
Joined: 03 Jan 2013, 09:51
Distribution: KDE4
Location: Campinas Brazil https://goo.gl/yrxwKi

Re: Simple Package Manager for Debian type

Post#14 by Slaxmax » 20 Mar 2014, 02:55

@francois
I am only testing :D

@brokenman
Thanks for your explanation
“DNA is like a computer program but far, far more advanced than any software ever created.”
― Bill Gates, The Road Ahead

tome
Contributor
Contributor
Posts: 561
Joined: 26 Jun 2013, 14:03
Distribution: x64 Openbox
Location: Poland
Contact:

Re: Simple Package Manager for Debian type

Post#15 by tome » 20 Mar 2014, 16:02

Code: Select all

In Porteus v3.0 ktsuss was replaced with a modified 'gnsu' package (latest shadow package broke ktsuss and gksu) which uses sudo as a back end. Any ktsuss file should link to /usr/bin/gnsu.
I use '/usr/bin/ktsuss' from v2.1 in v3.0 (i486) and it works better for me than gnsu, that can not recognize whitespace characters.

Post Reply