Why not use Puppy for compiling apps for Puppy?

Under development: PCMCIA, wireless, etc.
Post Reply
Message
Author
PeterSieg
Posts: 363
Joined: Wed 04 May 2005, 16:06
Location: Germany, 37603
Contact:

Why not use Puppy for compiling apps for Puppy?

#1 Post by PeterSieg »

Hi. I thought, why is another distro needed..?

To compile the kernel only a couple of tar.gz packages are needed:
gcc
glibc
linclude
binutils
make
bash
kernel sources
<...>

I used to do that for some older distro the same way (muLinux).
(I took all the required tar.gz from slakware :)

Then one would need the additional stuff for X apps.
X11 libs
gtk libs
xmkmf
<etc>

Now, that we have a full blown hard disk install...
Why not collecting all required packages for Puppy to do the job,
instead of taking another distro...?

Even if the total size of needed packages is bigger than Puppy itself -
so what..

PS
Have fun :)

User avatar
Pizzasgood
Posts: 6183
Joined: Wed 04 May 2005, 20:28
Location: Knoxville, TN, USA

#2 Post by Pizzasgood »

One problem is that some people are anti Puppy to Puppy reproduction. They think Puppies should come from full grown distros instead of young Pups. Their excuse is that Puppy needs to stay lean, but to have Puppies, it needs to get chubby. Don't they know it's what's on the inside that counts? And a chubby Puppy has a lot more on the inside. I say let Puppy have the option. Would you like it if someone told you that you can't reproduce? That someone else would have to have your children? Besides, not all Puppies would need to, and the ones that do wouldn't need to put on the pounds until ready. Then they can pupget all the weight they need. Once the new Puppy is done, the weight could be uninstalled through rigourous pupget exercises.

So, let your Puppy have fun. Let him make his own mistakes. He'll learn from them. Allow him to populate the world with unique Puppies if he so chooses.

*bursts into song*
It's my Puppy and he'll have Pups if he wants to
have Pups if he wants to
have Pups if he wants to
You'd have Pups too if a Puppy were you....
Last edited by Pizzasgood on Tue 24 May 2005, 13:31, edited 2 times in total.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#3 Post by BarryK »

yes, many of us have considered doing something like that.
An Option 2 hard drive installation would be the best contender.

Actually, I was thinking of doing the opposite...

As Vector Linux 5.0STD is looking very promising as the next compile environment for Puppy -- but can't commit yet, as still researching -- it would be feasible to "Puppify" Vector -- just overwrite vector with Puppy files.

Now, I don't know if it would work if you did a hard drive install from Puppy onto an existing vector installation .... no, it would probably have many "issues".

Hmmm, this is just off the top of my head, but I don't see why PupGet can't be installed in Vector, then we just download and install all the Pup applications.

...hmm, there's a fun project for someone :!:

User avatar
babbs
Posts: 397
Joined: Tue 10 May 2005, 06:35
Location: Tijuana, BCN, Mexico

#4 Post by babbs »

Pizzasgood - I needed that post this morning... Two hours, forty minutes to work this morning. Why? Well, it rained and everyone forgot how to drive in it...

Fat puppies can grow up to be skinny, and skinny puppies can grow up to be fat. It all depends on what they are fed. With a hard drive install, I think it would be great to be able to develop within Puppy. This would ensure kernel karma and would allow for rapid testing. I haven't tried Vector, but I'm liking what Berry has been saying. I may have to look into it.

JaDy
Posts: 159
Joined: Wed 04 May 2005, 15:59
Location: SE PA USA
Contact:

#5 Post by JaDy »

Puppy Linux is about two years old, right? Isn't that old enough for breeding? So, it's time for a development-environment DotPup. And, why the need for HD install? Why not just a swap partition (or swap file) and a 1GB PUP001? Would it be possible to have a DEV001 (similar to PUP001 and in addition to PUP001) to be the dog-house for the development-environment?
Felicitations & Facilitations, Rev. John G. Derrickson
Wrote fast. Goofs happen. Tell me.

