Difference between pages "Install/Configuring" and "Package:Layman"

< Install(Difference between pages)
(Created page with "<noinclude> {{Note|This is a template that is used as part of the Installation instructions, to describe the process of configuring your Funtoo Linux system. Templates are bei...")
 
m
 
Line 1: Line 1:
<noinclude>
+
{{Ebuild
{{Note|This is a template that is used as part of the Installation instructions, to describe the process of configuring your Funtoo Linux system. Templates are being used to allow multiple variant install guides that use most of the same re-usable parts.}}
+
|Summary=Tool to manage Gentoo overlays
</noinclude>
+
|CatPkg=app-portage/layman
=== Configuring your system ===
+
|Homepage=http://layman.sourceforge.net/
As is expected from a Linux distribution, Funtoo Linux has its share of configuration files. The one file you are absolutely required to edit in order to ensure that Funtoo Linux boots successfully is <code>/etc/fstab</code>. The others are optional. Here are a list of files that you should consider editing:
+
}}
{{TableStart}}
+
Layman is an "overlay" external repository management tool.
<tr class="active"><th>File</th>
+
<th>Do I need to change it?</th>
+
<th>Description</th>
+
</tr><tr  class="danger">
+
<td><code>/etc/fstab</code></td>
+
<td>'''YES - required'''</td>
+
<td>Mount points for all filesystems to be used at boot time. This file must reflect your disk partition setup. We'll guide you through modifying this file below.</td>
+
</tr><tr>
+
<td><code>/etc/localtime</code></td>
+
<td>''Maybe - recommended''</td>
+
<td>Your timezone, which will default to UTC if not set. This should be a symbolic link to something located under /usr/share/zoneinfo (e.g. /usr/share/zoneinfo/America/Montreal) </td>
+
</tr><tr>
+
<td><code>/etc/make.conf</code> (symlink) - also known as:<br/><code>/etc/portage/make.conf</code></td>
+
<td>''Maybe - recommended''</td>
+
<td>Parameters used by gcc (compiler), portage, and make. It's a good idea to set MAKEOPTS. This is covered later in this document.</td>
+
</tr><tr>
+
<td><code>/etc/conf.d/hostname</code></td>
+
<td>''Maybe - recommended''</td>
+
<td>Used to set system hostname. Set the <code>hostname</code> variable to the fully-qualified (with dots, ie. <code>foo.funtoo.org</code>) name if you have one. Otherwise, set to the local system hostname (without dots, ie. <code>foo</code>). Defaults to <code>localhost</code> if not set.</td>
+
</tr><tr>
+
<td><code>/etc/hosts</code></td>
+
<td>''No''</td>
+
<td> You no longer need to manually set the hostname in this file. This file is automatically generated by <code>/etc/init.d/hostname</code>.</td>
+
</tr><tr>
+
<td><code>/etc/conf.d/keymaps</code></td>
+
<td>Optional</td>
+
<td>Keyboard mapping configuration file (for console pseudo-terminals). Set if you have a non-US keyboard. See [[Funtoo Linux Localization]].</td>
+
</tr><tr>
+
<td><code>/etc/conf.d/hwclock</code></td>
+
<td>Optional</td>
+
<td>How the time of the battery-backed hardware clock of the system is interpreted (UTC or local time). Linux uses the battery-backed hardware clock to initialize the system clock when the system is booted.</td>
+
</tr><tr>
+
<td><code>/etc/conf.d/modules</code></td>
+
<td>Optional</td>
+
<td>Kernel modules to load automatically at system startup. Typically not required. See [[Additional Kernel Resources]] for more info.</td>
+
</tr><tr>
+
<td><code>/etc/conf.d/consolefont</code></td>
+
<td>Optional</td>
+
<td>Allows you to specify the default console font. To apply this font, enable the consolefont service by running rc-update add consolefont.</td>
+
</tr><tr>
+
<td><code>profiles</code></td>
+
<td>Optional</td>
+
<td>Some useful portage settings that may help speed up intial configuration.</td>
+
</tr>
+
{{TableEnd}}
+
  
If you're installing an English version of Funtoo Linux, you're in luck as most of the configuration files can be used as-is. If you're installing for another locale, don't worry. We will walk you through the necessary configuration steps on the [[Funtoo Linux Localization]] page, and if needed, there's always plenty of friendly, helpful support. (See [[#Community portal|Community]])
+
=== Installation ===
 +
