How to get regular stuff working: Difference between revisions

From Alpine Linux
m (→‎Basic commands and shell hints: If we're trying to turn Alpine into GNU, we should install the PCI IDs and USB IDs too...)
 
(45 intermediate revisions by 12 users not shown)
Line 1: Line 1:
== Man pages ==


Not all man-pages are in Alpine, those who are are not readily available after installing man and man-pages,
== Basic commands and shell hints ==
you also need to install mdocml-pages to have man pages built at install time. Below is the quick and easy commandline:


    apk add man man-pages mdocml-pages
Alpine comes with busybox by default. Busybox is set up as an endpoint for numerous symlinks that substitute various utilities. Though busybox is not that bad, the busybox replacement commands may still be missing some functionality.


== a note and reminder on Compiling ==
To replace the symlinks to busybox, install:


Compiling in Alpine may be more challenging because it uses [http://www.musl-libc.org/ musl-libc] instead of glibc.  
* Shell utilities (things like grep, [[awk]], ls are all busybox symlinks)
: {{Cmd|apk add {{pkg|util-linux}} {{pkg|pciutils}} {{pkg|hwdata-pci}} {{pkg|usbutils}} {{pkg|hwdata-usb}} {{pkg|coreutils}} {{pkg|binutils}} {{pkg|findutils}} {{pkg|grep}} {{pkg|iproute2}}}}
 
* Bash
It's also easy enough to install bash itself: 
: {{Cmd|apk add {{pkg|bash}} {{pkg|bash-completion}}}}
and optionally, change the login shell with '''{{ic|chsh}}'''.
 
== Disk Management ==
 
Managing (removable) disk is much easier with udisks
 
Installation   
 
{{Cmd|apk add {{pkg|udisks2}}}}
 
To see the mounted disks
 
{{Cmd|udisksctl status}}
 
== Compiling : a few notes and a reminder  ==
 
Compiling in Alpine may be more challenging because it uses [https://musl.libc.org/ musl-libc] instead of glibc. Please review the [https://wiki.musl-libc.org/functional-differences-from-glibc.html 'functional differences with glibc'] if you think of porting packages or just for the sake of knowing, of course.
 
Alpine offers the regular compiler stuff like gcc and cmake ... possible others


==== (unvalidated) apk packages to install so one can start building software ====
==== (unvalidated) apk packages to install so one can start building software ====
  apk add build-base gcc abuild
{{Cmd|apk add {{pkg|build-base}} {{pkg|abuild}}}}
 
==== a complete install for cmake looks like ====
 
{{Cmd|apk add {{pkg|cmake}} {{pkg|extra-cmake-modules}}}}
 
==== ccache is also available ====
 
{{Cmd|apk add {{pkg|ccache}}}}
 
[[Category:Installation]]

Latest revision as of 13:59, 27 December 2023

Basic commands and shell hints

Alpine comes with busybox by default. Busybox is set up as an endpoint for numerous symlinks that substitute various utilities. Though busybox is not that bad, the busybox replacement commands may still be missing some functionality.

To replace the symlinks to busybox, install:

  • Shell utilities (things like grep, awk, ls are all busybox symlinks)

apk add util-linux pciutils hwdata-pci usbutils hwdata-usb coreutils binutils findutils grep iproute2

  • Bash

It's also easy enough to install bash itself:

apk add bash bash-completion

and optionally, change the login shell with chsh.

Disk Management

Managing (removable) disk is much easier with udisks

Installation

apk add udisks2

To see the mounted disks

udisksctl status

Compiling : a few notes and a reminder

Compiling in Alpine may be more challenging because it uses musl-libc instead of glibc. Please review the 'functional differences with glibc' if you think of porting packages or just for the sake of knowing, of course.

Alpine offers the regular compiler stuff like gcc and cmake ... possible others

(unvalidated) apk packages to install so one can start building software

apk add build-base abuild

a complete install for cmake looks like

apk add cmake extra-cmake-modules

ccache is also available

apk add ccache