roar-ng and Subito GNU/Linux 0.9.5 Beta

Under development: PCMCIA, wireless, etc.
Message
Author
User avatar
Iguleder
Posts: 2026
Joined: Tue 11 Aug 2009, 09:36
Location: Israel, somewhere in the beautiful desert
Contact:

#21 Post by Iguleder »

The main reason why it fails hard is the fact it wasn't designed to build Puppy, you're doing something slightly wrong here :lol:

I'm currently working on new splitting and stripping scripts, with emphasis on better performance and the ability to work with files that contain spaces in their paths, which is something that shouldn't appear on a good UNIX-like system.

The overhead of strippkg is very minimal, since it's the optimization itself that takes ages. However, I still want to see where I can improve it.
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

gcmartin

#22 Post by gcmartin »

I'm currently working on new splitting and stripping scripts, with emphasis on better performance and the ability to work with files that contain spaces in their paths, which is something that shouldn't appear on a good UNIX-like system.
Don't take this as a negative response because its NOT. But, for what its worth, 98% of the worlds computers, understand, use, and are capable of understanding filenames with spaces. For the past 42 years the industry has been using long filenames (with/without spaces). We should respect that as an obligation to be consistent and not do a "nose up" at this in our industry.

But, as a rule, I agree, that we could encourage the community to use, where necessary, filenames without spaces.

I do understand what you are providing for our use. And I applaud the methodology you are sharing in this community.

Thanks for what you do.

dmabar
Posts: 2
Joined: Thu 09 Feb 2012, 00:50

#23 Post by dmabar »

Greetings everyone.

I am a casual Puppy Linux user who has never built a puplet or distro from scratch using any tools whatsoever apart from some basic remasters for my personal needs, so it is with great delight that I was able to do so without any great hassles on first attempt, as I had been intrigued by the process and this particular tool (funny I chose this over Woof). It was quite easy honestly.

That said, I am posting this from the default distro the builder made, the Subito GNU/Linux 0.0.6, from about a few hours ago and so far everything is breezing along just well... although this 'cwm' window manager is quite confusing for a newbie like me. Nevertheless, I got it working (thanks to 01micko for the 'pns-tool' utility).

Although I am fully aware that this is only a concept distro, like pemasu said, the browser is quite a letdown. So, I downloaded Firefox 10.0 and Adobe Flash Player (don't really use it but since I never tried anything on 64-bit before, I figure I would just try it), resolved some dependencies errors, and -- ta-da! -- got a very nice browsing experience.

All in all, I wish to congratulate Iguleder for this amazing work (as always) and say that this is a very easy tool to use and newbies out there like me should not feel "scared" or anything. I will be using this distro as much as time allows to see its stability and get the feel of it. Liking this minimalistic approach very much.

Sorry for this long post; just registered on the forum. :)

Oh ya, I uploaded my Firefox and Flash PET package for the Subito just in case anyone needs it. Just install using 'hpm-install', run '/opt/firefox/firefox' and you're set to go! (Do remove the Flash Player if you don't use it, thanks. :))

firefox-10.0-flash-11.1.102.55-x86_64-subito.pet
(26MB; MD5SUM: 5e4c20ddd41eaea8080d211035f77d6e)

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#24 Post by nooby »

dmabar , Jay that is cool!

So now you and MinHundHettePerro can cooperate to make a
32-bit version so us who have such computers also can test it :)
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
Iguleder
Posts: 2026
Joined: Tue 11 Aug 2009, 09:36
Location: Israel, somewhere in the beautiful desert
Contact:

#25 Post by Iguleder »

I'm currently working on several bug fixes and improvements:
- The kernel isn't silent as we like in Puppy - it's a bug in the build script I guess; I'm currently trying to locate the problem.
- There's an error when modprobe is called without any kernel modules present, early in the boot sequence
- Updates of Linux, libvorbis and shared-mime-info
- KMS still makes my screen black

I'll do my best to solve these bugs and upload new packages. :wink:
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#26 Post by 01micko »

Iguleder wrote: - KMS still makes my screen black
Intel eh? I guess that happens in standard slacko or latest slacko beta? They seem to have fixed it for nouveau and radeon in 3.1x kernels, and all my intels work ok too (eee-701SD, compaq-evo-500 w/brookdale, HP on son's lappy, forget chipset atm)
Puppy Linux Blog - contact me for access

User avatar
Iguleder
Posts: 2026
Joined: Tue 11 Aug 2009, 09:36
Location: Israel, somewhere in the beautiful desert
Contact:

#27 Post by Iguleder »

Nope - the problem is the kernel, framebuffer console support is a module. "reset" needs to run to make it work.

The problem should be gone now. :)
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

User avatar
MinHundHettePerro
Posts: 852
Joined: Thu 05 Feb 2009, 22:22
Location: SE

#28 Post by MinHundHettePerro »

Subito 32-bit

Slowly getting there ... :)