<console>###i## emerge layman</console>
 +
[[make.conf]] must source laymans overlays for emerge to pull in packages from external sources. This line needs to be below everything else in make.conf.
 +
<console>###i## echo "source /var/lib/layman/make.conf" >> /etc/portage/make.conf</console>
  
Let's go ahead and see what we have to do. Use <code>nano -w <name_of_file></code> to edit files -- the "<code>-w</code>" disables word-wrapping, which is handy when editing configuration files. You can copy and paste from the examples.
+
=== Using Layman ===
 +
Fetch, and display a list of overlays:
 +
<console>###i## layman -L</console>
  
{{fancywarning|It's important to edit your <code>/etc/fstab</code> file before you reboot! You will need to modify both the "fs" and "type" columns to match the settings for your partitions and filesystems that you created with <code>gdisk</code> or <code>fdisk</code>. Skipping this step may prevent Funtoo Linux from booting successfully.}}
+
Add an overlay to your system:
 +
<console>###i## layman -a <overlay name></console>
  
==== /etc/fstab ====
+
Delete an overlay from your system:
 +
<console>###i## layman -d <overlay name></console>
  
<code>/etc/fstab</code> is used by the <code>mount</code> command which is ran when your system boots. Statements of this file inform <code>mount</code> about partitions to be mounted and how they are mounted. In order for the system to boot properly, you must edit <code>/etc/fstab</code> and ensure that it reflects the partition configuration you used earlier:
+
==== Masking Overlay Packages ====
 +
Overlays have the power to override distro packages. To avoid conflicts, mask everything in the overlay, and unmask the packages that are necessary to your system.
  
<console>
+
{{file|name=/etc/portage/package.mask|lang=|desc=mask all packages in an overlay|body=
(chroot) # ##i##nano -w /etc/fstab
+
*/*::overlay-name
</console>
+
}}
  
You can use arrow keys to move around and hit Control-X to exit. If you want to save your changes, type "<code>Y</code>" when asked if you want to save the modified buffer, or hit Control-O before closing <code>nano</code>. Otherwise your changes will be discarded.
+
{{file|name=/etc/portage/package.unmask|lang=|desc=unmask packages to be used|body=
 +
cat-egory/pack-age1
 +
cat-egory/pack-age2
 +
}}
  
<pre>
+
==== Sync ====
# The root filesystem should have a pass number of either 0 or 1.
+
# All other filesystems should have a pass number of 0 or greater than 1.
+
#
+
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
+
#
+
# See the manpage fstab(5) for more information.
+
#
+
# <fs>     <mountpoint>  <type>  <opts>        <dump/pass>
+
  
/dev/sda1    /boot        ext2    noauto,noatime 1 2
+
Sync a specific overlays ebuilds:
/dev/sda2    none          swap    sw            0 0
+
<console>###i## layman -s <overlay name></console>
/dev/sda3    /            ext4    noatime        0 1
+
#/dev/cdrom  /mnt/cdrom    auto    noauto,ro      0 0
+
</pre>
+
  
==== /etc/localtime ====
+
Sync all overlays:
 +
<console>###i## layman -S</console>
  
<code>/etc/localtime</code> is used to specify the timezone that your machine is in, and defaults to UTC. If you would like your Funtoo Linux system to use local time, you should replace <code>/etc/localtime</code> with a symbolic link to the timezone that you wish to use.
+
Sync all overlays via eix:
 +
<console>###i## eix-sync</console>
  
<console>
+
=== Troubleshooting ===
(chroot) # ##i##ln -sf /usr/share/zoneinfo/MST7MDT /etc/localtime
+
Problem:
</console>
+
Warning: an installed db file was not found at: ['/var/lib/layman/cache***.xml']
  
The above sets the timezone to Mountain Standard Time (with daylight savings). Type <code>ls /usr/share/zoneinfo</code> to see what timezones are available. There are also sub-directories containing timezones described by location.
+
Solution:
 +
<console>###i## layman -L</console>
  
==== /etc/make.conf ====
+
{{EbuildFooter}}
 
+
MAKEOPTS can be used to define how many parallel compilations should occur when you compile a package, which can speed up compilation significantly. A rule of thumb is the number of CPUs (or CPU threads) in your system plus one. If for example you have a dual core processor without [[wikipedia:Hyper-threading|hyper-threading]], then you would set MAKEOPTS to 3:
+
 
+
<pre>
+
MAKEOPTS="-j3"
+
</pre>
+
 
+
If you are unsure about how many processors/threads you have then use nproc to help you.
+
<console>
+
(chroot) # ##i##nproc
+
16
+
</console>
+
 
+
Set MAKEOPTS to this number plus one:
+
 
+
<pre>
+
MAKEOPTS="-j17"
+
</pre>
+
 
+
USE flags define what functionality is enabled when packages are built. It is not recommended to add a lot of them during installation; you should wait until you have a working, bootable system before changing your USE flags. A USE flag prefixed with a minus ("<code>-</code>") sign tells Portage not to use the flag when compiling.  A Funtoo guide to USE flags will be available in the future. For now, you can find out more information about USE flags in the [http://www.gentoo.org/doc/en/handbook/handbook-amd64.xml?part=2&chap=2 Gentoo Handbook].
+
 
+
LINGUAS tells Portage which local language to compile the system and applications in (those who use LINGUAS variable like OpenOffice). It is not usually necessary to set this if you use English. If you want another language such as French (fr) or German (de), set LINGUAS appropriately:
+
 
+
<pre>
+
LINGUAS="fr"
+
</pre>
+
 
+
==== /etc/conf.d/hwclock ====
+
If you dual-boot with Windows, you'll need to edit this file and change the value of '''clock''' from '''UTC''' to '''local''', because Windows will set your hardware clock to local time every time you boot Windows. Otherwise you normally wouldn't need to edit this file.
+
<console>
+
(chroot) # ##i##nano -w /etc/conf.d/hwclock
+
</console>
+
 
+
==== Localization ====
+
 
+
By default, Funtoo Linux is configured with Unicode (UTF-8) enabled, and for the US English locale and keyboard. If you would like to configure your system to use a non-English locale or keyboard, see [[Funtoo Linux Localization]].
+

Revision as of 12:00, February 3, 2015

app-portage/layman


Source Repository:Gentoo Portage Tree
Homepage

Summary: Tool to manage Gentoo overlays

Use Flags

bazaar
Support dev-vcs/bzr based overlays
cvs
Support dev-vcs/cvs based overlays
darcs
Support dev-vcs/darcs based overlays
g-sorcery
Support app-portage/g-sorcery based overlays
git
Support dev-vcs/git based overlays
gpg
Support app-crypt/gnupg signed overlays lists and manifests
mercurial
Support dev-vcs/mercurial based overlays
squashfs
Support mounting squashfs image overlays locally read-only
subversion
Support dev-vcs/subversion based overlays
sync-plugin-portage
Install the sys-apps/portage sync module

News

Drobbins

How We're Keeping You At the Center of the Funtoo Universe

Read about recent developments that keep you, our users, at the forefront of our focus as Funtoo moves forward.
10 April 2015 by Drobbins
Mgorny

New OpenGL management in Funtoo

Funtoo is switching to an improved system for managing multiple OpenGL providers (Mesa/Xorg, AMD and NVIDIA). The update may involve blockers and file collisions.
30 March 2015 by Mgorny
Drobbins

Subarch Profiles are coming...

Subarch profiles are on their way! Learn more here.
29 March 2015 by Drobbins
View More News...

Layman

Tip

This is a wiki page. To edit it, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

Layman is an "overlay" external repository management tool.

Installation

# emerge layman

make.conf must source laymans overlays for emerge to pull in packages from external sources. This line needs to be below everything else in make.conf.

# echo "source /var/lib/layman/make.conf" >> /etc/portage/make.conf

Using Layman

Fetch, and display a list of overlays:

# layman -L

Add an overlay to your system:

# layman -a <overlay name>

Delete an overlay from your system:

# layman -d <overlay name>

Masking Overlay Packages

Overlays have the power to override distro packages. To avoid conflicts, mask everything in the overlay, and unmask the packages that are necessary to your system.

/etc/portage/package.mask - mask all packages in an overlay
*/*::overlay-name
/etc/portage/package.unmask - unmask packages to be used
cat-egory/pack-age1
cat-egory/pack-age2

Sync

Sync a specific overlays ebuilds:

# layman -s <overlay name>

Sync all overlays:

# layman -S

Sync all overlays via eix:

# eix-sync

Troubleshooting

Problem: Warning: an installed db file was not found at: ['/var/lib/layman/cache***.xml']

Solution:

# layman -L