5 years

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

with great power comes great responsibility

#41 Post by 01micko »

Who'd be a developer?

I can sympathise with both of you, puppyluver, jpeps.

Jay, I know the amount of time it takes to learn, then develop stuff. It can be detrimental to certain things therefore balance is needed. There is a fine line between "hobby" and "addiction". No need to drum that in I guess!

I started out with eye candy in pwidgets. I wrote some terrible code. Learned from that and now my code isn't so terrible, not saying it's good but it is a lot simpler and doesn't try to exceed my capabilities. That boundary is gradually pushed up. As for eye candy now, I generally steer clear of it in my personal setups. Sure I, supply compiz for slacko (sfs, with bold warnings) and that is directly based on dinky's work, you mention in the OP.

jpeps, I can fully understand your point. Especially since we can't be fully sure what puppy any application was developed on or for. These days, there are many library incompatibilities between versions. While diversity is great it has a price. I just wonder if we could make a new kind of "sandbox" type thing, say a ~32~64M disposable savefile mounted on top of the existing save file, it may well be possible with the layered filesystem, bit beyond me though. Still, that would be useless to the many who prefer "full" installs.

RSH, as for libs and symlinks, don't hold your breath for your wish! It's a complex eco-system that I don't fully understand, but I believe that it's to do with different versions of libs needing some common ground, if that makes sense. Often development of versions proceeds at great speed, take firefox for example and it's libs, nspr, nss etc. Sometimes backward compatibility is preserved, other times not, ffmpeg is a classic example of not!

I agree that it is way too easy for anyone to create a pet. I'm guilty of distributing rubbish pets, no data loss ones that I know of but I do know of better coders than me that have released pets that have wiped entire partitions. We use at own risk.

One criticism I have of Puppy as a learning environment for Linux is the lack of multiuser support. It breeds bad habits, such as hard coding to root. I try to avoid this but sometimes it's not always possible. If not then I comment that code block. That is just a personal opinion, not on Puppy running as root, but as a general learning tool for Linux,
Puppy Linux Blog - contact me for access

bark_bark_bark
Posts: 1885
Joined: Tue 05 Jun 2012, 12:17
Location: Wisconsin USA

Re: with great power comes great responsibility

#42 Post by bark_bark_bark »

01micko wrote:...One criticism I have of Puppy as a learning environment for Linux is the lack of multiuser support. It breeds bad habits, such as hard coding to root. I try to avoid this but sometimes it's not always possible. If not then I comment that code block. That is just a personal opinion, not on Puppy running as root, but as a general learning tool for Linux,
Agreed using root for everyday use is a bad habit that is formed by puppy. Also having multiuser definitely would save hard drive space and time.

-Hard Drive space would be saved because less save files would have to be made. (no-multiuser=1 save for each user, multiuser=1 save for ALL users)
-Time would be saved because you don't have to go bot in RAM mode and configure it for the new user and wait for the save to be created and all that.

Also as I said ALWAYS being root is a bad habit to form, espically if you visit a lot of websites and have a lot of spam on your email. root + web/email = HUGE security risks.
....

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

Re: with great power comes great responsibility

#43 Post by 01micko »

bark_bark_bark wrote:
01micko wrote:...One criticism I have of Puppy as a learning environment for Linux is the lack of multiuser support. It breeds bad habits, such as hard coding to root. I try to avoid this but sometimes it's not always possible. If not then I comment that code block. That is just a personal opinion, not on Puppy running as root, but as a general learning tool for Linux,
Agreed using root for everyday use is a bad habit that is formed by puppy. Also having multiuser definitely would save hard drive space and time
Ah... be careful here, it's not our place to start this silly debate again. As you see I chose my words with care. Puppy runs as root by design. I'm only saying that it can cause bad habits for novice developers.

There are other threads devoted to user v root around the forums, that is where your discussion belongs. No offence intended.
Puppy Linux Blog - contact me for access

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#44 Post by greengeek »