Cheers :)/ MHHP
[color=green]Celeron 2.8 GHz, 1 GB, i82845, many ptns, modes 12, 13
Dual Xeon 3.2 GHz, 1 GB, nvidia quadro nvs 285[/color]
Slackos & 214X, ... and Q6xx
[color=darkred]Nämen, vaf....[/color] [color=green]ln -s /dev/null MHHP[/color]

User avatar
Iguleder
Posts: 2026
Joined: Tue 11 Aug 2009, 09:36
Location: Israel, somewhere in the beautiful desert
Contact:

#29 Post by Iguleder »

Just to let you know, guys - I made some very big changes to roar-ng:
- All configuration is now located in a new directory, "conf".
- DISTRO_SPECS is deprecated and replaced with "distrorc", a simpler configuration file.
- The repositories support has changed; now each distro (under the "distro" directory) has a file called "repositories" which lists its repositories.
- The boot sequence is more configurable now, thanks to "bootrc", a new configuration file which allows choice of the file system used with save files and the save file name.
- I rewrote the "buildpkg", "splitpkg" and "strippkg" scripts, which form the automated package building framework. Now they're simpler, shorter, faster and better.
- I merged the "buildpkg" tool with roar-ng, which means any roar-ng distro is now "self-contained" and can be used to produce binary packages automatically and easily.
- hpm (the roar-ng package manager) is now integrated with buildpkg; both work with a new package format called "rxz" (combination of "roar-ng" and "xz"). They are similar to PET packages, but do not contain an annoying directory and pet.specs. Also, pinstall is named post_install.sh instead and puninstall.sh is now post_uninstall.sh. This package format is much smaller than PET and designed to be more simple: packages are not split as in Puppy, since this splitting is handled automatically by roar-ng; if there's any bug in the splitting script, package quality is reduced - no more!
- The package list format is changed; now, entries begin with the distribution name instead of "yes" or "no", which means packages from any distro can be used in one distro. Also, it is no longer a script.
- "subito" is added as a supported distro; its package handling code handles the new "rxz" format.
- Puppy (and PET) support is removed completely.
- From now and on, the devx has a skeleton, which contains package creation tools.
- The skeleton is now more modular and split to three sections: the main file system (e.g the main SFS), the initramfs and the devx.
- I rewrote the functions file, which provides a better, more efficient API for the scripts. It's much simpler to use and faster now.
- Save file creation is handled on the first boot, instead of being handled "interactively"; /opt/sbin/create_save_file is now moved to the initramfs. Once the system is booted and the "home=partition" boot code is specified, the init script attempts to create a save file on the specified partition and continues to boot into a persistent session (unlike Puppy, which has to run "live" at least once for persistency). This makes things easier.

These changes cut the last ties between roar-ng, Woof and Puppy. It's a big step for roar-ng towards a stable, usable version; it simplifies it a lot. Also, they make roar-ng and the distros it builds more modern and simpler (KISS, anyone?).

From now and on, everything related new to Puppy is considered deprecated and unsupported; time to move on, to better package management, modern package formats and cleaner code.

The main reason Puppy support is dropped is its non-standard nature. For example, PET packages already ship in a split form, while roar-ng performs automatic splitting. All the Puppy-specific code is now removed, which means roar-ng lost many LOC.

Regarding Subito (which is the flagship distro built using roar-ng) - I added support for Nouveau (thank you, 01micko!) and fixed some bugs, most notably the kernel (verbosity level and KMS) issues. I'm currently rebuilding it to test the new platform (the new automated package building framework and the package format); so far it seems good.

Viva la revolución!
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

User avatar
Q5sys
Posts: 1105
Joined: Thu 11 Dec 2008, 19:49
Contact:

#30 Post by Q5sys »

Iguleder wrote: Viva la revolución!
Image
Sorry had to. :P

Love what you've done so far. Im so freaking impressed I cant even put it into words. I wish I had your skill level.

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#31 Post by nooby »

May I ask this?
Once the system is booted and the "home=partition" boot code is specified,
the init script attempts to create a save file on the specified partition and
continues to boot into a persistent session
Is ntfs-3g included so it can create these save files even on NTFS?
And can the OS Subito or others created by your program boot frugally?

Isolinux or grub4dos or grub2? or all of them?
I use Google Search on Puppy Forum
not an ideal solution though

gcmartin

#32 Post by gcmartin »


User avatar
Iguleder
Posts: 2026
Joined: Tue 11 Aug 2009, 09:36
Location: Israel, somewhere in the beautiful desert
Contact:

#33 Post by Iguleder »

nooby wrote:Is ntfs-3g included so it can create these save files even on NTFS?
No, for two reasons:
- Bad performance of FUSE
- Booting Linux from NTFS is a bad idea

However, you can add the ntfs-3g package if you really need good NTFS support. At the moment, Subito is able to boot from ext2, ext3, ext4, xfs and btrfs; I have tested it only against ext4, though.
nooby wrote:And can the OS Subito or others created by your program boot frugally?
Yeah, any distro built using roar-ng can boot in two modes - either "live" or "frugal", in Puppy terms. Support for "full" installation is not provided because it makes the boot process much more complex and introduces many questions.
nooby wrote:Isolinux or grub4dos or grub2? or all of them?
Subito comes with syslinux, but you can add any boot loader you wish. Boot loader support has nothing to do with the distro itself.
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#34 Post by nooby »

