[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Intent to package amanda - questions

Won't have a package ready for submission for a little while - I want to
thoroughly test it on my home LAN (including recovery) before I submit.

I do though have some questions about the best way to do a couple

1) Makefile patch
The makefile wants to chown/chgrp/suid stuff. Presently I patch the
Makefile.in files so they don't, otherwise it can't build as non root
(and does silly things like chown on files that are fine owned by root).
My patch to the various Makefile.in files is basically a bunch of this:

@@ -480,9 +480,7 @@
        for p in $$list; do \
                pa=$(DESTDIR)$(sbindir)/`echo $$p|sed '$(transform)'`; \
                echo chown $(BINARY_OWNER) $$pa; \
-               chown $(BINARY_OWNER) $$pa; \
                echo chgrp $(SETUID_GROUP) $$pa; \
-               chgrp $(SETUID_GROUP) $$pa; \

Is that the best way to do it? I don't rerun autoconf, as that doesn't
seem necessary.

2) User/Group
Clearly amanda is a poor choice as I'm sure that username is likely
taken on lots of user machines out there. Any suggestions? currently I'm
using foobar_user and barfoo_group (for user and group) - they probably
should be the same, but since defined as macro, that's easy to change. I
just am not sure what would be advisable to actually use.

3) Package splitting
I'm breaking it into four packages:

amanda-common (shared library needed by server and client,
documentation, creates user/group)

amanda-server (self explanatory)

amanda-client (self explanatory)

amanda-amplot - contains amplot which has dependency on gnuplot that
only people wanting to use amplot to make perty pictures really need.

Does that sound sane?

4) creating user/group
This is what I'm currently doing in the %pre script for amanda-common:

%pre common
if ! /usr/bin/getent group %{am_grp} > /dev/null 2>&1; then
  /usr/sbin/addgroup -r %{am_grp}
if ! /usr/bin/getent passwd %{am_usr} > /dev/null 2>&1; then
  /usr/sbin/adduser -r -c "Amanda Backup Software" -g %{am_grp}
-d /var/amanda %{am_usr}

Is specifically calling amanda-common in the requires for server and
client enough to guarantee that pre script gets run before they are
installed? The other option is to put it in %pre for both server and
client, if user installs both on same machine - one should see it is
already set up - but if I guarantee common is actually installed before
server or pre, that seems cleaner.

The rest I can probably figure out well enough on my own until I'm ready
to submit something.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]