hello friends! new(ish)!
Gentoo: Difference between revisions
>Okay |
>Okay No edit summary |
||
Line 25: | Line 25: | ||
==== Release Schedule ==== | ==== Release Schedule ==== | ||
Gentoo is a rolling-release distribution that allows you to mix channels on a per-package basis. For example, you can maintain a system on the stable channel and selectively install unstable releases, or even compile the latest development releases from Git/SVN/etc. Because of this, Gentoo can be either extremely stable or on the very bleeding edge, depending on how you configure it. | Gentoo is a rolling-release distribution that allows you to mix channels on a per-package basis. For example, you can maintain a system on the stable channel and selectively install unstable releases, or even compile the latest development releases from Git/SVN/etc. Because of this, Gentoo can be either extremely stable or on the very bleeding edge, depending on how you configure it. | ||
=== Init System === | |||
Gentoo uses OpenRC for its init system. It also gives you the option of using systemd if you so choose. | |||
== Related Distributions == | == Related Distributions == |
Revision as of 05:35, 29 January 2014
Gentoo Linux is a source-based GNU/Linux distribution. It has a stigma for being a difficult distribution to use, and is often recommended as a solution to any problem on /g/. After all, if the person asking the question could install Gentoo, they could probably figure out whatever problem they're having in the first place. If you are considering installing Gentoo, the best resource available to you is the Gentoo Handbook.
Differences between Gentoo and other Distros
Gentoo is different than most other Linux distributions, all the way down to how it is installed.
Installation Method
Most other distros include some form of graphical installer. Gentoo is installed by manually partitioning a device, extracting a stage3 tarball, extracting a portage snapshot, compiling a kernel, installing a bootloader, and then configuring various files that are needed to get it up and running. In those regards, it is somewhat similar to installing Debian with debootstrap, Fedora with febootstrap, or an Arch Linux install.
Package Manager
Gentoo's package manager, portage, is more similar to what you will find in BSD than in other Linux distributions. Portage tracks installation scripts, called ebuilds, for almost every package you can imagine by default. These ebuilds contain all the information necessary to automatically download a project's source, compile, and install it. If a package is not available for default, you can add other "repositories" as overlays on top of the default Gentoo overlay.
USE Flags
One of the most prominent features of Gentoo is the ability to custom tailor the features of software via USE flags. USE flags are a handy way of automatically specifying options to a piece of software's configuration script during compile time. For example, it is trivial to blacklist something like PulseAudio by simply including -pulseaudio into your global USE flags. USE flags can be specified globally in /etc/portage/make.conf or on a per-package basis through /etc/portage/package.use
CFLAGS
Typical of building from source, you are able to specify CFLAGS that add additional optimizations to the compiled software.
Overlays
Additional repositories of ebuilds are known as overlays. It is common practice to have a local overlay for any custom ebuilds you have created or acquired. Overlays are typically managed with the layman utility.
License Enforcement
Portage allows you to specify which licenses you agree with, to prevent any software with other licenses from being automatically pulled in at any point. For example, you can restrict installed software to only that which is FSF approved by including ACCEPT_LICENSE="-* @FREE" into /etc/portage/make.conf
Release Schedule
Gentoo is a rolling-release distribution that allows you to mix channels on a per-package basis. For example, you can maintain a system on the stable channel and selectively install unstable releases, or even compile the latest development releases from Git/SVN/etc. Because of this, Gentoo can be either extremely stable or on the very bleeding edge, depending on how you configure it.
Init System
Gentoo uses OpenRC for its init system. It also gives you the option of using systemd if you so choose.
Related Distributions
Gentoo variants
Like most distros, Gentoo has a few variants that are based off of it.
Funtoo Linux
A fork of Gentoo by Gentoo's founder Daniel Robbins. It aim's to correct some issues he sees with Gentoo that he wasn't able to rectify because of internal dispute. It also aims to be slightly easier than Gentoo, and offers more preconfiguration by default because of that. To that end, Funtoo ships with ebuilds that support the binary USE flag, allowing users to skip the step of customizing their own kernel.
- Advantages
- Includes some ebuilds that Gentoo doesn't by default.
- Initial setup may be easier than Gentoo.
- Uses Git for portage syncing instead of rsync.
- Disadvantages
- Funtoo uses an older version of udev than Gentoo, which may cause some compatibility issues with certain software.
- Funtoo's ebuilds do not always contain the same features as Gentoo's. For example, some are missing ABI flags. E.g. As of 2014-01-29 Funtoo does not contain tcp-wrappers 7.6.22-r1, which added such support while Gentoo does. Having many packages missing that support makes a multilib system with gx86-multilib very difficult.
Sabayon
Other
Exherbo
Exherbo was created by a former Gentoo developer, incorporating many ideas and concepts from Gentoo.