[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ./install-font.sh without root access
From: |
G. Branden Robinson |
Subject: |
Re: ./install-font.sh without root access |
Date: |
Mon, 20 Jan 2025 16:43:34 -0600 |
At 2025-01-20T12:38:24-0500, T. Kurt Bond wrote:
> I always install a personal copy of groff in a directory that my user
> owns, ensure that is in the path before the location of the system
> groff, and never use root access for installing fonts. I realize this
> may not be suitable for everyone.
I would emphasize that this works _really straightforwardly_ for anyone
willing to build groff from source.
I'm attaching the current version of my "make-groff-fast" script,[1]
which I run _all the time_. The core idea is
./configure --prefix=$HOME/groff-HEAD
and I also have (the equivalent of)
PATH=$HOME/groff-HEAD/bin:$PATH
and
MANPATH=$HOME/groff-HEAD/share/man:$MANPATH
in my shell's startup scripts.
The script is long because it has evolved somewhat like a cactus. It
has three features more casual users will probably want to take out.
1. a giant pile of compiler options to designed to provoke them to
anger, inspired by Bjarni Ingi Gislason; this is to aid me in
keeping the code portable and correct
2. the "PAYLOAD" file checking stuff, which alerts me to when I've
managed, sometimes on purpose, to change the set of files groff
installs
3. the "make uninstall" call at the end; I have that so that I can be
confident that uninstalling works without error (I then run "make -C
build install" by hand afterward to put it back so that "groff HEAD"
is my daily driver)
Also the script is designed to build from a Git checkout. If you use
only a distribution archive (like "groff-1.23.0.tar.gz"), then you'll
also need to take out the "make distclean" calls and, in the future,
depending on your preferences, the "bootstrap" call. The last point is
covered in a discussion from last March.[2]
I hope the script is helpful to people, or at least provides insight
into some of the things I do to try to maintain groff's quality.
Regards,
Branden
[1] It's called "-fast" because a variant script performs a "make dist",
which is much slower because its nested build from a distribution
archive that it generates exercises only one CPU core. I usually
run that only when I'm about to push commits, and want to make sure
I didn't screw the distribution archive up.
[2] https://lists.gnu.org/archive/html/groff/2024-03/msg00211.html
signature.asc
Description: PGP signature