Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sat 26 Jul 2014, 09:10
All times are UTC - 4
 Forum index » Advanced Topics » Cutting edge
GtkDialog - Make Image / Save / SFS files utility.
Moderators: Flash, Ian, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 2 of 4 [57 Posts]   Goto page: Previous 1, 2, 3, 4 Next
Author Message
sunburnt


Joined: 08 Jun 2005
Posts: 5009
Location: Arizona, U.S.A.

PostPosted: Tue 10 Dec 2013, 19:11    Post subject:  

Mike; Is there a plan that you have in mind? RSH`s efforts are that most comprehensive so far.

And I agree, there`s soo much that needs repairing in Puppy. And for sooo long now too...

The union stack problems.
The lack of support for switching WMs and DMs.
The menu setup is a minor mess.
On and on...


amigo called Puppy a square wheel that was being reinvented ( Very Funny... Laughing ).
His apt analogy points out, that to develop Puppy you`re starting out with damaged goods.

I like Saintless`s approach better. Take Deb. Wheezy and reverse engineer a Puppy clone.
Now apt-get and all the other "it-just-works" things about Debian is all part of the package.
Not to mention Debian`s excellent repository of nearly every freeking app ever made.
I don`t intend to pretend that Deb. is perfect, but many have my opinion it`s the best choice.
.
Back to top
View user's profile Send private message 
mikeb


Joined: 23 Nov 2006
Posts: 8032

PostPosted: Tue 10 Dec 2013, 21:53    Post subject:  

Quote:
I like Saintless`s approach better. Take Deb. Wheezy and reverse engineer a Puppy clone.

Yes I did that with slax 6/nimblex.... does produce a nice result though I went for Xfce4 rather than the rox and thing approach.
Its a good choice as it does the unionfs boogie properly so nothing to do in that respect. I did add tar save as an option which took a few lines slipped in since saving method is set by boot parameter but otherwise the core is untouched. Its gives much of the renowned puppy flexibility ... boot from anything stuff, load to ram and so on but with a slackware distroness about it. ..look a new word.

A sprinkling of scripted wizards added and nothing kde whatsoever (but easily available if wanted) so the system keeps light and fluffy. Folder saving of course and as such its been chugging away for several years on the original save.

A plan... well one sees opportunities for improvements that would benefit this distro which does have some good features (otherwise why puppify anything) and its also many users first taste of linux so its nice to put on a good show.
Ideas thrown in in the past have eventually crept in so one keeps plugging Smile

I did post my hacky but happily layering script on the modular thread for anyone who wants to play.

By the way as an aside I used the kde modules from nimblex and got them working in puppy 2.02.... 60MB for desktop, office and libs..... was about 95% working including the menu which was a bit stubborn. No hal of course and some configs made no sense. Perhaps it was too much like windows XP for me so I went the other way...stick the pup on the slax Very Happy

Hope that makes some sense

mike
Back to top
View user's profile Send private message 
sunburnt


Joined: 08 Jun 2005
Posts: 5009
Location: Arizona, U.S.A.

PostPosted: Tue 10 Dec 2013, 23:22    Post subject:  

Mike; I asked micko if he had tried putting the Slackware PM into Slacko, no reply.
If you have done this, then it would be sensible to see if it could work in Slacko.

# Also I can`t tell how big Slackware`s app base is. Is it as big as Debian`s.?

I`ve asked about 3 times how much of Puppy is Puppy ( if you understand my drift ).
Is the kernel.? How much of the system files are Slackware, etc., etc...

At a point reverse engineering makes a lot more sense than continued fiddling. Ya think.?

# Our point... If a Puppy clone is made of a solid Slackware / Debian base, it`s better, right.?
They both have working PMs, and large package repositories. It just makes too much sense..
.
Back to top
View user's profile Send private message 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Tue 10 Dec 2013, 23:49    Post subject:  

Hello sunburnt and all.

I just remembered this.

As you may not know, since it was announced on the French side of the forum
about a month and a half ago, ASRI-Education created a SimplePupSave utility
to create pupsave files.

It's a gtk-message message window pretty much like yours. An English version
exists, if you care to look at it.
http://murga-linux.com/puppy/viewtopic.php?search_id=35310777&t=85829

BFN.

musher0

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
sunburnt


Joined: 08 Jun 2005
Posts: 5009
Location: Arizona, U.S.A.

PostPosted: Wed 11 Dec 2013, 03:13    Post subject:  

yeah... I knew that there were at least several others that I`d seen here in the forum.

I didn`t bother to look but functionality looks about the same.
Back to top
View user's profile Send private message 
mikeb


Joined: 23 Nov 2006
Posts: 8032

PostPosted: Wed 11 Dec 2013, 07:15    Post subject:  

Parallel developement eh... c'est la vie

