How to get regular stuff working: Difference between revisions

From Alpine Linux
m (Fix spelling and repeated information)
m (added reference to Change default shell page)
Line 9: Line 9:


== Bash shell ==  
== Bash shell ==  
 
{{Main|Change default shell}}
It's also easy enough to install bash itself, or any other shell of your choice:  
The default shell used by Alpine Linux is the busybox variant of the [https://en.wikipedia.org/wiki/Almquist_shell ash] shell. To install bash:
 
{{Cmd|# apk add {{pkg|bash}} {{pkg|bash-completion}}}}
{{Cmd|apk add {{pkg|bash}} {{pkg|bash-completion}}}}
 
and optionally, change the login shell with '''{{ic|chsh}}'''.


== Hardware Management ==
== Hardware Management ==

Revision as of 06:21, 10 October 2024

Alpine comes with busybox by default. Busybox is set up as an endpoint for numerous symlinks that substitute various utilities. Since busybox tries to be a minimalistic package, the busybox commands may still be missing some functionality.

To replace the busybox symlinks, you can install the relevant packages:

Basic utilities

Very basic utilities ranging from cd, ls, lsblk, grep, are all busybox symlinks by default. To have the complete packages:

# apk add util-linux coreutils grep findutils

Bash shell

The default shell used by Alpine Linux is the busybox variant of the ash shell. To install bash:

# apk add bash bash-completion

Hardware Management

Install pciutils and usbutils for configuring PCI and USB hardware respectively. You can always remove these packages once the hardware is configured.

# apk add pciutils usbutils

The packages hwdata-pci and hwdata-usb are dependencies for the above utilities and they are installed automatically.

Disk Management

Managing (removable) disks is much easier with udisks.

# apk add udisks2

To see the mounted disks:

# udisksctl status

Network Management

For network, you may want to install iproute2.

# apk add iproute2

Development environment

Compiling in Alpine may be more challenging because it uses musl-libc instead of glibc. Alpine offers the regular compiler stuff such as gcc.

# apk add gcc

The alpine-sdk meta package is provided to build packages for Alpine. It includes abuild, build-base, and git.

# apk add alpine-sdk

To install CMake:

# apk add cmake extra-cmake-modules

ccache and a lot other tools are also available in Alpine.

Functional differences between musl and glibc