Tapang, Roderick (GXS) wrote:

hi,

have u tried swaret and slapt-get? it handles slackware's
package installation easier.

erik

Not yet, but that is exactly the point of the post, that under Slackware, I find that installing/uninstalling from do-it-yourself packages made from source .tar.gz is so straightforward such that additional tools only serve to make things more complicated, not to mention introduce potential new headaches..


Ariz Jacinto wrote:


hmmm...., does slackware has its own version of configure
script?

No. But the vast majority of source now comes with well written configure scripts which make using them in conjunction with Slackware's simple yet effective package manager effortless. (See my old 2002-09-27 plug post 'short and sweet slackware package tutorial' for how to do it)

rpm and deb pkg mngr does the same thing, unless if the files
are generated by the pre/post install pkg mngr script and the
package maintainer forgot/fails to remove those files
thru the pre/post uninstall pkg mngr script.

So far, for all the slackpacks I've made myself, there have been no need to create any install/uninstall scripts at all. Once in possession of the binary slackware package (a .tgz tarball), you only need to know two commands:

'installpkg packagename.tgz' and 'removepkg packagename'.  The first
copies files over, the other one removes whatever it copied over
in the first place.  Iirc, even when I upgraded from gcc 2.95 to
gcc 3.1, I did not have to write an install/uninstall script.

What about the dependencies, you ask?  I think it's got something
to do with the state of Linux today and how things have stabilized
that dependency worries are much less common nowadays - everyone has
standardized on a core set of libraries and tools that are present
in any decently put together distro (or maybe it's just that Slackware's
creators made excellent default choices).

Despite the lack of automated dependency checking, I have NEVER found
myself needing it.  I have had to install multiple packages which
SDL depended on for extra functionality (SMPEG, Freetype, etc...), and
all of it has been painless.  Hmmm... maybe I'm becoming a Linux
old hand after all... but guess what, I haven't gotten around to
learning bash scripting to this day!!!  (Mainly because I've never
really needed it... go figure...)

i haven't seen it yet but honestly speaking,
i really hate seeing the symlinks scattered
all over the dir tree of RH,DEB,MDK distro.

Symlinks are a fact of life in unix, but of course the less there are the cleaner. I don't know about other distros, but I now understand Slackware's directory philosophy (it follows the Linux File Hierarchy Standard) that I no longer worry about orphaned links.

There's just a couple of rules of thumb you need to remember:  Always
invoke your configure script so that all the stuff you install gets
put in /usr/local (libs, binaries, docs, etc...).  99% of the time,
this is as simple as doing ./configure --prefix=/usr/local (or
some slight variation if the developer did not use autoconf).

Because /usr/local/bin is what's in the path, if you notice that the
install script for your package puts its binaries in usr/local/package-name/bin
instead of usr/local/bin, just create symlinks from usr/local/bin to it.

IMPORTANT: Make the symlink in the package creation directory BEFORE
you create the package, NOT AFTER, so the symlink becomes part of
and gets removed along with the pacakage.  So far, symlinks to binaries
are the only thing I've needed to create, there have been no problem
with libs.


Example:


While inside /pkgcreate/usr/local/packagename/bin,
do ln -s binaryname ../../bin/binaryname

Anyway, the nice thing with the Slackware package manager
is that if anything goes wrong, removepkg will cleanly undo
everything without keeping any additional turd files or
meta-info lying around.







--
Philippine Linux Users' Group (PLUG) Mailing List
[EMAIL PROTECTED] (#PLUG @ irc.free.net.ph)
Official Website: http://plug.linux.org.ph
Searchable Archives: http://marc.free.net.ph
.
To leave, go to http://lists.q-linux.com/mailman/listinfo/plug
.
Are you a Linux newbie? To join the newbie list, go to
http://lists.q-linux.com/mailman/listinfo/ph-linux-newbie

Reply via email to