dpupmaker.sh v1.9 -- compiles source tarballs into Dotpups

Stuff that has yet to be sorted into a category.
Message
Author
User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

dpupmaker.sh v1.9 -- compiles source tarballs into Dotpups

#1 Post by jmarsden »

Attached (gzipped) is dpupmaker.sh, a fairly complex (bash) shell script.

Running it with no arguments will display a basic usage message.

The idea is to take advantage of the commonly used GNU autotools approach to building software, which results in many source tarballs containing a usable configure script, which generates a Makefile with standard well known targets.

So you can grab most free/open source tarballs (.tar, .tar.gz or .tar.bz2 archives are all suported) and run dpupmaker.sh against them, and the result will in many cases be a fully working dotpup that:
  • Always installs under /usr/local
  • Registers itself with the Pupget package manager
  • Computes its own size during the build so that size information is added to /root/.packages/alienpackages.txt
  • Accepts optional parameters for the info string to register with PupGet, and the group or category of software to register as.
  • Has a corresponding "source dotpup" (new in 1.6)
Comments, reports that it works for you (or doesn't work for you!), suggestions for enhancement, etc. are all welcome.

BTW: One way to generate lots of dotpups at about one per minute is:

Code: Select all

  ./dpupmaker.sh bison-2.1.tar.gz "The GNU Project parser generator - a yacc replacement"
  ./dpupmaker.sh coreutils-5.93.tar.gz "Core GNU text, find and shell manipulation tools"
  ./dpupmaker.sh diffutils-2.8.tar.gz "GNU diff, diff3, sdiff, and cmp utilities"
  ./dpupmaker.sh flex-2.5.31.tar.gz "GNU Fast Lexical Analyzer Generator"
  ./dpupmaker.sh gnuchess-5.07.tar.gz "A computer program which plays the Game of Chess"
  ./dpupmaker.sh joe-3.3.tar.gz "Joe's Own Editor, A Free ASCII-Text Screen Editor"
  ./dpupmaker.sh less-394.tar.gz "A terminal based program for viewing text files"
  ./dpupmaker.sh nano-1.2.5.tar.gz "An enhanced clone of the Pico text editor"
  ./dpupmaker.sh ruby-1.8.4.tar.gz "Ruby, an object-oriented language for quick and easy programming"
I hope this provides an idea on how to use it :-)

The usage info it displays when run with no parameters is currently:

Code: Select all

dpupmaker.sh version 1.6
dpupmaker.sh: Usage is dpupmaker.sh TARBALLFILE [ INFO [ PUPGETINFO [CONFIGOPTS ] ] ]

Where TARBALLFILE is the path to a source tarball such as joe-3.3.tar.gz
      INFO        is a short optional description of the software
      PUPGETINFO  is the group of the software, default is CONSAPPS
      CONFIGOPTS  is a string containing options to the configure,
                  default is --prefix=/usr/local
Jonathan

04 March 2006 -- updated to v1.9
Attachments
dpupmaker.sh.gz
Bash shell script to compile apps from source and generate dotpup packages from them automatically.
(3.16 KiB) Downloaded 1314 times
Last edited by jmarsden on Sat 04 Mar 2006, 22:08, edited 3 times in total.

User avatar
klhrevolutionist
Posts: 1121
Joined: Wed 08 Jun 2005, 10:09

nice

#2 Post by klhrevolutionist »

Could we make it include these commands ?

--enable-fast-install , strip , and --prefix=/usr/local/


If these three commands could be included this would greatly enchance this script. I will try it once some feedback is brought to the subject.
Last edited by klhrevolutionist on Mon 02 Jan 2006, 23:30, edited 1 time in total.
Heaven is on the way, until then let's get the truth out!

Guest

#3 Post by Guest »

klhrevolutionist wrote:Could we not make it include these commands ?

--enable-fast-install , strip , and --prefix=/usr/local/
It already does ./configure --prefix=/usr/local by default.
Are we sure that all (or nearly all) ./configure scripts will happily accept the other two options you suggest?

One possibility may be to allow for a parameter to let the user specify any "extra" configure options they need, that would be trivial to add. Would that satisfy your request?

I am also looking at checking for the existence of a file called something like "joe-3.3.fixup" (where joe-3.3 is the name of the tarball being compiled), that, if present in the same dir as the tarball, will be run as a script instead of the ./configure and make commands. The idea is to allow for doing any "fixup" of the Makefile(s) and build process that is unique to the particular tarball, before doing the make install.