Thanks.
FUSE
http://en.wikipedia.org/wiki/Filesystem_in_Userspace
Filesystem in Userspace (FUSE) is a loadable kernel module for Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code. This is achieved by running file system code in user space while the FUSE module provides only a "bridge" to the actual kernel interfaces.
...

FUSE is particularly useful for writing virtual file systems. Unlike traditional file systems that essentially save data to and retrieve data from disk, virtual filesystems do not actually store data themselves. They act as a view or translation of an existing file system or storage device.
I use Google Search on Puppy Forum
not an ideal solution though

User avatar
8-bit
Posts: 3406
Joined: Wed 04 Apr 2007, 03:37
Location: Oregon

#35 Post by 8-bit »

I just happened to think about my problems trying to create an ISO using roaring.
I had devx and the kernel source SFS files loaded for the version of Puppy (Lupu 520) I was running.
So in making the ISO, do I have to load the kernel SFS for the version I am trying to make?
I have tried twice now to make an ISO by just using the script files in order and both times ended up with an 8 meg ISO.
That is along with the compile packages script stopping with errors on Perl and the previous file another was having problems with.
I am evidently missing some step in that I do not think the file system is getting created successfully.

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#36 Post by nooby »

8-bit maybe this explains it?

From now and on, everything related new to Puppy is considered deprecated
and unsupported; time to move on, to better package management, modern
package formats and cleaner code.

The main reason Puppy support is dropped is its non-standard nature.
For example, PET packages already ship in a split form, while roar-ng
performs automatic splitting. All the Puppy-specific code is now removed,
which means roar-ng lost many LOC.

So if you use Puppy Lupu maybe that fails due to puppy being so structurally. different Sorry poor grammar.

Edit Correction I was wrong Iguleder explains

Nope; this changes apply to the next version of roar-ng only.
Last edited by nooby on Sat 11 Feb 2012, 11:40, edited 1 time in total.
I use Google Search on Puppy Forum
not an ideal solution though

zomzilla
Posts: 24
Joined: Wed 04 Jan 2012, 16:56

#37 Post by zomzilla »

i am just giving the scripts a go to try and get a 64 bit slacko; and its working pretty well so far!

my only question would be where could i find info on changing the compatable distro? i would love an arch based puppy or maybe one with funtoo's portage

User avatar
Iguleder
Posts: 2026
Joined: Tue 11 Aug 2009, 09:36
Location: Israel, somewhere in the beautiful desert
Contact:

#38 Post by Iguleder »

nooby wrote:So if you use Puppy Lupu maybe that fails due to puppy being so structurally. different Sorry poor grammar.
Nope; this changes apply to the next version of roar-ng only.
8-bit wrote:So in making the ISO, do I have to load the kernel SFS for the version I am trying to make?
No, just the devx.
8-bit wrote:That is along with the compile packages script stopping with errors on Perl and the previous file another was having problems with.
roar-ng does not compile packages :?
zomzilla wrote:my only question would be where could i find info on changing the compatable distro? i would love an arch based puppy or maybe one with funtoo's portage
It's works like Woof - edit DISTRO_SPECS. But you'll also have to implement support for that distro in the same way I did for Slackware.

Bear in mind that the next version will be much more flexible in this area - it will be much simpler to provide this support.

EDIT: fresh development news!

I have merged Builder (my automated package building infrastructure) into roar-ng as a fourth script, 4buildpackage. This script runs after 3builddistro (which produces a working distro) and builds a package automatically (from build scripts contained in the devx skeleton), inside this distro, using chroot. This allows easier porting - now it's possible to build a "barebones" distro, then use 4buildpackage to build all applications for it (inside it, automatically) and rebuild it, this time with the new packages, to achieve the final result.

So far it works really well and it's much faster than the previous incranation. This also joins the major improvements I implemented in roar-ng in the past week.
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

User avatar
Iguleder
Posts: 2026
Joined: Tue 11 Aug 2009, 09:36
Location: Israel, somewhere in the beautiful desert
Contact:

#39 Post by Iguleder »

Here's a development snapshot, partially tested, for the curious and passionate developers :lol:

It has many fundamental changes; examine the "conf" directory before you attempt to use it.

I'm currently running 4buildpackage on all the packages included in the previous version's package list, to test it. At the moment, it will fail to download stuff from the Subito packages repository, since it doesn't exist. I'll upload all packages once I'm done building them.

By the way - if you're here to learn, read the functions file. :wink:

EDIT: uploaded a more stable version.
Attachments
roar-ng-002.tar.bz2
(62.04 KiB) Downloaded 606 times
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

fschiff
Posts: 1
Joined: Sat 20 Aug 2011, 16:57

#40 Post by fschiff »

In 0setup this line
distribution="$(basename $distro)"
could be moved out of the inner loop.

There are lots of instances of
cat file | grep pattern | sed-or-tr something

just use grep pattern file

Post Reply