User avatar
JohnMurga
Site Admin
Posts: 555
Joined: Wed 04 May 2005, 04:26
Location: Far to the east
Contact:

#6 Post by JohnMurga »

Hey
Hi. I thought, why is another distro needed..?
I was thinking the same ...

Time for a "fat puppy"

Watch this space

Cheers
JohnM

GuestToo
Puppy Master
Posts: 4083
Joined: Wed 04 May 2005, 18:11

#7 Post by GuestToo »

my VL is starting to look an awful lot like Puppy

a lot of my Puppy roxapps will work in VL too
if i added a /root/my-applications/bin dir and a /root/my-documents dir, a lot more would probably work

and dotpups should work in VL too ... just setup a rox file association for dotpup files

actually, scripts that reference /root should probably be using $HOME for future compatibility ... i've got X to run quite nicely as user spot ... i haven't got rxvt to work yet

if i got rxvt to work, the main problems with running Puppy as spot would be permissions ... for example, /root/my-documents, /root/my-applications, and /etc would not be writeable by spot

here's an old pic of X running as user spot ... notice the processes in kp that are owned by spot:
http://tinypic.com/2nqh4k

EarlSmith
Posts: 198
Joined: Fri 06 May 2005, 03:23
Location: Chelsea, Alabama, USA

#8 Post by EarlSmith »

Remember this:

Mission Statement

1 * Puppy will easily install to USB, Zip or hard drive media.
2 * Booting from CD, Puppy will load totally into RAM so that the CD drive is then free for other purposes.
3 * Booting from CD, Puppy can save everything back to the CD, no need for a hard drive.
4 * Booting from USB, Puppy will greatly minimise writes, to extend the life of Flash devices indefinitely.
5 * Puppy will be extremely friendly for Linux newbies.
6 * Puppy will boot up and run extraordinarily fast.
7 * Puppy will have all the applications needed for daily use.
8 * Puppy will just work, no hassles.
9 * Puppy will breath new life into old PCs

Will this still be possible with a VecPup.
These goals are the reason I as a user keep hanging around and posting stupid messages. Each one of these goals is important to someone. My best ones are numbers 8, 7, 6, 5, 9, 1.
If you are going to abandon these goals, tell me now. I'll go look somewhere else. At the moment number 8 and 5 need a little work and you guys will have a very, very good replacement for anything BG is selling.
Sorry, I probably should have posted this in the rant and rave department.
But You guys are so close...Please finish the job!!!!!

Rich
Posts: 278
Joined: Wed 04 May 2005, 19:00
Location: Middlesbrough - UK

#9 Post by Rich »

As you've been on the forum for a few weeks, you'll no doubt have noticed that things are progressing at an amazing rate. Don't abandon Puppy because it's not achieved all it set out to yet. Every update is to improve/debug/advance towards the initial goals. It's only through using it that bugs are spotted and fixed - so users and user feedback is important for the system to evolve.

I think Barry has done - and continues to do an amazing job with all his efforts. I only wish I knew half as much as he does ! 8)

EarlSmith
Posts: 198
Joined: Fri 06 May 2005, 03:23
Location: Chelsea, Alabama, USA

#10 Post by EarlSmith »

Rich, everything you say is right. I have been with Pup since sometime in the middle of last year. I have seen astounding work on the part of all the people on this forum. Barry is at the head of the pack. I just want to give a gentle reminder that they are so close to attaining all their goals.
I stopped buying Windows at 98se because it fullfilled all my needs at that time. I want Puppy to be the one that totally replaces the operating systems on my 8 computers. Some are new, some are old and each one fullfills a need in either my home, business or traveling. When Puppy meets these goals, I will replace Win98 on all of them. I do a lot of work on the Internet and write a lot of reports. Overall, very simple needs. For these needs, older, slower, cheaper machines with Puppy will do the job very well. I don't know exactly when Barry posted those goals on the web site, but when I saw them I knew I would wait until he meet them. He is just so close!!