For example, some apps will not let you run ./configure as root (rcs-5.7.tar is one example). So in this case, the rcs-5.7.fixup script could copy the unpacked tarball dir under a non-root user's home dir (such as ~spot/) and then su to that user and run the ./configure command as spot, then cp (or mv) the resulting configured source tree back to under ~root/ and then let things continue.

BTW the forum system seems to be behaving oddly for me this morning, often returning blank pages, needing repeated clicks on the Refresh button in the browser before I see anything... anyone know if that is a local issue here (posting from work!) or an issue at the forum server?

Jonathan

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

#4 Post by BarryK »

Jonathan,
Wow, that's a very ambitious project that you've tackled!
Congrats!

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

#5 Post by jmarsden »

BarryK wrote:Jonathan,
Wow, that's a very ambitious project that you've tackled!
Congrats!
Grin! Thanks. Not too bad for something created on my second day with Puppy :-)

To be fair, I've been using Linux at home and at work since late 1992 (the MCC distribution, which came on two floppies -- two 720K floppies, I think it was!)... so I have more experience than many with this OS. I've built custom distros for clients (long ago, based on Red Hat 6.x), done some network security consulting, managed international networks of Linux servers... overall, I'm a fairly serious Linux sysadmin/netadmin geek.

I just noticed the generally Puppy flavour of "make things easy", and it seemed that compiling apps into DotPups wasn't all that easy, despite the simple package format -- hence the project. It took most of a day, more or less, to get to where it is now.

Assuming I stick around in the Puppy community, I'd like to talk with you about some other things too, including making Puppy 100% self-hosting and providing full source code. I'd be very interested in a status report on how close to that Puppy already is, and what obstacles (if any) remain in that regard.

And... on that front... when will puppy-sourcerer-1.0.7.tar.gz be released? :wink:

Or, does the Puppy project have its own (or *your* own!) "wish list" of enhancements and potential sub-projects somewhere that I should read, to see if I want to tackle anything on the list?

Jonathan

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

Re: nice

#6 Post by jmarsden »

klhrevolutionist wrote:Could we make it include these commands ?

--enable-fast-install , strip , and --prefix=/usr/local/

If these three commands could be included this would greatly enchance this script. I will try it once some feedback is brought to the subject.
Neither --enable-fast-install nor --strip seem to be generally available options to the ./configure script. Which tarballs are you seeing these options in? What exactly does --enable-fast-install really do?

Meanwhile, here is a quick patch (in unified diff format) to add the ability to supply your own parameters to the ./configure command:

Code: Select all

--- dpupmaker.sh.orig   Mon Jan  2 15:28:42 2006
+++ dpupmaker.sh        Mon Jan  2 15:38:32 2006
@@ -46,11 +46,13 @@

 function usage() {
   [ -n "$1" ] && echo "$PROGNAME: Error: $1" 1>&2 && exit 1
-  echo "$PROGNAME: Usage is $PROGNAME TARBALLFILE [ INFO [ PUPGETINFO ] ]" 1>&2
+  echo "$PROGNAME: Usage is $PROGNAME TARBALLFILE [ INFO [ PUPGETINFO [CONFIGOPTS ] ] ]" 1>&2
   echo "" 1>&2
   echo "Where TARBALLFILE is the path to a source tarball such as joe-3.3.tar.gz" 1>&2
   echo "      INFO        is a short optional description of the software" 1>&2
   echo "      PUPGETINFO  is the group of the software, default is CONSAPPS" 1>&2
+  echo "      CONFIGOPTS  is a string containing options to the configure," 1>&2
+  echo "                  default is --prefix=/usr/local" 1>&2
   exit 1
 }

@@ -82,7 +84,7 @@

 # Build the application
 make distclean
-./configure --prefix=/usr/local
+./configure ${4:-"--prefix=/usr/local"}
 make || usage "Unable to build application $TB"

 # Note current time
I hope the Wiki doesn't mess display of that up too badly. As you can see, it is a one line change to the working code, plus edits to the usage info. I expect to add this patch and release an updated dpupmaker.sh later today, God willing.

Let me know if this patch makes dpupmaker.sh useful to you -- and if not, please explain what you are looking for in more detail, or provide an appropriate example for me, or both.