Ok forgot to mention my puppyfied slax rolled in at around 105MB iso which includes their considerably larger kernel.

Thing is if there is a lack of in house built software then its natural for people to look elsewhere for sources. As I mentioned before custom building for puppy can be a way of keeping light and fluffy, compatible and avoid having to include the kitchen sink....to me much preferred...something I do much more often than I used to. Perfect example is you are asking me how many packages there are available with slackware.

In answer to that you can browse with gftp thier repository plus for multimedia and similar there is slacky.eu

My experience is I use debs or pets/sfs (??? yes there are well built packages around puppy and often the neatest solutions) and the rest of the time I build. I have a saying ...'It's all linux'
I do it semi manually. slaptget never worked for me... don't think it works too well for others. The structure and core might be solid but they have a 'slack' approach to packages... often broken , so I avoid when I can... as you say 'go figure'
My tests of slax 7 showed that the situation had not changed..some major breakages. So resorting to the big boys is not always the perfect solution it may seem. Do note Tomas spends most of the build time bug fixing the slackware he uses for slax.

Rough estimate... kernel is puppy, boot wrappers and system wrappers ..puppy. Configs..puppy. Core binaries...mixed bag..often older varieties odd in house built. Rest of user space -the distro its 'based' on with exceptions such as gparted.. Puppy 2 was not claimed to be any particular distro but its core binaries appeared to be from slackware...puppy 4... hard to say..perhaps the same.

There was a 'what is puppy' thread started...curious question of how its defined officially and unofficially. My initial finger pointed to the wrappers that give it its structure. I suppose that would come from the slax experience as that pretty much sums it up ... a few kernel adjustments to suit the live linux/union but the rest is slackware.

This distro was officially a free for all, it now tries to be structured.... there is some identity crises going on... this forum is not strictly speaking a puppy forum but stuff happens. The botany bay of the Linux world. There is an old saying...'don't ask why, it just is'..ah ha... perhaps that is the definition of puppy. Smile

A plan?...God likes is when we plan...it makes him laugh...
I am full of these this morning

adieu

mike
Back to top
View user's profile Send private message 
amigo

Joined: 02 Apr 2007
Posts: 2219

PostPosted: Wed 11 Dec 2013, 09:54    Post subject:  

1. kernel is patched for aufs and possibly others. Kernel configuration is puppy specific -mostly done by heuristics where users say "I am missing such and such module" and so it gets added. Several kernel config options are key to the way(s) that puppy is able to boot.

2. As with any LiveCD distro, much of the magic that makes that possible is done within the intird -which is just a small system which runs before the real root is mounted.

3. Puppy uses its' own init system which is simply a very messy shell script. I say messy because most of the mess should really be in the initrd. Once /sbin/init is run, the boot process(init script) for a LiveCD should be just like a normal hard-drive or other boot process.

4. core libraries and programs mostly come from whatever poor distro is being hacked, with the exception that utilities from busybox are used to replace many utilities which are normally in the core-utils and linux-utils packages.

5. Puppy requires a few program which are not found in other distros, are not normally installed by other distros, or puupy usage requires the program to be configured differently at compile-time.

6. Many programs are pre-configured to run under puppy by placing files under (eeeWW) /root.

7. Most of the activity during late-boot is done by puppy-specific scripts and small binaries -things like auto-hardware detection, etc.

The problem with using native upstream repositories arises where normal packages would intefere with the way puppy does things. for instance, installing sysvinit (the *real* init program) would overwrite Puppy's super(sic) /sbin/init. Installing or upgrading core-utils would overwrite the busybox utilities. Installing upstream kernels would also not work as theyare not patched and configured to boot the puppy way.

So, a lot of puppy-specific things need to be protected from being overwritten by using package blacklisting with apt-get or whatever upstream is.

As you may infer, puppyisms pervade every step of the boot/init/desktop sequence. But, as far as disk-space and numbers, upstream packages are a much larger part of the total system.

The problem with all these approaches to using SFS'S or pets or whatever, is that you don't have control of either upstream or even Puppy development. That means that you can't intervene in whatever is already happening -you can only do something afterward.

Most puppy users are impressed with how 'flexible' puppy is to boot. However, the boot/init process which puppy uses actually reduces flexibility and makes it more complex to achieve any gaol other than the goals foreseen by BK. A good example is the boot-to-root versus multi-user support. On nearly any normal distro, booting straight to desktop with autologin as root takes one extra small program and two changed lines in two files. On puppy, in order to restore multi-user support you'd need to modify many dozens of puppy-specific scripts(nearly all of them), add a few extra small programs and replace a few busybox tools with their real counterparts.

Puppy uses some really weird methods for stuff, like, since busybox mount doesn't support loop-mounting, the FULL mount is also included in Puppy, a the 'mount' program is replaced with a script which calls either the busybox mount or the real FULL one, if the loop option is being used. I mean, why not just use the real thing and eliminate the extra wrapper completely?

