PET packages in path with spaces
August 19, 2009 —
BarryK
I discourage Puppy Linux users from having folders with space characters, as it breaks some scripts.
Anyway, it was reported recently that the Puppy Package Manager fails to install PET packages if they are in a folder with space characters.
As far as I can see, this problem only happens when a PET package is clicked on in ROX-Filer. Rox runs the 'petget' script to install the package.
I found a line in the script that would cause a failure if the path has a space, and fixed it.
Argh, I also see /root/Choices/MIME-types/application_pet has this in it:
#!/bin/sh
exec petget "$1"
...that will have to become "$@".
...ok, I will also change that, and will have to upgrade the rox package.
NO it's ok, I just checked. It doesn't matter if a path has spaces, Rox passes it in quotes as parameter one, that is, "$1".
Comments
ReplyA better way?
Username: PaulBx1
"This seems to leave us in limbo. Wouldn't it be better to: 1) Treat the existence of spaces as a bug, and provide some utility, perhaps invoked at initial boot or "pfix=ram", that scans for any such directories and informs the user they must be renamed to work with Puppy; or 2) Tolerate the existence of spaces, and test/fix all scripts that choke on them. I don't know the implications; for example, if we go with 1 above does that cause problems when installing applications from other distros?
space bug is in some but not all versions
Username: Sit Heel Speak
"lol ...the reason I thought the bug entered in 4.22, was that I only started developing pets in 4.20. I just tried 4.12 and see that it too has the space bug. But 4.20 doesn't; here is a screencap, in 4.20 I have just successfully installed the Linux Libertine font by clicking in rox on the icon of a pet which resides in '/mnt/sdh1/Ready to Pet' http://i29.tinypic.com/o6he2v.png
blanks
Username: Greg
"The machine is designed to make life easier for the operator - user. My students used to go bonkers with all the error checking I made them perform. But you don't want a production program to blow up in the middle of the night and have to go in to fix it. What I am saying if it is possible to display a very descriptive error message or bypass such an error as blanks in the name.. it is the responsibility of the programmer to do the best he/she can. I used quite a few pets.....a few weeks ago I created a directory on another computer, moved the directory to a stick... tried to run the pet several times.. it blew up... message did not tell me why..it just did not load the pet... kind of died, disappeared, vanished.... Finally someone said something about spaces.. AH... the light came on... but I have many years of experience...and understood the implications. NEW folks will not understand. To them it simply did not work.
Barry, really now...
Username: Sit Heel Speak
"Speaking as one who earned a perfect 800 score on the Math section of the 1972 high-school Scholastic Aptitude Test (SAT) (this was in the era, mind you, before they dumbed it down so everyone could pass)...and a 770 on the Verbal section (I still believe the answer-book was wrong, on the one question I missed)...and who earned a perfect 4.0 GPA from the 9-month course in Database Programming for Business Applications at the ITT Technical Institute, Seattle, thirteen years later, in 1985...I totally concur with Greg. There is no excuse for the error which Pizzasgood rectified, creeping back into Puppy in 4.22. Shame on you, Professor Kauler!--where is your sense of *craftsmanship*??? (he says, still not being able to comprehend the right-quote usage in sed...) (and reaching for another glass of Cabernet Sauvignon...)
4.2.1 and beyond
Username: ICPUG
"Re Pizzasgood's comment I wonder how many more things that were corrected/improved in 4.2.1 have been lost in 4.3 because it was started from the wrong base (4.1.2)?
pet bug
Username: ttuuxxx
"Listen here Sit Heel Speak, there is no need to shame Barry because a bug is back that vanished in 4.2, Barry was in retirement mode durring 4.2, He also was building all those ingenious woof scripts, there was no way for him to manage to accomplish what he did with woof and stay on top of 4.2, he wasn't the leader. If anything there should of been a summary in the end describing all the fixes/updates, but we are talking about well over 100 pages and nobody did do that, there was release notes, but not as detailed as they could be, well for that of to even come close to working each developer/packager should of made notes. But that would of really dragged the release schedule back. 4.3 isn't 4.2 plus it has a lot of backend updates that we all should be thankful for. Barry does a spot on job and should never take any heat for not including patches/fixes from 4.2, maybe why don't you go and recap all those pages and threads, etc. lol you should be done around Christmas, lol ttuuxxx
Circumspection
Username: dogone
"Let's all please remember that this is Barry's blog - not the Puppy forum. The blog is a vehicle for exchanges with Barry, not about him. And exchanges which to not contribute the the cause at hand do not help it. Hey, I know everyone means well. Let's just stay on purpose. Puppy need polish, not corrosive agents. (And Barry needs caffeine.)
OK, I give. Or, I _would_ give, if...
Username: Sit Heel Speak
"Oh all right. To keep the peace I have tried deleting the offending message. But the delete util asks for my password, and when I give it, tells me it is the "wrong password," so I guess I will remain the nail that sticks up. btw the word "deleting" is misspelled in the delete util.
"Wrong base"
Username: BarryK
"ICPUG has made this comment before. I did not start with the "wrong base". It was very carefully considered. There were so many small changes between 412 and 421, many of them I already knew I didn't like, many I didn't know about. I decided, better to start with what I'm very familiar with and study 421 and port in whatever I want -- which is what I did. Another point is that I did [i]not[/i] start with 412 as the base -- the Woof build system has in many ways evolved far beyond 421, the package manager for example. 'petget' is a total rewrite, so the comment about using 421 as a base using that particular example is a totally invalid point. In that case, as in some others, I am relying on 4.3beta testers to tell me, hey 421 did this or that better, and I'll check it out. A cursor-changer is one recent example, I was reminded that 421 has it and it would be good for 4.3 -- so I'll probably sneak that in.
Tags: woof