m4ification

This commit is contained in:
dtb 2022-11-24 11:50:35 -05:00
parent 5b5239bf31
commit 8b913b02e2

View File

@ -1,16 +1,16 @@
_header(`Linux') _header(`Linux')
<UL> _bibliography(`
<LI>_link(`How to Linux', `http://tldp.yolinux.com/HOWTO/subdir/HOWTO-INDEX.html')</LI> _bentr(`_link(`How to Linux', `http://tldp.yolinux.com/HOWTO/subdir/HOWTO-INDEX.html')')
<LI>_link(`How to Use User Mode Linux', `https://christine.website/blog/howto-usermode-linux-2019-07-07')</LI> _bentr(`_link(`How to Use User Mode Linux', `https://christine.website/blog/howto-usermode-linux-2019-07-07')')
<LI><A HREF="https://www.cs.cmu.edu/~awb/linux.history.html">LINUX's History</A></LI> _bentr(`<A HREF="https://www.cs.cmu.edu/~awb/linux.history.html">LINUX's History</A>')
<LI>_link(`The Linux Kernel documentation', `https://www.kernel.org/doc/html/v4.17/index.html')</LI> _bentr(`_link(`The Linux Kernel documentation', `https://www.kernel.org/doc/html/v4.17/index.html')')
<LI>_link(`LINUX is obsolete', `https://groups.google.com/g/comp.os.minix/c/wlhw16QWltI')</LI> _bentr(`_link(`LINUX is obsolete', `https://groups.google.com/g/comp.os.minix/c/wlhw16QWltI')')
<LI>_link(`Linux From Scratch', `http://www.linuxfromscratch.org/')</LI> _bentr(`_link(`Linux From Scratch', `http://www.linuxfromscratch.org/')')
<LI>_link(`Move your Linux from BIOS to UEFI in place', `https://www.redhat.com/sysadmin/bios-uefi')</LI> _bentr(`_link(`Move your Linux from BIOS to UEFI in place', `https://www.redhat.com/sysadmin/bios-uefi')')
<LI><A HREF="https://www.collabora.com/news-and-blog/blog/2020/08/27/using-the-linux-kernel-case-insensitive-feature-in-ext4/">Using the Linux kernel's Case-insensitive feature in Ext4</A></LI> _bentr(`<A HREF="https://www.collabora.com/news-and-blog/blog/2020/08/27/using-the-linux-kernel-case-insensitive-feature-in-ext4/">Using the Linux kernel's Case-insensitive feature in Ext4</A>')
</UL> ')
<H3 ID="#Linux#ACPI">ACPI</H3> _subheader(`ACPI')
_bibliography(` _bibliography(`
_bentr(`_ref(`#ACPI')') _bentr(`_ref(`#ACPI')')
') ')
@ -32,11 +32,11 @@ The Alpine wiki currently recommends _man(`pipewire(1)'), with postmarketOS, whi
PipeWire is relatively new and the typical audio server used is PulseAudio; Debian and many popular Debian-based distributions come pre-configured with PulseAudio. PipeWire is relatively new and the typical audio server used is PulseAudio; Debian and many popular Debian-based distributions come pre-configured with PulseAudio.
</P> </P>
_subsubheader(`ALSA') _subsubheader(`ALSA')
<UL> _bibliography(`
<LI><A HREF="https://wiki.alpinelinux.org/wiki/Main_Page/Adding_sound">Adding sound</A> (Alpine Linux Wiki)</LI> _bentr(`<A HREF="https://wiki.alpinelinux.org/wiki/Main_Page/Adding_sound">Adding sound</A> (Alpine Linux Wiki)')
<LI><A HREF="https://bbs.archlinux.org/viewtopic.php?id=256857">ALSA lib conf Evaluate error</A></LI> _bentr(`<A HREF="https://bbs.archlinux.org/viewtopic.php?id=256857">ALSA lib conf Evaluate error</A>')
<LI><A HREF="https://dev.to/setevoy/linux-alsa-lib-pcmdmixc1108sndpcmdmixopen-unable-to-open-slave-38on">ALSA lib pcm_dmix.c:1108:(snd_pcm_dmix_open) unable to open slave</A></LI> _bentr(`<A HREF="https://dev.to/setevoy/linux-alsa-lib-pcmdmixc1108sndpcmdmixopen-unable-to-open-slave-38on">ALSA lib pcm_dmix.c:1108:(snd_pcm_dmix_open) unable to open slave</A>')
</UL> ')
<P> <P>
The Alpine wiki ("Adding sound") says to install _code(`alsa-conf'), _code(`alsa-lib'), and _code(`alsa-utils'), The Alpine wiki ("Adding sound") says to install _code(`alsa-conf'), _code(`alsa-lib'), and _code(`alsa-utils'),
add yourself to the _code(`audio') group, and then do some more configuration that I've never needed to do: add yourself to the _code(`audio') group, and then do some more configuration that I've never needed to do:
@ -50,15 +50,15 @@ I also installed _code(`gstreamer') but I don't know why.
<P> <P>
ALSA is clunky, many people prefer to use a frontend such as Pipewire or PulseAudio that exposes its own interface while remaining compatible with ALSA. ALSA is clunky, many people prefer to use a frontend such as Pipewire or PulseAudio that exposes its own interface while remaining compatible with ALSA.
</P> </P>
<H4>OSS</H4> _subsubheader(`OSS')
<P> <P>
Deprecated, unfortunately. Deprecated, unfortunately.
</P> </P>
<H4>PipeWire</H4> _subsubheader(`PipeWire')
<UL> _bibliography(`
<LI><A HREF="https://wiki.alpinelinux.org/wiki/PipeWire">PipeWire</A> (Alpine Linux Wiki)</LI> _bentr(`<A HREF="https://wiki.alpinelinux.org/wiki/PipeWire">PipeWire</A> (Alpine Linux Wiki)')
<LI><A HREF="https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/home">PipeWire</A> (FreeDesktop Wiki)</LI> _bentr(`<A HREF="https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/home">PipeWire</A> (FreeDesktop Wiki)')
</UL> ')
<P> <P>
Provided by the _code(`pipewire') package on Alpine. Provided by the _code(`pipewire') package on Alpine.
</P> </P>
@ -68,7 +68,7 @@ RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
<P> <P>
This means you need _program(`rtkit') installed and running through your initialization system. This means you need _program(`rtkit') installed and running through your initialization system.
</P> </P>
<H4>PulseAudio</H4> _subsubheader(`PulseAudio')
<P> <P>
On Alpine you'll need the _program(`pulseaudio'), _program(`pulseaudio-alsa'), and _program(`alsa-plugins-pulse') packages for PulseAudio with ALSA compatibility. On Alpine you'll need the _program(`pulseaudio'), _program(`pulseaudio-alsa'), and _program(`alsa-plugins-pulse') packages for PulseAudio with ALSA compatibility.
Start _man(`pulseaudio(1)') when you want audio, ideally in your _file(`.xinitrc'). Start _man(`pulseaudio(1)') when you want audio, ideally in your _file(`.xinitrc').
@ -78,14 +78,14 @@ _subheader(`Distributions')
<P> <P>
Linux is usually obtained as part of a software distribution put together to form a useable operating system. Linux is usually obtained as part of a software distribution put together to form a useable operating system.
</P> </P>
<H4>Alpine</H4> _subsubheader(`Alpine')
<P> <P>
Alpine Linux is a small Linux distribution based on musl libc. Alpine Linux is a small Linux distribution based on musl libc.
Its main purpose is to serve as a server distribution, however many have found use for it as a desktop distribution. Its main purpose is to serve as a server distribution, however many have found use for it as a desktop distribution.
</P> </P>
<UL> _bibliography(`
<LI><A HREF="https://pkgs.alpinelinux.org/contents">Alpine repositories content search</A></LI> _bentr(`<A HREF="https://pkgs.alpinelinux.org/contents">Alpine repositories content search</A>')
</UL> ')
<H5>Bootstrapping</H5> <H5>Bootstrapping</H5>
<P> <P>
Alpine's bootstrapping procedure is quite manual; you should probably use _program(`setup-alpine'). Alpine's bootstrapping procedure is quite manual; you should probably use _program(`setup-alpine').
@ -102,7 +102,10 @@ http://dl-cdn.alpinelinux.org/alpine/edge/testing
</PRE> </PRE>
_code(`edge') may be replaced with a stable branch, the latest being _code(`v3.17') as of writing. _code(`edge') may be replaced with a stable branch, the latest being _code(`v3.17') as of writing.
</LI> </LI>
<LI>Run _command(`apk --root /mnt add --initdb alpine-base'). This is an ordinary _man(`apk-add(8)') call; you may wish to install necessities such as a kernel, firmware, and a bootloader at the same time.</LI> <LI>
Run _command(`apk --root /mnt add --initdb alpine-base').
This is an ordinary _man(`apk-add(8)') call; you may wish to install necessities such as a kernel, firmware, and a bootloader at the same time.
</LI>
</UL> </UL>
<P> <P>
Alpine does not have a _man(`chroot(1)') helper; you must manually do that with a one-liner such as Alpine does not have a _man(`chroot(1)') helper; you must manually do that with a one-liner such as
@ -117,7 +120,7 @@ After chrooting in, you must configure basics such as users, passwords, _man(`fs
Alpine doesn't include man pages in program packages to save on space, instead keeping them in _code(`[<I>package</I>]-doc') sibling packages. Alpine doesn't include man pages in program packages to save on space, instead keeping them in _code(`[<I>package</I>]-doc') sibling packages.
To always install doc packages with program packages, _code(`apk add docs'). To always install doc packages with program packages, _code(`apk add docs').
</P> </P>
<H4>Arch</H4> _subsubheader(`Arch')
<P> <P>
Arch is known for using the latest versions of programs, which has given it an undeserved reputation of instability. Arch is known for using the latest versions of programs, which has given it an undeserved reputation of instability.
</P> </P>
@ -171,11 +174,11 @@ Include = /etc/pacman.d/mirrorlist-arch
#Include = /etc/pacman.d/mirrorlist-arch #Include = /etc/pacman.d/mirrorlist-arch
''' '''
</PRE> </PRE>
<H4>Artix</H4> _subsubheader(`Artix')
<UL> _bibliography(`
<LI><A HREF="https://artixlinux.org/">Artix Linux</A></LI> _bentr(`<A HREF="https://artixlinux.org/">Artix Linux</A>')
<LI><A HREF="https://en.wikipedia.org/wiki/Artix_Linux">Artix Linux</A> (Wikipedia)</LI> _bentr(`<A HREF="https://en.wikipedia.org/wiki/Artix_Linux">Artix Linux</A> (Wikipedia)')
</UL> ')
<P> <P>
Artix is a Linux software distribution based on Arch that doesn't mandate SystemD as its initialization system. Artix is a Linux software distribution based on Arch that doesn't mandate SystemD as its initialization system.
</P> </P>
@ -187,11 +190,11 @@ you need to select the initialization you want to use: _code(`66'), _code(`dinit
and Artix's official wiki says you need to install the appropriate _link(`#logind', `_code(`elogind')') package (_code(`elogind-[<I>initialization system</I>]') e.g. _code(`elogind-66')) but like _code(`linux-firmware') though it is helpful it isn't strictly necessary. and Artix's official wiki says you need to install the appropriate _link(`#logind', `_code(`elogind')') package (_code(`elogind-[<I>initialization system</I>]') e.g. _code(`elogind-66')) but like _code(`linux-firmware') though it is helpful it isn't strictly necessary.
</P> </P>
<H4>Debian</H4> _subsubheader(`Debian')
<UL> _bibliography(`
<LI><A HREF="https://www.debian.org/">Debian</A></LI> _bentr(`<A HREF="https://www.debian.org/">Debian</A>')
<LI><A HREF="https://en.wikipedia.org/wiki/Debian">Debian</A> (Wikipedia)</LI> _bentr(`<A HREF="https://en.wikipedia.org/wiki/Debian">Debian</A> (Wikipedia)')
</UL> ')
<P> <P>
Debian is known for its stability and longevity. Debian is known for its stability and longevity.
Debian uses SystemD as its initialization system, the GNU core utilities, and dpkg and apt for package management. Debian uses SystemD as its initialization system, the GNU core utilities, and dpkg and apt for package management.
@ -200,7 +203,7 @@ Debian uses SystemD as its initialization system, the GNU core utilities, and dp
While it's possible to use non-Linux kernels within Debian, it's uncommon and the only non-Linux option currently maintained is the GNU HURD microkernel. While it's possible to use non-Linux kernels within Debian, it's uncommon and the only non-Linux option currently maintained is the GNU HURD microkernel.
</P> </P>
<H4>postmarketOS</H4> _subsubheader(`postmarketOS')
<P> <P>
postmarketOS is an Alpine-based Linux software distribution that makes configuring and using Linux easy on mobile devices. postmarketOS is an Alpine-based Linux software distribution that makes configuring and using Linux easy on mobile devices.
</P> </P>
@ -218,21 +221,21 @@ wifi.scan-rand-mac-address=no
On a live system you can then _code(`rc-service networkmanager restart') to restart NetworkManager and have it load the new configuration. On a live system you can then _code(`rc-service networkmanager restart') to restart NetworkManager and have it load the new configuration.
</P> </P>
<H4>Ubuntu</H4> _subsubheader(`Ubuntu')
<UL> _bibliography(`
<LI><A HREF="https://securitylab.github.com/research/Ubuntu-gdm3-accountsservice-LPE/">How to get root on Ubuntu 20.04 by pretending nobody's /home</A></LI> _bentr(`<A HREF="https://securitylab.github.com/research/Ubuntu-gdm3-accountsservice-LPE/">How to get root on Ubuntu 20.04 by pretending nobody's /home</A>')
</UL> ')
<P> <P>
Ubuntu is a derivative of Debian. Ubuntu is a derivative of Debian.
</P> </P>
_subheader(`logind') _subheader(`logind')
<UL> _bibliography(`
<LI><A HREF="https://github.com/elogind/elogind">elogind</A></LI> _bentr(`<A HREF="https://github.com/elogind/elogind">elogind</A>')
<LI><A HREF="https://wiki.gentoo.org/wiki/Elogind">elogind</A> (Gentoo Wiki)</LI> _bentr(`<A HREF="https://wiki.gentoo.org/wiki/Elogind">elogind</A> (Gentoo Wiki)')
<LI><A HREF="https://www.freedesktop.org/software/systemd/man/org.freedesktop.login1.html">org.freedesktop.login1</A></LI> _bentr(`<A HREF="https://www.freedesktop.org/software/systemd/man/org.freedesktop.login1.html">org.freedesktop.login1</A>')
<LI><A HREF="https://nixos.wiki/wiki/Logind">logind</A> (NixOS Wiki)</LI> _bentr(`<A HREF="https://nixos.wiki/wiki/Logind">logind</A> (NixOS Wiki)')
</UL> ')
<P> <P>
logind (_code(`systemd-logind.service(8)')) is a component of SystemD that exposes information about active users on the system via the org.freedesktop.login1 D-Bus interface which is used by the popular desktop environments GNOME and KDE. logind (_code(`systemd-logind.service(8)')) is a component of SystemD that exposes information about active users on the system via the org.freedesktop.login1 D-Bus interface which is used by the popular desktop environments GNOME and KDE.
It also handles _ref(`#ACPI') events. It also handles _ref(`#ACPI') events.
@ -243,9 +246,9 @@ On systems without SystemD and with conflicting software, _code(`elogind(8)') ma
</P> </P>
_subheader(`util-linux') _subheader(`util-linux')
<UL> _bibliography(`
<LI>_link(`util-linux', `https://en.wikipedia.org/wiki/Util-linux') (Wikipedia)</LI> _bentr(`_link(`util-linux', `https://en.wikipedia.org/wiki/Util-linux') (Wikipedia)')
</UL> ')
<P> <P>
_code(`util-linux') is distributed on all popular Linux distributions and contains utilities users may expect to be already present on their systems, like _man(`more(1)') or _man(`hexdump(1)'). _code(`util-linux') is distributed on all popular Linux distributions and contains utilities users may expect to be already present on their systems, like _man(`more(1)') or _man(`hexdump(1)').
</P> </P>