Jonathan

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

#7 Post by Lobster »

jmarsden wrote:
Or, does the Puppy project have its own (or *your* own!) "wish list" of enhancements and potential sub-projects somewhere that I should read, to see if I want to tackle anything on the list?

Jonathan
Hi Jonathan

Welcome to the Kennels
Happy New Puppy . . . eh Year . . .

Projects list from Barry
http://www.pupweb.org/puppy/development/developer.htm

also keep an eye on this page
http://www.pupweb.org/puppy/news.htm


Lobster list:
  • simplified file structure (invisible links? - not even sure
    how this can be done - there are Linuxs that tackle this issue
    The file chunnel - basically a program that you click and drag a file into and it places into the simplified structure above
    Puppy XUL program - the Puppy toolbar. I think XUL is the ideal way to increase Puppys usability with min size and it seems to have far more potential than the Ajax hype (even though I like Ajax/web 2 progs). What is your understanding?
    Puppy On line - store key settings or even whole pup001 on server
    Puppy fax program (this might be on its way?)
    Puppy database (Ian has just posted on SQlite - so may be done)
    Dogbone done by a pro (I was hoping to work with a real programmer on this project - peer programming) it is basically a communication center
    http://www.murga.org/%7Epuppy/viewtopic ... 5274#15274
    Puppy jabber client (set up and ready to go instant message center (at the moment we have #puppylinux on IRC) - built in more people would use)
    http://puppylinux.org/wikka/PuppyLinuxIRC
    Speak Puppy - Voice recognition - OK that would be a large dotpup or .sfs unleashed package
    Puppy Speex voice mail - really what I was hoping for with Dogbone . . .
    Puppy tinycc front end Jesse Lily was working on this - not sure what status is
    http://puppylinux.org/wikka/TinyCc
Hope you are inspired to try something :)
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

xlock password issue - where is the source code?

#8 Post by jmarsden »

Lobster wrote:Projects list from Barry
http://www.pupweb.org/puppy/development/developer.htm

also keep an eye on this page
http://www.pupweb.org/puppy/news.htm
...
Hope you are inspired to try something :)
I thought I'd look at BarryK's 29-Dec-05 xlock password issue. Then I realized... I have no way to get the source code for his xlockmore-5.20.1patched package. So I'm stuck on that one!

This reinforces my desire to just "go for it" and work on making Puppy be 100% self-hosting (so one can build all parts of the base Puppy from source, using Puppy itself). That way we will also (more or less as a side-effect!) have to have all the source code for every part of Puppy available, so full source can be released, which both (a) meets GPL requirements better and (b) allows interested parties to make changes and fix bugs like the xlock one!
Lobster list:
simplified file structure (invisible links? - not even sure
how this can be done - there are Linuxs that tackle this issue
The file chunnel - basically a program that you click and drag a file into and it places into the simplified structure above
Can you provide a better idea of how this might work or what the point of it is? Do you have a web page or Wiki page describing this somewhere?
Puppy XUL program - the Puppy toolbar. I think XUL is the ideal way to increase Puppys usability with min size and it seems to have far more potential than the Ajax hype (even though I like Ajax/web 2 progs). What is your understanding?
I'm not sure why Puppy needs a toolbar done in XUL? Most WMs have a toolbar... what would an XUL one unique to Puppy do that would improve user experience?

My understanding is that XUL is mainly for local apps using the Mozilla codebase, AJAX is for web apps that have a responsive and featureful UI but which are hosted on some sort of web server/app server. So I'm not sure they are competing approaches, are they?
Puppy On line - store key settings or even whole pup001 on server
I like this idea. Just needs a decent secure network file system in the kernel, probably. sshfs (via FUSE) would be a good candidate. See http://tips.linux.com/article.pl?sid=05 ... 06&tid=100 for a gentle introduction.
Puppy fax program (this might be on its way?)
efax, hylafax, mgetty+sendfax ... several options exist. Should be a fairly straightforward thing to compile one or more of these for Puppy.
Dogbone done by a pro (I was hoping to work with a real programmer on this project - peer programming) it is basically a communication center
http://www.murga.org/%7Epuppy/viewtopic ... 5274#15274
I suggest documenting what is is supposed to do -- a clear specification -- before implementing it. The thread has pictures but no link to design docs that I can see... ?
Puppy jabber client (set up and ready to go instant message center (at the moment we have #puppylinux on IRC) - built in more people would use)
http://puppylinux.org/wikka/PuppyLinuxIRC
GAIM already is a Jabber client... so what exactly are you proposing here? Specs, design docs, prototypes... help me (and others) understand what this would do for Puppy users.
Puppy Speex voice mail - really what I was hoping for with Dogbone . . .
Again can you define "voice mail" better (provide a link if you already did elsewhere!). Are we talking about an Asterisk style network PBX inside Puppy? See http://www.asterisk.org . Or what exactly are you looking for with this project?

Jonathan

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

Updated dpupmaker.sh - adds extra param for ./configure opts

#9 Post by jmarsden »

Here is an updated dpupmaker.sh, which has a way to specify a set of options to ./configure as a fourth parameter. This makes for additional flexibility. Thanks to klhrevolution for the idea.

Updated: This one is now old too... use the one in the post at the top of this thread.

Jonathan
Attachments
dpupmaker.sh.gz
Updated dpupmaker.sh with optional 4th parameter to specify ./configure options if desired.
(2.02 KiB) Downloaded 816 times
Last edited by jmarsden on Tue 03 Jan 2006, 11:17, edited 1 time in total.

User avatar
Flash
Official Dog Handler
Posts: 13071
Joined: Wed 04 May 2005, 16:04
Location: Arizona USA

#10 Post by Flash »

jmarsden, if the improved version proves out, you can edit your original post, replacing the original dpupmaker file with the new one and updating the text.

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

Re: xlock password issue - where is the source code?

#11 Post by Lobster »

Hi Jonathan :)

The file chunnel - basically a program that you click and drag a file into and it places into the simplified structure above[/quote]
Can you provide a better idea of how this might work or what the point of it is? Do you have a web page or Wiki page describing this somewhere?
No web page or wiki
The point of usage is ease of file locating and regaining saved work
How it is implemented is dependent on what facilities and skills are available. We have drag and drop in PuppyBasic - so a drag and drop icon. Now the question is how can each program activate or have a facility to save in a format location automatically. png, jpg, gif etc in clipart for example? Knowing how that is possible would enable me suggest a better design. Ideally every program would have a save in default location button - with unknown file types going into misc
I'm not sure why Puppy needs a toolbar done in XUL? Most WMs have a toolbar... what would an XUL one unique to Puppy do that would improve user experience?
Run extra programs when on line or run programs written in xule much as this project did:
http://byzgl.sourceforge.net/
Provide many facilities but removing control from the service orientated emerging Ajax "services" springing up at the sniff of $


Dogbone done by a pro (I was hoping to work with a real pr
ogrammer on this project - peer programming) it is basically a communication center
http://www.murga.org/%7Epuppy/viewtopic ... 5274#15274
I suggest documenting what is is supposed to do -- a clear specification -- before implementing it. The thread has pictures but no link to design docs that I can see... ?
All the documentation is in the provided dotpup. I would be happy to provide documentation but little interest was shown in the program as is . . .
GAIM already is a Jabber client... so what exactly are you proposing here? Specs, design docs, prototypes... help me (and others) understand what this would do for Puppy users.
I am proposing that GAIM is set up to enter the puppylinux IRC or a jabber communication channel by default. Not sure how this is done I saw no way of implementing this but Kanotix (for one) had such a facility
Again can you define "voice mail" better (provide a link if you already did elsewhere!). Are we talking about an Asterisk style network PBX inside Puppy? See http://www.asterisk.org . Or what exactly are you looking for with this project?
I would define voice mail as the ability to record my voice and send it by email. Now I can do that by recording in puppy and saving opening sylpheed and attaching the file. By the time I have done that I might as well have written the message

These sorts of facilities but client sided - that is in Puppy
http://www.springdoo.com/
http://podomatic.com/

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

ARAN
Posts: 113
Joined: Fri 21 Oct 2005, 12:47

#12 Post by ARAN »

Hello Jonathan !

I have tryed with your script to build xmms-record as a dotpup hoverever i have failed.

Maybe you can help a little.

Here is my Odesse.

After i have downloaded your script i had big problems to unzip your Script File.
The Gui based Archiver programm which is deliverd with Puppy dont support the .gz archive for some reason,
Thats why people how want to extract your skript would have problems on puppy linux also like I.

I have downloaded for that the XFE File browser which give me the eassy possibility to unzip files with a gui.

After i have unzipped your skript i have try to make a dotpup file of the xmms recorder which i have downloaded it from the following Web Site.

http://prdownloads.sourceforge.net/xmms ... z?download

http://xmms-recorder.sourceforge.net/

I am a big fan of xmms and i am searching for a possibility to record the Live Media Stream in XMMS on my Harddisk by using xmms.

The XMMS-Recorder from the above site give me this possibility.

For the making of the xmms-recorder dotpup i have typed in the terminal
"dpupmaker.sh xmms-recorder-0.3.0.tar.gz"
The command has failed with the error message
"dpupmaker not found"

After a two hour search on the internet i have learned that
bash scripts are stored in the folder /usr/locale/bin
so i have moved the skript in this folder in the hope that after this
the shell script would work becouse Puppy can find now your Scipt.

after i have typed once again the same command in the terminal
"dpupmaker.sh xmms-recorder-0.3.0.tar.gz"
i have recieved once again the same error message
"dpupmaker not found".

So i have rejected the last moving of your Script and serched once again two hours on the internet to learn that if i want to use your skipt i have them to activated.

So I have typed for that
"chmod +x dpupmaker.sh"

After this i have typed once again the command
"dpupmaker.sh xmms-recorder-0.3.0.tar.gz"
and i have recieved the error message
"usr/locale/bin/dpupmaker.sh file not found"

After this message i have once again moved your scipt to the needed Folder and typed there
for the third time the command
"dpupmaker.sh xmms-recorder-0.3.0.tar.gz"

Now your Script was executed but for some reasons it seems that it cant make a dotpup package
of the xmms-recorder-0.3.0.tar.gz file.

Belove is a photo of the build messages from your script.

My feedback to you for now is

First:
if it possibile make a auto installation of your script.
The most of the people how would want to use your script would have big problems to install it and used it.
The best thing is somehow a one click installer of your Script.

Second:
for some reason the scipt fail to make a dotpup package of the xmms-recorder.
I dont know if this is xmms-recorder problem or a dpupmaker.sh problem.
from my side of view your script "dpupmaker.sh" should not have any problems to make a dotpup package of
xmms-recorder.
Attachments
PuppyScreenShot1.png
(11.03 KiB) Downloaded 4198 times

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

Thoughts on Lobster's Project List

#13 Post by jmarsden »

Lobster wrote:The file chunnel - basically a program that you click and drag a file into and it places into the simplified structure above

...

The point of usage is ease of file locating and regaining saved work ... (description of sorting files by filetype omitted)...
Why would I want all my .jpg's in one folder, all my .wav's in another, and all my .txt's in a third? I organize my files by project, not by what type of data they contain! Sorry, but to me, this has little value. Imagine of all my .c files were in one folder, or all my .pl files, but all my Makefiles were all together in a different one... ouch -- nothing would work any more! I suspect I don't understand.
jmarsden wrote:I'm not sure why Puppy needs a toolbar done in XUL? ...
Lobster wrote:Run extra programs when on line or run programs written in xule much as this project did: http://byzgl.sourceforge.net/ Provide many facilities ...
I'm going to leave this for someone who understands why this would be useful. I still don't. Examples? What extra programs? What "facilities"?
I am proposing that GAIM is set up to enter the puppylinux IRC or a jabber communication channel by default. Not sure how this is done I saw no way of implementing this but Kanotix (for one) had such a facility
Other than deciding on the IRC nick to be used, this is trivial. Look in your ~/.gaim/accounts.xml file :-)
I would define voice mail as the ability to record my voice and send it by email.
To most people in the business world, voicemail is what you get when someone doesn't pick up their phone... an automated attendant allowing messages to be left, and to be forwarded, deleted, saved, or retrieved later. What you are seeking is some sort of special-purpose streamlined "voice email sending" client. It's doable, but not especially useful IMO. How many voice emails have you received this week? Normal text emails are much faster to read and easier to store and search and quote from than audio "voice email"s would be... if the recipient *really* wants to listen to an email, they can use a text-to-speech program such as Festival. But most of us read a lot faster than we speak, so in practice most people will prefer to read them.

Overall this "voice email sending client" sounds like a very specialized niche product that few users would benefit from.

I'd suggest you prioritize the GAIM IRC auto-login, and the remote fileystem one -- both are doable and sound genuinely useful to many users.

Jonathan

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

dpupmaker.sh is for people familiar with compiling programs

#14 Post by jmarsden »

Hi ARAN! Thanks for trying out my script.
ARAN wrote:After i have downloaded your script i had big problems to unzip your Script File.
dpupmaker.sh is a command line program. Work with it at the command line. It is not intended for use by people who can only use a GUI. Maybe later I or someone else can create a GUI wrapper script for it which might help, but for now, it does need a user who has some familiarity with a shell prompt.

I uploaded it as a .gz file, so all you needed to do was download it, say into your home directory, and type

Code: Select all

gunzip dpupmaker.sh.gz
If you want to make it executable, do the usual

Code: Select all

chmod +x dpupmaker.sh
The Gui based Archiver programm which is deliverd with Puppy dont support the .gz archive for some reason,
Thats why people how want to extract your skript would have problems on puppy linux also like I.
Well, only people who are uncomfortable at the command prompt. Remember this is a tool to make the lives of package developers easier. Most package developers should have some ability to tar/untar gzip/ungzip etc files from a shell prompt. I hope!

By the way, .gz is a file compression format, not a file archive format. That may be why your GUI archiver had difficulties (I have never used it, so I don't know for sure).
For the making of the xmms-recorder dotpup i have typed in the terminal
"dpupmaker.sh xmms-recorder-0.3.0.tar.gz"
The command has failed with the error message
"dpupmaker not found"
As in most Unix and Linux shells, the current directory is not in your $PATH by default. If you had typed in

Code: Select all

./dpupmaker.sh xmms-recorder-0.3.0.tar.gz
the script would have run (if you had already made it executable with chmod +x as above).
Now your Script was executed but for some reasons it seems that it cant make a dotpup package of the xmms-recorder-0.3.0.tar.gz file.
This looks as though you have never compiled a source code tarball on Puppy in your life before now. dpupmaker.sh is not intended for packagers who have zero experience compiling anything. It makes dotpup creation easier -- just not quite that easy :-)

Based on your screenshot, you have not yet installed a working development environment. Did you install usr_devx.sfs ? I suspect not.
My feedback to you for now is

First: if it possibile make a auto installation of your script. The most of the people how would want to use your script would have big problems to install it and used it. The best thing is somehow a one click installer of your Script.
This script is a tool for package developers who are comfortable using scripts at the command line. A one-click installer for such developer tools makes little sense, in my view. It would just tend to encourage people who are not really developers from trying to use it. And such people are not its target user base.
for some reason the scipt fail to make a dotpup package of the xmms-recorder. I dont know if this is xmms-recorder problem or a dpupmaker.sh problem.
It is a "package developer lacks necessary experience" problem, mostly.

I downloaded the xmms-recorder tarball here, and my script gets a lot further than it did for you, but still fails, because it needs XMMS itself around. I'm not going to d/l and install XMMS just to test whether dpupmaker.sh can work with xmms-recorder, not at this time of night anyway (1am here)!

I suggest that you find a friend in the Puppy developer community who is wiling to try using dpupmaker.sh to build xmms-recorder and create a dotpup of it for you. Someone who has already compiled a few things from tarballs on Puppy.

Thanks for the feedback,

Jonathan

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

#15 Post by jmarsden »

Flash wrote:jmarsden, if the improved version proves out, you can edit your original post, replacing the original dpupmaker file with the new one and updating the text.
OK, can do. That makes sense. I'm not used to using forums as a file repository, can you tell? It looks good so far, BTW, I have a binutils dotpup created tonight with it that I am testing (all the GNU assembler/linker/etc tools, part of making Puppy fully self-hosting).

Based on ARAN's post, I may add a check for a 'make' command somewhere in $PATH, and exit with an appropriate error about development tools such as make being missing if it is not found -- perhaps that would be a help.

Jonathan

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

#16 Post by GuestToo »

this is a perfect example ... the dotpup system was created to address these exact issues ... so that i would not have to explain over and over and over again on the forum how to unzip a tar.gz package, how to chmod the permissions, how exectuables in the working dir need the path to begin with ./ (or type bash an-executable) ... etc etc etc

the dotpup system was never intended to be a package manager ... it was intended to be simple and easy to use and familiar to newbies who have installed Windows programs using an install-this-program.exe file (click to download ... click to install)

of course, dotpups are extremely flexible and can easily use any package management tools that are made available ... but it was never intended that package management tools be built into the dotpup system

i deliberately chose zip rather than gzip to compress the packages, because servers are often misconfigured and treat gzip files as text files, which can be confusing when a newbie clicks a tar.gz file and the browser shows a page of gibberish text characters

the dotpup system was targeted at newbies, but i think a simple and easy to use installer is a good thing for more advanced Puppy users too

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

#17 Post by jmarsden »

GuestToo wrote:this is a perfect example ...
the dotpup system was never intended to be a package manager ... it was intended to be simple and easy to use and familiar to newbies ...
the dotpup system was targeted at newbies, but i think a simple and easy to use installer is a good thing for more advanced Puppy users too
True, but in this case if a newbie is installing dpupmaker.sh, then they are installing something they have no use for anyway! So making it a neatly packaged and easy to install dotpup just "sends the wrong message" about what this script is.

The application (script) being discussed here is not for newcomers. Really, truly, it's not! It is a quick and still-fairly-dirty command line tool for developers. If it ever expands into a fully-fledged app, complete with a GUI wrapper and man pages (or .info files or similar documentation) etc., then at that stage, wrapping that app into an easily installed bundle (i.e. creating a package containing it) would IMO probably be appropriate.

At this early point in its lifecycle, I want dpupmaker.sh to be just a script, something that is played with by developers. People who can handle the idea of playing with scripts, who can perhaps even read the script to see how it does what it does and suggest improvements... does that make sense? I'm not being elistist, just practical -- at present, my shell script is not likely to be useful to someone, unless they have spent some significant time at a shell prompt already.

However, if someone else (perhaps a strong dotpup advocate such as yourself :wink: ) feels that they want to package up dpupmaker.sh right away and distribute dotpups of it (and support the newcomers who install it and have trouble using it??), then that's OK with me. The script is released under GPL, so of course anyone is free to take it and use it within the limits of that licence.

Sumary: You are right, ARAN's issues are a good demo of why simple "just click it" installers are useful to newcomers. But, dupmaker.sh is unlikely to be of any use to them.

Jonathan

User avatar
klhrevolutionist
Posts: 1121
Joined: Wed 08 Jun 2005, 10:09

ok

#18 Post by klhrevolutionist »

I will supply feedback as soon as I see something draws my attention.

As of lately there has not been an application that has come out, or I have found that interest me. So when I do come across something draws me in. You will be the first to know.
Heaven is on the way, until then let's get the truth out!

ARAN
Posts: 113
Joined: Fri 21 Oct 2005, 12:47

#19 Post by ARAN »

I want only to say that i have just developed something very interessting thing based on your Script Johnathan.

Its a Rox Application which understand Drag and Drop functionality.

For creating DotPups now the Puppy user dont need any more to use the Shell.

They can only drag and drop the needed source files over the "Dot-Pup Maker" Icon and the hole Building Process beginn automaticly to work.

In the next days i will try to create a DotPup Package of this RoxApplication which extract your
Script in the needed Folder maked it Exuctable Copy the Drag and Drop Rox Application in the RoxApp Folder make the AppRun File in the Folder exucatble and copy the Icon to the Puppy Desktop automaticly.

I will post it here in this Forum Thread.
Here are some Screen Shots
Attachments
PuppyScreenShot3.png
(56.18 KiB) Downloaded 1693 times
PuppyScreenShot2.png
(39.23 KiB) Downloaded 1684 times

User avatar
jmarsden
Posts: 265
Joined: Sat 31 Dec 2005, 22:18
Location: California, USA

Re: ok

#20 Post by jmarsden »

klhrevolutionist wrote:I will supply feedback as soon as I see something draws my attention.

As of lately there has not been an application that has come out, or I have found that interest me. So when I do come across something draws me in. You will be the first to know.
OK. Until then... which app were you thinking of when you asked for the extra --strip and --enable-fast-install options to ./configure? I'd like to test that app to see if the current script will handle that sort of thing correctly (it should do). Even if the app is not all that interesting, it would still be a useful test of dpupmaker.sh :-)

Jonathan

Post Reply