You are not logged in.

#1 2009-02-16 04:28:58

keenerd
Package Maintainer (PM)
Registered: 2007-02-22
Posts: 647
Website

Arch based Puppy

I used to do dev work for Puppy and still follow their news.  BarryK has been adapting Puppy to pull from many different distros repositories, including Arch.

http://puppylinux.com/blog/?viewDetailed=00566

I have added support for Arch Linux to Woof.

I have just done a test build, the desktop comes up, sound works, looks ok.

However, there is something wrong with the size. The live-CD ISO file is 106MB, whereas the Slackware build with basically the same selection of packages is 93MB. So, something quite large has got in there somehow -- a quick perusal of the files and I can't see what -- oh, one thing which is very odd...

The library file libgs.so.0.8.64 is 14MB, this is part of Ghostscript 8.64. Slackware and Ubuntu have version 8.63 and their lib file is only 6MB. The Arch library file is stripped. Why such an enormous difference in size? But, there has to be something else major to cause the large ISO file.

I see also that SVG image thumbnails are not displaying.

So, it needs work, but is basically functional.

Tonight I'll do a from-scratch Slackware build, to make sure that is still ok. I've been doing a lot of work on the scripts, need to check that the Slackware/Ubuntu/Debian builds are not broken.

He would probably appreciate any help.

Offline

#2 2009-02-16 07:06:46

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,357
Website

Re: Arch based Puppy

This is quite interesting.   I had a look at the libgs.so from our ghostscript 8.63(-4) package and it was 12MB.  Not sure what is making it larger.

Offline

#3 2009-02-16 18:10:35

catwell
Member
From: Bretagne, France
Registered: 2008-02-20
Posts: 207
Website

Re: Arch based Puppy

Ghostscript is 14,5MB in Slackware Current.

EDIT: I mean the whole package! The libgs.so.8.64 file is 6.4MB.

RE-EDIT: I've found (part of) the reason. Adding the configure flag --disable-compile-inits to Arch's PKGBUILD makes the size of libgs.so.8.64 go down to 8.5MB on my machine, compared to 16MB without.

Last edited by catwell (2009-02-16 19:20:44)

Offline

#4 2009-02-16 20:51:03

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,357
Website

Re: Arch based Puppy

I'm being lazy here....  but what does that configure flag do and what are the downsides?

Offline

#5 2009-02-16 21:05:41

catwell
Member
From: Bretagne, France
Registered: 2008-02-20
Posts: 207
Website

Re: Arch based Puppy

It sets COMPILE_INITS = 0 (which was the default behavior before ghostscript 8.56). In base/gs.mak there is an explanation about what this variable does:

# COMPILE_INITS - normally 1; compiles the PostScript language
#     initialization files (gs_init.ps et al) and Resource/* tree
#     into the executable, eliminating the need for these files
#     to be present at run time. Files will be placed in the
#     %rom% device.

I guess the default behavior isn't bad, but Arch both includes these files in the package and compile them in the executable.

Last edited by catwell (2009-02-16 21:20:23)

Offline

#6 2009-02-16 21:32:46

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,357
Website

Re: Arch based Puppy

Well, maybe that should get cleaned up.  Can you file a bug report about that?

Offline

#7 2009-02-16 21:53:38

catwell
Member
From: Bretagne, France
Registered: 2008-02-20
Posts: 207
Website

Re: Arch based Puppy

It would be more like a feature request to me. Also, I'm not really sure these files are useless. Why wouldn't they be deleted by default otherwise?

I don't really know ghostscript, I was just trying to understand why some library file was bigger in Arch than in another distro. I don't really care what's inside that package, so I think somebody who knows about it better than me should file a feature request. Maybe BarryK could do it?

Offline

#8 2009-02-16 22:52:03

foutrelis
Developer
From: Athens, Greece
Registered: 2008-07-28
Posts: 705
Website

Re: Arch based Puppy

catwell wrote:

Also, I'm not really sure these files are useless. Why wouldn't they be deleted by default otherwise?

From http://www.ghostscript.com/GPL_Ghostscript_8.56.html

The .ps library files and Resources tree are now compiled into Ghostscript by default. This means -Ilib is no longer needed when running gs uninstalled. Run './configure --disable-compile-inits' or set COMPILE_INITS=0 in the makefile to recover the old behaviour. The library files are still installed for reference.

I'm not sure either what the best course of action is, to leave it as is, remove the reference files or just not compile them into the library. However, I'd prefer to stick with upstream's default choices if possible.

Offline

#9 2009-02-17 09:25:42

zimt
Member
Registered: 2008-07-19
Posts: 17

Re: Arch based Puppy

Other topic: Arch Linux does not split packages up in "normal" and "dev" packages as Debian does for example. I think this would (in total) make a bigger install of Arch compared to those Distros that split (asuming you do not need all dev packages). This would make Arch not a suitable distribution when it comes to making a minimal install (when minimal means minimal space on harddisk required).

Offline

#10 2009-02-17 12:50:46

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,000
Website

Re: Arch based Puppy

lol, they call their package manager woof?  smile


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#11 2009-02-17 21:04:32

Surgat_
Member
Registered: 2007-08-08
Posts: 317

Re: Arch based Puppy

Dieter@be wrote:

lol, they call their package manager woof?  smile

How else do you think a Puppy could manage packages? lol lol

Offline

#12 2009-02-18 01:19:19

keenerd
Package Maintainer (PM)
Registered: 2007-02-22
Posts: 647
Website

Re: Arch based Puppy

Woof isn't a package manager, it is a live cd build system.  It replaces the old Puppy Unleashed build system.  Puppy has traditionally had an adhoc compile chain.  Originally Puppy used Mandrake binaries.  Then everything was compiled in Vector.  For a brief time it looked like a build system would be based on T3.  Nothing came from that, but Puppy got a useful GCC package and a lot of it became self hosted.

Woof is an attempt to give Puppy access to precompiled binaries, without becoming dependant on one source.  To that end, it supports Debian, Ubuntu, Slackware and Arch.  BarryK seems to rather like Arch.  The no-nonsense targz files are his style, and after years of Slackware packages he really appreciates the excellent dependency information.

Puppy's two native packaging systems are called PupGet and PET.  So yeah, they do have a thing for the funny names.  My own contributions had funny dog names, too.

To be fair, I thought pacman was a hilariously unfortunate name for a package manager.

Last edited by keenerd (2009-02-18 01:27:09)

Offline

#13 2009-02-18 12:04:27

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,000
Website

Re: Arch based Puppy

keenerd wrote:

To be fair, I thought pacman was a hilariously unfortunate name for a package manager.

Why unfortunate?


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#14 2009-02-19 09:00:29

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,357
Website

Re: Arch based Puppy

micko01 wrote:

Back on topic, I built my ArchPup, basically Puppy with Arch files, and what I noticed was printing was a huge package, ie, cups, gutenprint, (60M) and whatever else.

From memory, these packages got quite large when we started including the docs.  I am too lazy to actually check this out...

Offline

Board footer

Powered by FluxBB