Happy pupthday puppyluvr! Reading your list of accomplishments is an inspiration to keep on learning and fiddling.

And many happy returns to all the devs and assorted other helpers....

bark_bark_bark
Posts: 1885
Joined: Tue 05 Jun 2012, 12:17
Location: Wisconsin USA

#45 Post by bark_bark_bark »

sorry if my above post offended anyone, that wasn't my intensions.
....

User avatar
puppyluvr
Posts: 3470
Joined: Sun 06 Jan 2008, 23:14
Location: Chickasha Oklahoma
Contact:

#46 Post by puppyluvr »

:D Hello,
Many interesting points here..
jpeps,
I agree that it is too easy for anyone to make and release a pet.
And while I do test to death anything I release, I am surely not a 'guru'.
I have gone back and found major flaws in things that, with my limited skill at the time, I thought were fine.. (Nothing that would wipe a partition, thank God, but still flawed.) But that is how I learn, from my mistakes.. :wink:
As a musician, I learned that everyone makes mistakes, its how we recover from, and learn from them, that sets one apart..
RSH,
What you describe is a modular self inclusive system. Like Tinycore, which I also like a lot.. However, my attempts to build Puppy from TC taught me a few things.. I was successful at building a Pup from TC packages, however, it was rather basic, and still weighed in at around 370mb.. The point of symlinks, as I see it, is to avoid having the same libs in several different places at the same time. However, I agree that some housekeeping is definitely in order, as it has turned, in some Pups, into a 'spaghetti nightmare' of cross linked libs, and links to libs that simply are not there..
I never realized that till I tried to build an Archpup.. Since there was no blueprint, no example to go by, I started from scratch, and quickly found that Puppy symlinks damn near everything.. (IE busybox). Maybe a standardized set of base libs between Pups would help, IDK..
I stand here a relative novice amongst masters. My 'skill set' doesnt compare to most of you, and I have always been fully aware of that.
That is why I have 17 frugal installs to test on, hoping to cover all the bases.. But my lack of knowledge has led me to some unique answers, although maybe not the 'best' answers.. (IE my use of 'filemnt' in MultiPup which other, smarter coders have provided an improved fix for.)
bark_bark_bark,
We are all friends here, hence the jabs.. We all have a common goal, but maybe different ideas on the road there.. Hell, Ive gotten in a lot deeper than this on many occasions.. But I can admit I am just a hack.. :P
So I normally dont let it get to me.. I am a midget amongst giants.. :wink:
Even I am surprised that I got offended for a minute.. :oops: We speak freely here, and that can sometimes be abrasive. But you would have to really try hard to truly offend in this forum.. (IE Ecomoney is still here... :P)
I think Micko`s point was that beating that dead horse will open up doors we cannot close.. I personally cannot run as anything but root, and yes, it is Puppy`s fault.. But I find the task of elevating oneself to superuser, or SU/SUDO, to be so easy as to render the user/superuser debate invalid..
So, as my Aussie friends might say, its all good mate..
jpeps,
Perhaps a pet testing sandbox before release? A thread to post them to, for the 'guru`s' to test first, before they are allowed into the general forum?
I can think of a few I have tried that did some damage, IE a GUI for wbar that overwrote my xinitrc, addending every line.. And maybe a way for the pet spec file to specify which pups the pet has been tested on, as many things will work, for example on Lupu that wont work on Slacko, IE, my MultiPup...

Certainly Puppy has some inherent flaws, because it is unlike any other Linux distro out there, and being cutting edge sometimes means being 'non-compliant'. Also, there is a constant struggle between being Dev friendly, and being User friendly.. Not to mention that many here struggle between being Users and being Dev`s... Maybe it is good to be easy to make a pet, but should be a bit harder to release to the public..

I was at first thrown by the turn my thread had taken, but now I am glad to see it is sparking ideas that may serve the community in general..
Please continue... :)
Close the Windows, and open your eyes, to a whole new world
I am Lead Dog of the
Puppy Linux Users Group on Facebook
Join us!

Puppy since 2.15CE...

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

#47 Post by sunburnt »

BusyBox uses links to access the exec. code inside it.
Barry has to replace some of the links as they don`t work,
this is because BusyBox was not compiled with-for Puppy.