In fact, the use of busybox utilities throughout poses a great handicap for puppy when trying to use many normal applications which often depend on full-featured utilities and fail when used with cut-down busybox versions. So, this is another thing to think about.

As I've said elsewhere, it really is no problem to treat a filesystem image (SFS, e2fs, etc) like an archive and extract it somewhere instead of mounting it. and, it's no problem to treat an archive like a n FS image and mount it somewhere, instead of extracting it. So, all the fuss about SFS vs. pet/deb is really irrelevant.

The idea of making software available dynamically simply means that you need to make the software visible and available for use, but without really 'installing' anything. A private, one-time union mount is the only way to achieve this in every case. Using wrappers which pass PATH's to the application will only work for some applications. The other way is to use temporary links which are placed in the normal PATHs, but which point to your preferred items which are in an isolated location. This last method is the messyiest of all, most prone to creating problems with the main system, hardest to understand -and I say, if you are going to create objects (links) in the real PATHs, why not just install the program?

I do not recommend trying to mess with puppy's underlying aufs layers at all. It's already doing more than it should be trying... A system using unionfs-fuse and fakechroot would be completely transparent to the user, could be run sand-boxed, any number of 'modules' could be used at any time, the method would always work.

The approach of using an SFS embedded inside an AppDir is quite workable -but only if rox-filer is being used. Still, if the AppRun script for an AppDir is linked into a normal PATH, then the AppDir will also work when clicked on from another file manager. Since the /opt dir is made for doing things in an unorthodox dir structure, it makes the perfect place to put such AppDirs and have them link the AppRun into /opt/bin -which is also legal there. AppImage-style applictaions (like from portable-apps.org) work like this, but without the need to be linked-to at all.

You'd need to have both unionfs-fuse and fakechroot installed for the system to work -or include them in every 'deliverable'.
Back to top
View user's profile Send private message 
mikeb


Joined: 23 Nov 2006
Posts: 8032

PostPosted: Wed 11 Dec 2013, 10:32    Post subject:  

Amigo is my PA..he fills in the blanks and saves my memory and typing from too much strain Smile

Actually busybox mount appears to handle loop mounts ..in some ways better than mount..it automatically releases the loop afterwards and seem to be the one used in puppy for sfs insertion. The mount script makes a discrimination for ntfs and uses 3g to give read write mounting. It also has lots of junk for the desktop icons and is much much simpler once they are removed. indeed on slax some form of wrapper is needed for ntfs though the system mounts all at boot as it happens perhaps to circumvent this.

But generally in slax for example the main system init is basically slackware...only the initrd is doing the live linux related stuff...it does give a nice separation and the initrd side is elegantly simple.
The result from a users point of view is you are dealing with standard slackware et al....and yes things like multiuser come as standard issue.

Ok your chrooted method...could you make a working example to help get a handle on this .... something simple like RSH did with sfs handling just for a quick test?

mike
Back to top
View user's profile Send private message 
amigo

Joined: 02 Apr 2007
Posts: 2219

PostPosted: Wed 11 Dec 2013, 12:33    Post subject:  

sunburnt got me working on this for him once -with a quite challenging one: google-chrome.

I put together a script which creates an AppDir of it. It does not use an sfs but could be made to do so to reduce the size of it.

The script is called prepare-chrome-AppDir. Download the attached archive which includes the script, icon and AppInfo.xml. The script will dowload a deb package of chrome and fix it up as an AppDir. The AppRun script will then use unionfs-fuse and fakechroot to create and run the chrooted union. You will need to have unionfs-fuse, fakechroot and pkill for it to work. The AppRun could of course be modified to mount an sfs instead of having the chrome files in an open dir inside the AppDir.

chrome does still throw a couple of errors about dbus connections, but still runs. For most applications such an approach would suffice to run them without problems. The dbus errors can be fixed, but I had other things to do...
CreateChromeApp.tar.bz2
Description 
bz2

 Download 
Filename  CreateChromeApp.tar.bz2 
Filesize  5.32 KB 
Downloaded  111 Time(s) 
Back to top
View user's profile Send private message 
mikeb


Joined: 23 Nov 2006
Posts: 8032

PostPosted: Wed 11 Dec 2013, 14:29    Post subject:  

Is this something I could test in Lucid.... that may be a dumb question but had to ask.

I still have slax 7 around but then there's no roxapp support in there but perhaps I could run the script directly.

Never used chromium...is it self contained like firefox? ie could this be used for say pidgin?

mike
Back to top
View user's profile Send private message 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Wed 11 Dec 2013, 17:35    Post subject:  

Hi, sunburnt and all.

http://www.murga-linux.com/puppy/viewtopic.php?p=709032&sort=lastpost#709032