Rich
Posts: 278
Joined: Wed 04 May 2005, 19:00
Location: Middlesbrough - UK

#11 Post by Rich »

I suppose that it's quite easy to get a bit sidetracked now and then in development, and disappear on a tangent for a while. Happens to me all the time :wink:

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#12 Post by BarryK »

EarlSmith wrote:Remember this:
If you are going to abandon these goals, tell me now. I'll go look somewhere else. At the moment number 8 and 5 need a little work and you guys will have a very, very good replacement for anything BG is selling.
Sorry, I probably should have posted this in the rant and rave department.
But You guys are so close...Please finish the job!!!!!
The goals are not forgotten.
There is a big distinction here -- we are discussing a development environment, and whether we have a VecPup or a FatPup for our compiling, won't detract from the "normal" Puppy.
In fact, it will enhance development as we will be compiling in exactly the target environment. That is, we can compile something and know it is going to work in the "normal" Puppy.

For myself, I can compile and do stuff in a distro like Vector, but I miss all my Puppy facilities, so having a VecPup (for example) will be so nice.

User avatar
babbs
Posts: 397
Joined: Tue 10 May 2005, 06:35
Location: Tijuana, BCN, Mexico

#13 Post by babbs »

Earl,

I can see what you are saying; however, much of the discussion on the topics of fat puppy and dotpups is in the development arena. Each of these discussions leads to the next .iso release of puppy. Faster, stronger and most importantly, closer to meeting each of the goals we all hold dear. For those of us a little more versed in the larger linux distros, we like the ability to expand when we see needs or to meet desires. With puppy-unleashed the ability easily expand puppy to meet individual requirements was greatly expanded. With dotpups, that capability was greatly enhanced.

Like you, I left Windows last year. In the process of doing that, I tried Knoppix, Puppy and Fedora. Knoppix helped me to get the process started. I loved Puppy, even back then, but it lacked some of what I was looking for in an OS. I ended up going with Fedora, first Core 2 and then Core 3, because of its robustness as a complete OS. With the latest advances of Puppy, I am seeing myself working towards making it my sole OS at home. Granted I'd probably lean towards the fat puppy version, but being able to provide my friends a copy of my OS on a single disk that is 8mm is a beautiful. My friends and those like them who have no idea or desire to learn what's under the hood of the OS will never need a fat puppy like me.

Like you, I love puppy. A friend of a friend of mine is my friend too.

babbs

Jesse
Posts: 466
Joined: Sun 08 May 2005, 16:07
Location: Auckland, NZ

#14 Post by Jesse »

Well, I think there is one goal left off that list, to keep puppy as a small distro.

As far as the current generally accepted programming environment goes (on any Linux platform) there is the requirement of many megabytes of files for the standard, i.e. gcc, so I dont see gcc ever being part of puppy standard iso.

I read a comment just the other day and I thought "How true" and that comment went along the lines of "trying to control a group of programmers is like trying to herd a group of cats". And I've been one of those cats for a long time now too, and I see the painful irony, programmers like doing it their way.
I don't think any programmer who has been programming for a while would want to give up on those overly bloated "standard development" tools.
If a cat is going to change its mind, it has to come to that conclusion by itself.
If there is going to ever be a standard puppy development environment, that ships as part of the puppy iso, it is going to be a small one.
I would like to propose that the bare minimum would be a compiler and a way of invoking the compiler to build a project. The two tools I think that meet this minimum are "make" and "tcc".
The binary file of make seems to be about 134kb and tcc is about 116Kb.
However the "/usr/local/include" .h files are quite sizable, plus there are many man pages.
If we can get some of the existing files reduced in size perhaps we could squeeze these files onto the iso as well?

