Fatdog64, Linux From Scratch, Custom Package Management

News, happenings
Post Reply
Message
Author
rdog
Posts: 25
Joined: Mon 18 Oct 2010, 20:47
Location: Quesnel, BC, Canada

Fatdog64, Linux From Scratch, Custom Package Management

#1 Post by rdog »

I wasn't sure where to put this post. Mods feel free to move this post if you desire.

I have been working on a "different" package management system that was developed for the Linux From Scratch project. I didn't invent this package management system but I have made significant changes to the bash scripting that supports it.

Using the Fatdog64 OS as the host system, I have created notes for installing Linux From Scratch (LFS) 7.4, along with using the new package management system that I have been working on.

If you have an interest in learning more about Linux by installing LFS, or you would like to investigate interesting bash scripting examples, you can check out my documentation at the following link. I make extensive use of bash regular expressions for example.

https://www.javacrypt.com/lfs/

I consider this topic to be targeted at the intermediate Linux user as a minimum requirement.

P.S. If you would like to know where certain limits, such as open files, stack size, max user processes, etc. are defined in the Linux kernel you can find some pretty good details near the end of my_lfs_7_4_notes.txt file, which can be found at the link mentioned above.

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#2 Post by sunburnt »

Hi rdog; How about ditching legacy installed packages for no-install package types?
If apps. are no-install, then no ( or very little ) management is needed.

Puppy`s SFS files are a good example, but they only work with a union file system.
RoxApps, AppDirs, and AppPkg all work with no union, but are slightly harder to make.
.

amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#3 Post by amigo »

Which LFS package management approach do you mean?

rdog
Posts: 25
Joined: Mon 18 Oct 2010, 20:47
Location: Quesnel, BC, Canada

Hi Sunburnt :)

#4 Post by rdog »

sunburnt wrote:Hi rdog; How about ditching legacy installed packages for no-install package types?
If apps. are no-install, then no ( or very little ) management is needed.

Puppy`s SFS files are a good example, but they only work with a union file system.
RoxApps, AppDirs, and AppPkg all work with no union, but are slightly harder to make.
.
This particular package management system that I am referring to is fairly young and is so far targeted only at the Linux From Scratch system. However I did patch the Linux kernel to support AUFS in the LFS project that I built while using Fatdog 64 as the host OS.

Package management, in the sense that I am talking about it, involves: tracking the files and directories installed when compiling (and installing) a package from source code, providing an easy mechanism to tar these installed files and directories up into an archive, providing a way to uninstall any package (even if it does not have a make uninstall option), and providing an easy way to list all the packages that have been installed on a Platform.

Once the tar archive has been created a puppy package (which I believe is just a tar archive) can be easily made. Puppy packages can be extracted and compiled into a squashfs file (SFS) and loaded as a layer if desired.

Keep in mind that the base Puppy (before you have mounted custom or alternative SFS files) is created from a large number of packages (puppy packages) that are included using Woof to build a new Puppy.

The Linux From Scratch project is entirely compiled from source code (including the kernel) and includes only a relatively small number of packages required to get Linux to boot to a command prompt.

The package management system I have been working on doesn't really have a catchy name yet, so far it has been dubbed...
"More control and package management using package users" which basically spells out the principal of how it works.

If you would like to see more about this package management system you can read the original authors notes here:
http://www.linuxfromscratch.org/hints/d ... kg_man.txt

rdog
Posts: 25
Joined: Mon 18 Oct 2010, 20:47
Location: Quesnel, BC, Canada

Hi Amigo :)

#5 Post by rdog »

amigo wrote:Which LFS package management approach do you mean?
The package management system has been dubbed:
"More Control and Package Management using Package Users" and you can find out more about it here:
http://www.linuxfromscratch.org/hints/d ... kg_man.txt

I have significantly rewritten most of the "wrapper" scripts for the project which you can find if you visit the page I linked in the original post.
https://www.javacrypt.com/lfs

amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#6 Post by amigo »

Yeah, okay, I figured it was from one of the old LFS hints. It sounds good at first, but the idea of having thousands of programs owned by different users is OTT, to me.

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

#7 Post by jamesbond »

amigo wrote:... but the idea of having thousands of programs owned by different users is OTT, to me.
But isn't that what Android is doing? Every app is installed with as its own user; and when that application is launched the Android system process with setuid/setgid to that user before exec-ing the app? It seems to work fine with them. I'm curious what would you think about this practice.
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#8 Post by amigo »

I have to admit I haven't looked *that* closely at android yet -I do have a nice tablet with busybox, supersu, terminal emulator and good file manager which lets me look around anywhere. I'll have a better look at some stuff.

There's a lot I don't like about android -the promiscuity, mainly. The software distribution system is super, but nearly every app is obtaining major system access -the installation lists them but even I just flip to the 'yes' button, you know?

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

#9 Post by jamesbond »

amigo wrote:I have to admit I haven't looked *that* closely at android yet -I do have a nice tablet with busybox, supersu, terminal emulator and good file manager which lets me look around anywhere. I'll have a better look at some stuff.
This is what I've read: https://source.android.com/devices/tech ... index.html. Head off the "Application Sandbox" - that's what I'm talking about. It's a fancy term for the fact that every app is installed and run with its own user id (system generated at install time, I think).
There's a lot I don't like about android -the promiscuity, mainly. The software distribution system is super, but nearly every app is obtaining major system access -the installation lists them but even I just flip to the 'yes' button, you know?
How true :( That makes two of us, and I'm sure we're not the only ones.
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#10 Post by amigo »

Okay, I had a nice read which explained about android processes via 'zygote'. Yes, each app gets a unique process id at installation time. But there is no 'init' like with 'nix -the process id numbers get used by zygote when doing oom operations and removing apps (and their states) from the cache. zygote (actually, the Activity Manager) seems to be working around the kernels' in-built oom code.

But nearly every app will claim access to the sdcard and lots of mysterious network-related stuff. It's not enough that android itself calls home, no we have every other app calling to their home as well...

gcmartin

#11 Post by gcmartin »

Yeah. And V4.4 changes this again as now multiple tasks can simultaneously be active on-screen. I know this is off-target to the OP's title, but, Android is changing, yet again, in how App management is to occur.

This is why we're seeing more system RAM (3-4GB) changes to address new OS model needs.

Separately, The SD card is an external element, depending on how one looks at the system.

Post Reply