Re: scsh-install-pkg: build and install

Michel Schinz <[email protected]>
Newsgroups gmane.lisp.scheme.scsh
Message-ID <[email protected]>
Friedrich Delgado Friedrichs <[email protected]> writes:

[...]

> It all went very smooth and easy, the only slight annoyance was that
> scsh-install-pkg does not allow me to *compile* stuff as non-root
> and afterwards *install* it as root.

This could be added, but I first need to be convinced that this is
indeed necessary, which I'm not really right now :-).

> This is both a potential security hazard (because the system
> administrator has to inspect everything that happens in the build
> phase to determine if the package can be trusted and not only the
> install steps, which means the risk for malicious actions to remain
> unnoticed is much higher)

I don't really buy this, for two reasons:

1. Nothing forces you to perform installation as root. It's actually
   very easy to set up a user with write access to a single directory
   which serves as a software repository (say /usr/local/stow) and
   have this user perform all compilations/installations. Once the
   software is installed, the appropriate symbolic links from
   /usr/local/{bin,man,share,...} can be created by root (or some
   other user). This is both easier than reading makefiles, and more
   secure. And it can be made even more secure by creating a new user
   for every installed software.

2. If you are really worried about malicious code, then you should
   read the *whole* makefile, *and* the whole source code of the
   program anyway, because even as somebody else than root it can do
   nasty stuff.

Moreover, at least the Fink package manager performs *both*
compilation and installation as root. Maybe it's different with
Debian, I don't know.

> and an inconvenience, since it conflicts with existing packaging
> systems (e.g. bkhl pointed out that he couldn't separate the compile
> phase and the install phase for a debian package that way).

Ok, this could indeed be a problem, provided that it's really
necessary to separate the two. So I need to be explained why this is
necessary, i.e. why providing a dummy, do-nothing command for the
compilation phase doesn't work.

Thanks,
Michel.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.