Perhaps a good motovation for getting development tools into the puppy iso would be to say, if use of that tool can reduce the size of application(s) compiled using it, across the standard puppy application suite, by significantly more than the size of the dev tool itself, then it will be included.

The problem I had with TCC was getting enough time to get around to really giving it a go.
One really cool thing that TCC does, is combine two features, comipling very fast, and allowing a .c file to be executed after being compiled.
If that could also be combined with unzipping the .c source code before compiling and running, we could potentially reduce the applications more than using that compressed binary program.

One example .c program I wrote was 7865 bytes in a .c file. gcc compiled it to 16799 bytes with optimizations, tcc compiled it to 9896 bytes, which is already a good saving, however if I zip up the source code, it goes down to 2616 bytes, and if I zip up the tcc compiled program it is 3705 bytes, the gcc compiled program zipped up to 7518 bytes.
I realise not all programs will compress and compile to the same ratio, but for the cost/benefit of small size with time to decompress/compile, this seems to outweigh the cost of limitations of bloat.
Think of the new features that we could add to puppy, by keeping it small and adding more features and/or apps.

Yep, its just pie in the sky at the moment. Would anyone like to nominate a project that is already in puppy (and written in c) which could benefit with some size reductions? Ah, proof is in the pudding :)

Jesse

PeterSieg
Posts: 363
Joined: Wed 04 May 2005, 16:06
Location: Germany, 37603
Contact:

Compile environment vs. Standard Puppy.iso

#15 Post by PeterSieg »

Hi folks.

please don't misunderstand me here. I as well as Barry and some other deeper involved programmers/helpers of Puppy don't even think of having the big
compiling environment inside the standard puppy iso image. That would be
against the size restrictions and would probably tripple the actual iso size :)

No, it was ment to keep/stay with the small great puppy you all know and love!

The ideas is to just have some tar.gz archive files/packages, that one could
install within a standard puppy (probably only after full hdd install/or 1GB pup001) and then
have a full development environment directly within puppy! So could again
make a new puppy version (I am meaning the standard 50-60m one) out of this environment! Or just making new apps. etc. etc. :roll:

Think of having standard Puppy installed on hdd.
Then start PupGet .. and there are 3-6 ready to go packages to upgrade
Puppy with development tools.. just like upgrading it probably with a
perl package, java etc.

So the user, that just want's the standard puppy - fine. No problem at all!
The one, that want's to just try some development or even compile apps
for puppy - fine. Just get the required packages.. :)

PS
Have fun :)

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

Very interesting ideas . . .

#16 Post by Lobster »

:) Very interesting ideas guys

I was the pussy who introduced the herding cats idea (but heard it elsewhere)

Barry will decide what works best for him. As far as I am concerned the vision remains focussed. John Murga is working (as we speak) on a compile in a fat Pup (for the standard pup)

For those wanting to program in
ash
tcl
or C
there is loads to do . . .

Can not program (now would be a good time to start)
It is (strange this) a lot of fun. That is why programmers get paid for programming and then come home and program for free - LOL

Our main requirement is for a C programmer to test whether a CD is multisession or not

http://www.goosee.com/puppy/development/developer.htm


:D
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

atang1
Posts: 17
Joined: Sat 07 May 2005, 09:39

#17 Post by atang1 »

With so many good suggestions, my small voice can not be heard here on this forum.

The situation for compilation of application software is not going for VL' but stay with Mandrake(9.2 plus 2.6.11 package) full blown installation on a second computer hdd. Then put into a dot.pup repository for download as static tar.gz files.

Having the exact Linux kernels have certain compatibility advantage.

User avatar
mjg
Posts: 109
Joined: Thu 12 May 2005, 07:50
Location: Kalgoorlie, Western Australia
Contact:

#18 Post by mjg »

This has been a fairly technical discussion and I'd like to enter a general user perspective:

Puppy is great because it's small.

Puppy has got better because you can now add extra programs easily.

Keep on that path.

Post Reply