I`ve always thought that there`s no point in using BusyBox for a
Squash file based O.S. like Puppy, it has a useful purpose in a full-install.

gcmartin

#48 Post by gcmartin »

This thread is tit'd "5 years". Some of us have been here that long while others have not.

Even then, some of us understand its history, both in and out of the forum; others do not.

There has been much progress and lots of good innovative things have surfaced through the discussion that we have raised in the community. It has expanded everyone involved in those discussion to greater levels of understanding.

WE have much ground to cover in 2013, so lets begin by not missing the forest for the trees.

Here to help

jpeps
Posts: 3179
Joined: Sat 31 May 2008, 19:00

#49 Post by jpeps »

puppyluvr wrote::
Perhaps a pet testing sandbox before release? A thread to post them to, for the 'guru`s' to test first, before they are allowed into the general forum?
It's too easy to go that route, and my experience says that's NOT the way to go. Sure, life offers risks, but the more freedom the better...it's what inspires learning. I think that's what the phrase "if you meet the Buddha, kill him" was getting at. I believe I still have a little chess app over in testing at DSL......

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#50 Post by greengeek »

puppyluvr wrote:I was successful at building a Pup from TC packages, however, it was rather basic, and still weighed in at around 370mb..
Is the overall size of a puppy a problem though? Yes if you want it all in memory at once (and don't have much ram), but not a problem if you only want a small number of modules in ram at any one time surely?

I'm trying to achieve a lightweight puppy that has a small ram footprint, but the ability to load "units" or "modules" into ram one by one, and each module then removed when the job is done.

How well did your TC run? Was it able to load into a machine with low ram? Or was it choked by it's overall size?

I'd be happy to remove any network related modules from ram in order to be able to run a word processor at reasonable speed, and then kill the word proc and reload the network modules if and when I needed them. On my low power machines I don't necessarily need a puppy that multiprocesses. One job at a time would be fine.

Was TC better than puppy at that?

gcmartin

#51 Post by gcmartin »

greengeek wrote: ... I'd be happy to remove any network related modules from ram in order to be able to run a word processor at reasonable speed, and then kill the word proc and reload the network modules if and when I needed them. ...
The Unix/Linux architecture is a multi-processing architecture that is architected to handle hi-load ("RAM shortage") situations.

This type architecture has been generally in place for over 50 years. The Linux model works. Should there be enough RAM-Swap-Page present, this situation is usually handled very well....depending of course, which OS and its distro is running. "Very Well" means that it works, not that the user performance is always acceptable for should the system bump against some limitaion, the hardware may not be able to give what the user may desire above what one might consider normal.

For example, since Win2K, the system development model and kernel generation is the same in MS. But, for those who have had a opportunity to review, there is a "marked" difference in say running WinXP with simultaneous users in a single PC (this can easily be done, BTW) versus compared with running Win2003 with the same number of simultaneous users. The desktop responsiveness for each user and the overall system numbers shows that Win2003 far exceeds what is seen on WinXP. In investigation, it turns out that the kernel was gen'd with some parameters which facilitated greater system behavior for the multiple users, than is gotten via a WinXP set up to allow multiple users.

I say this to point to how server performance differs from desktop performance. Its in the kernel(s).

Apple, when Steve Jobs returned from his NEXT system, began OSX development by creating several differing models for porting to the several Apple architectures. This is one of the reasons why their xPhone/xPad do not compare with what is seen in Google's version, even though, each is using Unix-Linux OS. Further, those version again differ from what is seen in desktops. Which even differ again by performance numbers from servers for the same workloads.

To limit Linux tasks management requires kernel manipulation. And, like Apple, it can be done. Further, it may also need system dispatcher process changes as well.

But, the general purpose model(s) that we use, are probably a better way to go for our future, versus, trying to retrofit current technology to our past.

Just one idea. And, I am aware that it is NOT universally shared. But, look around at what the vendors are doing, and it can give some insights to where ...

Here to help
P.S. RAM is still cheap and landfills continue to mount from discards with RAM

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

#52 Post by sunburnt »

greengeek; It was me talking about my Tiny Core mod.
TC`s core base O.S. is very small, about 12 MB in size, easy to load to ram.
TC has only vt, editor, and a few other utilities in it`s core ( my thoughts ).

I`d say start with a stripped Puppy, anyone of them will work for a test bed.
Once it`s working like you want then strip a Puppy like Precise and mod it.
My hard part was getting Puppy to boot with no union and other things.
Tiny Core as it is, is already close to the O.S. you`re wanting ( easy mod.).

As I said, many folks have thought and talked of a minimal O.S. like this.


gcmartin`s correct, there`s just no replacement for having enough ram.

A swap ( file or partition ) is just a stop-gap measure for not enough ram.
It slows the PC down and ( like a union ) is just an unneeded complexity.

If you PC has at least 1GB, better 2GB or 4GB, then it doesn`t need a swap,
unless you`re a "power user" that opens 10 or more apps at a time.
Then just make sure your PC has at least 4GB or more of ram ( no swap ).

jpeps
Posts: 3179
Joined: Sat 31 May 2008, 19:00

#53 Post by jpeps »

sunburnt wrote: If you PC has at least 1GB, better 2GB or 4GB, then it doesn`t need a swap,
unless you`re a "power user" that opens 10 or more apps at a time.
Then just make sure your PC has at least 4GB or more of ram ( no swap ).
Programs like Open Office use a lot of RAM to initialize, so a swap file will grab it and free up the RAM for other usage. My laptop has 1 gig of Ram, and if I load OO, I notice 216 K goes right into swap. If I'm using several programs, run a video, load a java app, etc., etc., swap could make a big difference, at least for for a system with 2Gigs or less..but more if you use programs that eat ram. I set my swappiness at 10. Since writing this sentence, my swap is up to 260. Then I load a YouTube video..it's up to 312...

nancy reagan
Posts: 544
Joined: Thu 22 Jan 2009, 14:20

#54 Post by nancy reagan »

If you set boot options to "nocopy" that might save ram ?

And in the newer pups you can disable a lot by "removing preinstalled packages". Not that they are physically removed, but they do not load ?

User avatar
puppyluvr
Posts: 3470
Joined: Sun 06 Jan 2008, 23:14
Location: Chickasha Oklahoma
Contact:

#55 Post by puppyluvr »

:D Hello,
OK, my machine has 2gb of ram/ 1gb of swap...
With Firefox with 2 tabs on one desktop, Mtpaint and Rox on another, and the CCSM and Emerald manager on the third, with Compiz and Cairo-dock running with GL and composite enabled..

total used free shared buffers
Mem: 2004704 814224 1190480 0 52572
Swap: 1052252 0 1052252
Total: 3056956 814224 2242732
#

Swap seems an outdated idea, for the 512mb days, serving older machines.. Why, looking above, would I even need a slow HDD clone of Ram???
Puppies of the Wary type, minimal ram stuff, for a specific era of machine, sure.. But with the average 2 year old machine having 2gb, and new ones 4 to 6, it seems useless..

Am I missing something?
Close the Windows, and open your eyes, to a whole new world
I am Lead Dog of the
Puppy Linux Users Group on Facebook
Join us!

Puppy since 2.15CE...

jpeps
Posts: 3179
Joined: Sat 31 May 2008, 19:00

#56 Post by jpeps »

puppyluvr wrote::

Am I missing something?
yes

User avatar
puppyluvr
Posts: 3470
Joined: Sun 06 Jan 2008, 23:14
Location: Chickasha Oklahoma
Contact:

#57 Post by puppyluvr »

:D Hello,
Please elaborate?
I`m seriously curious...
Close the Windows, and open your eyes, to a whole new world
I am Lead Dog of the
Puppy Linux Users Group on Facebook
Join us!

Puppy since 2.15CE...

User avatar
NeroVance
Posts: 201
Joined: Wed 10 Oct 2012, 23:00
Location: Halifax, Canada

#58 Post by NeroVance »

I might be a new guy, but I was born into a trial by fire in linux and Puppy around 5 years ago, I've been on and off for the most part, and was away from the kennels for a long while, but I felt it was time to return, as a new man. I think I remember you from back then puppyluvr.

I can't say much more than that on my past, but over just a few years, my eyes opened to much, and became far more knowledgable of the world. This old dog was once an enthusiastic but somewhat inarticulate puppy, but now you could say I've become weary from battle, but have retired back to the kennels, see what this old timer can still do.

Metaphorically speaking of course, as I can't be that old, and be 19. I'm even doing college for programming.

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#59 Post by greengeek »

gcmartin wrote: RAM is still cheap and landfills continue to mount from discards with RAM
The problem is that some of my machines max out at 192MB ram,and I don't want to just chuck the machines away just to buy another one with more ram. If I can run a decent word processor that's all I need to do on those machines.

I really just want to run the core of "puppy 0.9 unleashed" (which was my first trial of puppy), and modify it with the addition of an sfs loader.

gcmartin

#60 Post by gcmartin »

puppyluvr wrote: ... Please elaborate? ...
I think he is referring to what happens when a system saturates RAM and has no room to expand.

This has for 50 years been a known disaster point. Further, there is some feeling that the system's behavior is somehow compromised when its managing tasks and SWAP happens to be available. From a proven test model, the internal system design of preemptive systems have shown this to not be true in general purpose machines.

I think there is enough information that is taught in most IT curriculum to validate how these models actually work. I understand how one could envision the RAM only approach as all that is needed, but, there are all kinds of other reasons that this is not necessarily a good approach.

Race conditions, out of control bufferings, bad programming, point-in-time application needs, ....

What one could look at is muchly published.

In the Android world, the vendors have chosen that model specific to public use controls. It is purposely limited.

Hope this just gives some insights that we provide understanding.

But, to be fair, ideally, to run any system, swap-page is NOT required no more so than the top of a car is required to drive it. ( I do recognize that our world is not perfect.)
greengeek wrote: ... The problem is that some of my machines max out at 192MB ram,and I don't want to just chuck the machines away just to buy another one with more ram. If I can run a decent word processor that's all I need to do on those machines. ...
Many people in this forum will agree, I think, with my following note.

I have NOT SEEN a machine in the past 14 years where I could not add RAM beyond the manufacturer's spec. This does NOT mean that you may have one that cannot be expand pass 192MB, It just that I and many of my colleagues have found that we have routinely been able to. Try it, you may be pleasantly surprised.

And, have you investigated the possibility that someone somewhere in your community is throwing out an old computer that is newer and better equipped. If its a money thing, appeal and maybe someone of us with old PCs can work with you to help you along.

Using the car again, as an example, "why drive a car with worn out tires, when there may be a car sitting around that is newer with good tires available for the taking?"

Most of the PUPs over the last 2 years that I am aware of are indicating the size PC that they were designated and tested to run on. Most of the developers have been posting on this.

There are many PUPs designed before the modern PUPs (32bit V5+) came along that were designed with less than 256MB in mind. Are you trying to share that you are using 192MB PC on PUPs designed for 512MB and larger PCs? If you have some problems finding old PUPs for the 192MB PC you have, let me know and I will send you several of the older ISO of older PUPs which were designed for your PC.

Here to help
Last edited by gcmartin on Fri 11 Jan 2013, 05:40, edited 4 times in total.

Post Reply