roar-ng and Subito GNU/Linux 0.9.5 Beta

Under development: PCMCIA, wireless, etc.
Message
Author
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

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

#41 Post by MinHundHettePerro »

How should one go about to include local package-lists and local packages in roar-ng-002, if still possible?
/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]

puppymite
Posts: 4
Joined: Sat 21 May 2011, 21:34

#42 Post by puppymite »

Home
dimakrasner.com
Dima Krasner's Homepage
Feb 11 2012
Why Fork Puppy
By dima

I'm currently working on my own distribution, Subito GNU/Linux, which is a strong competitor to Puppy Linux meant to unify its qualities with those SLAX had and put heaps of the Arch Linux and Slackware KISS goodness on top. The idea is to be the first distribution that appeals to advanced users those appreciate the speed and size of "live" distributions but also like the simplicity of Arch.

Here's an assorted list of random rants and complaints about Puppy Linux and its infrastructure, most notably Woof:

1 Puppy Linux's code (especially the code that originates in Woof) is of poor quality; the only solution to this problem is a complete rewrite.
You're mostly correct, here ...
2 Woof is extremely hard to develop for, because it contains thousands of commented-out lines of legacy code and lacks proper documentation. Any part of a distribution-building infrastructure should consists of 100%, purely good code, otherwise its output will inherit its horrible quality.
Agreed.
3 Puppy Linux has a hard dependency on many ancient, deprecated packages (such as nenscript or installwatch) that cannot be built with today's compilers. A good example for this is gtkdialog: nobody's going to port it to GTK+ 3. Puppy was not designed with the possibility of future porting or "sister" distributions in mind: it cannot be ported to another architecture easily, period.
Yes, those hard dependencies on ancient, deprecated packages _should_ be weeded out. Be a bit careful with what could be compiled in a certain environment, or another, though. Gtkdialog -> gtk+ 3, don't know, but, who knows ...
4 According to Barry, Woof 2's blessing to the world was architecture-independence, but this is a lie! The reason its first generation lacked this feature is the fact It uses a chroot call to perform certain operations, but the new version just saves the target architecture and the one it was built on in a file and performs these final operations at boot time, contributing to Puppy's horrible boot speed. This isn't the right way to implement portability.
Cannot comment, am an all x86 bloke ...
5 Woof is slow; it performs all string operations using pipes, downloads files one-by-one from a single mirror and does the big no-no of shell scripting, which is recursion (e.g endless chains of fork() and exec()).
Agreed, woof is slow. However, roar-ng's speed could be improved upon, though it's signicantly faster than woof(2) ...
6 Puppy Linux boots slowly, because it has to search all partitions for its files and dynamically loads specific drivers to determine each partition's type. Also, its kernel package is split between the initramfs (the initial file system used to locate the main one) and the main file system itself, which causes mess and makes Woof less generic.
As you'd know, woof-built puppies searches all partitions, unless a partition is specified at boot-time. Splitting of kernel package between initramfs and the main file system causes _mess_ in what way?
7 With every change to Woof, Puppy Linux becomes more and more ignorant of standards. Although the usefulness of some is debatable, compliance makes development easier, since everybody else follows them.
? - /opt/* ???
8 Altough newer versions of Puppy Linux ship with a more exotic choice of window managers, much of its infrastructure still relies on the traditional JWM and ROX-Filer, which are non-standard in many ways. Woof's desktop integration of the two and the partial support for standards are implemented in dirty ways and make it hard to use Puppy as a development platform.
Yes? And how is cwm more standard?
9 The PET package format used by Puppy's packages is quite messy and hard to work with. Moreover, it uses the traditional gzip compression, which provides a low compression rate in today's standards.
Lower compression rate than xz, agreed. Messy? What's so messy with a bog-standard gz-package with a tucked-on md5sum, including a package-specs-file?
10 Puppy Linux's organizational structure is bad for continuity. Its development team consists of a small group of dedicated volunteers and Barry Kauler, who holds all intellectual property and takes care of all big decisions. Because of this, many fans develop their own, low-quality derivatives that lack creativity or special features, which frustrate novice users because of limited support.
The ease of re-mastering a puppy, or of woofing up your own (in spite of above stated awkwardness of woof(2)) has been a long-time development-choice of BK, as I gather. How roar-ng will ease the frustration of novice users is, yet, still yo be seen ...
11 Old (7.3 and below) versions of the X.Org X server had very limited support for automatic hardware detection (provided by the deprecated HAL daemon) and required a configuration file. Many tools were developed to accomplish this, most notably SaX2 and Puppy's xorgwizard. However, newer versions rely on udev, which is indeed reliable and therefore, hardware detection is good; these tools are no longer needed, but Woof still contains xorgwizard, to provide compatibility with those old versions (most notably, version 7.3, as found in Puppy Linux 4.3.1 and Wary Puppy). The hardware support of Woof-built distributions with later versions is much worse and they suffer from a longer boot sequence, for no reason.
Automatic hardware detection is not always that good ...
12 A distribution built using Woof is limited to the use of packages from Puppy Linux and packages from an optional, other distribution.
As it stands, as of 2012-02-11, using roar-ng is limited to another distribution, with the optional add-mixture of a _certain x86_64 sample distro_ .....
And, for legacy 32-bit:ers ???

13 It is extremely hard to add support for new distributions in Woof, because support for existing ones is provided as conditions in existing scripts.
Yes, agreed. But, on the other hand, how easy is it to add local packages and local package-lists to roar-ng-002, like a roar-ng tester just queried?

To conclude - I think it's time for someone to fork Puppy Linux and compete with it, head-to-head. It's a good product which deserves a better future and more care. The only way to provide this is a revolution and not the ugly evolution, which made me write this.

Innovation, professionalism and rebelliousness: this is my motto. And yours?

There is no doubt, at all, that you're extremely innovative, cunning, canny, and .... But, rebelliousness can, sometimes mistakenly, be interpreted as youngish cockiness, and vice versa .... :P :P :P :P :D

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

#43 Post by Iguleder »

Time to reply! :lol:

1) /opt is standard!

2) cwm isn't standard at all, but it doesn't do all the icons mess JWM brings. By the way - I didn't claim it is standard, in any way.

3) Automatic hardware detection ROCKS.

4) roar-ng is no longer limited to two distros, unlike Woof. I'll upload a new version next week.

Thanks for your comment! :D
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

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

#44 Post by 8-bit »

Using Woof is one thing, But have you tried the addon package for it called Bones?
It is a GUI that lets you select the packages you want and has a number of features in tabs.

I am not downing roaring, but am saying bones might be worth a look as to adding a GUI for roaring to get the job done of making an ISO.

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

#45 Post by Iguleder »

No, Bones is Barry's version control system used with Woof 1.
[url=http://dimakrasner.com/]My homepage[/url]
[url=https://github.com/dimkr]My GitHub profile[/url]

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

#46 Post by zomzilla »

hi igu: i'm having a run-through by just making the default slackware puppy

but 1download stops because it cannot find busybox on dimakrasner.com

can i override/fix this?

Payoon
Posts: 32
Joined: Wed 26 May 2010, 15:40
Location: Duisburg, Germany on the banks of the Rhine

Busybox

#47 Post by Payoon »

I have the same problem. The slackware packages are read well and when starting with subito it stops at busybox. The roar-ng thing is in it's early stages and I hope later we'll get some more "howto" documentation.
All in all very very interesting. My dream: a selftaylored distro for my machine with exactly the software that I need.
Greetings:
Payoon

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

#48 Post by zomzilla »

:D another who dreams of portage-powered puppy?

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

#49 Post by Iguleder »

Good news - currently running a stable version of roar-ng, with many improvements. Looks good so far - it's much faster than the old version in the first post and seems to be more stable.

Notable changes:
- Moved everything under /opt to /usr.
- Added many bug fixes to the new Builder.
- Fixed the bugs in the new strippkg; now it does not perform recursive optimization, since it takes too long. It won't optimize the contents of archives.
- Moved all custom configuration and Subito-specific stuff from build scripts to the skeleton, to make the result packages more generic.
- Removed CenterIM from Subito - development of the 4.x branch halted this week. The only alternative it has is Finch (Pidgin's console interface), but I don't like it.
- Replaced some packages built using build scripts with Slackware ones, to ease maintenance.

EDIT: more features!
- Detection of the current window manager, desktop background, etc' in desksetup
- Many bug fixes
- Removed all console application menu entries
- Code cleanups
- Replaced source hacks with configuration files in the skeleton
- Automatic creation of save files without having to reboot to use them

Subito changes:
- Added dbus-glib, so Firefox works now out-of-the-box
- Replaced some packages with Slackware ones, to ease development
- Some updates
[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

#50 Post by MinHundHettePerro »

Hello, Iguleder :)!

Is your new version of roar-ng in shape to share?
Eagerly awaiting .............. :)/ 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]

Post Reply