This is the "Simple Pupsave Create" utility in GUI that I was talking about. It was initiated by
dejan and then improved upon by ASRI and RSH. So that's one base covered, I think.

Also, let's remember that 2fs files and sfs files are two different animals.

BFN.

musher0

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Wed 11 Dec 2013, 18:55    Post subject:  

Hi, guys.

Glad I caught you guys before another message was posted: is it just me or is the
utility I mentioned above useless?...

I created two pupsaves for raring 3992 with it and got the message:

Quote:
raringsave-other.3fs:
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
#
e2fsck: Bad magic number in super-block while trying to open raringsave-other.3fs

for each of them. Then, boot process halts for 60 seconds, it continues to desktop,
but you can't save anything to those pupsaves. Like Teflon, nothing sticks.

Let's test some more (someone? Please?) and be sure before we break the Sad news
to that team? Skilled people too. Strange...

Gotta go. BFN.

musher0.

~~~~~~~~~~~~~
PS @ sunburnt: You're right, there's lots still to be fixed in Puppy. The above incident
brought up the info that the blkid utility used in raring 3992 (recent stuff, this raringPup)
dates back to 2003... Yikes!

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
sunburnt


Joined: 08 Jun 2005
Posts: 5009
Location: Arizona, U.S.A.

PostPosted: Thu 12 Dec 2013, 03:19    Post subject:  

musher; As I`ve said, I use to write a diddy in V.B. and show it to my neighbor and it`d crash his PC.
Coding is hazardous at best. That`s why I opt for simple languages, Bash, BaCon, etc.

# I don`t think there`s a problem with my image file maker, but I haven`t tried every possibility.

Mike; You`ve given us the best description of Puppy`s guts yet. As I thought, Puppy`s a bag of bones.
Slackware sounds a little incomplete as far as the PM goes anyway. Pkg. management`s a tough job.
Deb and Ubu, and other offshoots seem to have the best handle on it. Debian is the Linux base...

# I can make a small AppDir type package for you to look at, a calculator is small enough to post here.
OR... Download one of the Virtual AppPkgs I posted, but they`re for Precise.


amigo; You`ve always confirmed that Puppy is a square wheel ( I still LOL at that one ).
I`m looking at Deb-Live project and trying to get Saintless`s Wheezy to work with my limited knowledge.
Saintless has the right idea, use Debian and reverse engineer a Puppy clone ( or better...).
He`s simply starting with a Deb-Live Wheezy and removing pkgs. from it, so it`s a good base to start from.
# I`ve got high hopes for one or the other of these approaches to work. It`s the big fix.
.
Back to top
View user's profile Send private message 
mikeb


Joined: 23 Nov 2006
Posts: 8032

PostPosted: Thu 12 Dec 2013, 06:34    Post subject:  

I liked featherweightlinux... he made a nice custom job of featherweight which was a stipped down knoppix...so one removed and the other added.

Debian ... I do not recall ever getting a bad build from them...just not keen on the way it bloated out at sid as linux did generally which is why I seem to build now when I want something shiny and new.
udeb and others have always been popular for their 'solidness'.

Its not just about user space binaries.
Puppies wrappers got too heath robinson for my liking... amazing how similar functionality can be obtained with a fraction of the code. The puppy simple and fast feel needs a revisit. This is when I found Lucid to be slower than XP I questioned the status quo...by the way I got that one to boot twice as fast in the end.
I don't do the recent firefox boogie for the same reasons...feels like its lost the plot and better renderers are not enough to tempt me. Unfortunately if devs work on octal core machines with 8GB of ram (more a firefox dig but might apply to here...I notice a 'who cares how big any heavy this stuff is attitude creeping in over the years' ) they might tend to lose a little 'real world' objectivity. I have known software developers to deliberately use old machines and systems on the basis if it works on that it will be happy on anything. Good web designers work on the same basis ...see what happens when they do not.

As for testing...I want something that normally is scattered around the file tree but in this 'ere chroot enviroment really...then I can play with adding squashiness (if needed)

mike
Back to top
View user's profile Send private message 
mikeb


Joined: 23 Nov 2006
Posts: 8032

PostPosted: Thu 12 Dec 2013, 06:58    Post subject:  

Sorry for a double post but if something is built from something else then to me its that something else.

My nimblex/slax thingy to me is still a derivative of slax/nimblex regardless of how many puppyisms get added.

My oddball puppies are still puippies...that's how they started life. (they are more puppy 2 than anything but the recent declaration of what is puppy means they are not...I will just ignore that one)

If you see another distro as a better choice then I suggest embracing that.

mike
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 2 of 4 [57 Posts]   Goto page: Previous 1, 2, 3, 4 Next
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Advanced Topics » Cutting edge
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1127s ][ Queries: 12 (0.0037s) ][ GZIP on ]