Команда IT специалистов выполнит подготовку инфраструктуры для вашего бизнеса.
Внедрение самых передовых решений и технологий.
Поддержка и сопровождение ваших сервисов.
Выполнение работ под "ключ", от покупки сервера, до настройки автоматизации процессов. 8(977)608-78-62 adm@nixm.ru
Внедрение самых передовых решений и технологий.
Поддержка и сопровождение ваших сервисов.
Выполнение работ под "ключ", от покупки сервера, до настройки автоматизации процессов. 8(977)608-78-62 adm@nixm.ru
Funtoo.Настройка для пользователя сторонних оверлеев.
Funtoo.Настройка для пользователя сторонних оверлеев.
Конфигурация использует формат, похожий на Windows файлов .ini. Каждый раздел курса (имя репозитория в квадратных скобках) означает единое хранилище, а затем с помощью одного или более пар опция ключ-значение.Кофигурация файлов по умолчанию для хранилища Funtoo:/etc/portage/repos.conf -В конечном итоге настроек чтоб успокоить ругань
portage,layman и eix и заставить их нормально работать при смене стандартных настроек получилась директория с такими конфигами:
eix при такой настройке даёт возможность выбрать пакет из например двух одинаковых из разных оверлеев,а portage по умолчанию выбирает по приоритету.
Второй конфиг -save.И избавиться пока от него получилось,во всяком случае не мешает:
Изменения коснулись еще следующих конфигураций:
/etc/portage/make.conf :
Дерево
Подразумевается,что используется zfs разметка перебита следующим образом:
все настройки portage убраны из /usr /usr/local/ c удалением директорий
Добавление стороннего репозитория(оверлея) теперь отличается от гентушного
eix читает карту /etc/portage/make.conf,туда вписываем место расположения
в моем случае оверлей /bar /var/db/repos/bar
Приоритет использования выставляется в /etc/portage/repos.conf/layman.cfg
Команда на добавление оверлея стандартная
Хотим обратно на gentoo- и меняем разумеется
настройки в /etc/portage/
Сделано на основании http://www.funtoo.org/Package:Portage_(Funtoo) http://www.funtoo.org/ZFS_Install_Guide
portage,layman и eix и заставить их нормально работать при смене стандартных настроек получилась директория с такими конфигами:
Код: Выделить всё
/etc/portage/repos.conf/layman.conf
[DEFAULT]
#sync-user = oleg
#sync-umask = 022
[funtoo]
location = /var/db/repos/funtoo
sync-type = git
sync-uri = git://github.com/funtoo/ports-2015.git
auto-sync = yes
priority = 1
#[gentoo]
#location = /var/db/repos/gentoo
#priority = 1
[bar]
location = /var/db/repos/bar
priority = 2
Второй конфиг -save.И избавиться пока от него получилось,во всяком случае не мешает:
Код: Выделить всё
/etc/portage/repos.conf/repo:
[DEFAULT]
sync-user = oleg
sync-umask = 022
[funtoo]
location = /var/db/repos/funtoo
sync-type = git
sync-uri = git://github.com/funtoo/ports-2015.git
auto-sync = yes
#[gentoo]
#location = /var/db/repos/gentoo
#priority = 1
Код: Выделить всё
/etc/layman/layman.cfg
[MAIN]
#-----------------------------------------------------------
# Defines the directory where overlays should be installed
storage : /var/db/repos/
#-----------------------------------------------------------
# Remote overlay lists will be stored here
# layman will append _md5(url).xml to each filename
cache : %(storage)s/cache
#-----------------------------------------------------------
# The list of locally installed overlays
installed: %(storage)s/installed.xml
#-----------------------------------------------------------
# Prompt the user if they are installing unofficial overlays
check_official : No
# This has been renamed from the following
# old name : value use it for updating to new one above
# local_list: %(storage)s/overlays.xml
# either rename the overlays.xml file to installed.xml
# or edit the value above to the current name of your
# installed overlay(s) file.
##### NEW ##### Repo Config Options #####
#-----------------------------------------------------------
# Defines whether or not a repos.conf or make.conf file is
# required for the repository control group. Set to No for
# non-package manager involved repository control. For normal
# portage overlay use and function, this needs to be set to
# Yes. If yes, it requires at least one conf_type to be set.
require_repoconfig : Yes
#-----------------------------------------------------------
# Path to the make.conf file that should be modified by
# layman
make_conf : %(storage)s/make.conf
#-----------------------------------------------------------
# Path to the repos.conf file that should be modified by
# layman
repos_conf : /etc/portage/repos.conf/layman.conf
#-----------------------------------------------------------
# Defines whether or not auto_sync will be set to "yes" or
# "no" in your repos.conf config. Ultimately deciding whether
# or not the portage sync plug-in will automatically sync your
# layman overlays.
auto_sync : Yes
#-----------------------------------------------------------
# Repository config types used by layman
# (repos.conf, make.conf)
conf_type : repos.conf
#-----------------------------------------------------------
#-----------------------------------------------------------
# URLs of the remote lists of overlays (one per line) or
# local overlay definitions
#
#overlays : http://www.gentoo.org/proj/en/overlays/repositories.xml
# http://dev.gentoo.org/~wrobel/layman/global-overlays.xml
# http://mydomain.org/my-layman-list.xml
# file:///var/lib/layman/my-list.xml
#
#### GPG signed lists #### COMING SOON TO A DOWNLOAD SITE NEAR YOU #####
#
# gpg_signed_lists :
# These can be clearsigned or signed (compressed) overlay lists
# Each url will be one complete file to download, verify, decrypt.
# layman will automatically verify and decrypt the list before saving
# One url per line, indented
#
# e.g.:
# gpg_signed_lists :
# http://someserver.somewhere.com/someoverlays.xml.asc
#
gpg_signed_lists :
#
# gpg_detached_lists:
# These url's involve downloading 2 files
# The first url listed will be the overlays xml list.
# The second url will be the detached signature file
# with one of {.gpg, .asc, .sig} extension
# Both url's must be on the same line space separated and indented
#
# e.g.:
# gpg_detached_lists :
# http://distfiles.gentoo.org/overlays.xml http://distfiles.gentoo.org/overlays.xml.asc
# http://someserver.somewhere.com/someoverlays.xml http://someserver.somewhere.com/someoverlays.xml.gpg
gpg_detached_lists :
# https://api.gentoo.org/overlays/repositories.xml https://api.gentoo.org/overlays/repositories.xml.asc
# original unsigned lists and definitions
# one url per line, indented
overlays :
https://api.gentoo.org/overlays/repositories.xml
#-----------------------------------------------------------
# The directory to scan for xml overlay definition files to include
# in the list of available overlays. They are automatically added to the
# "overlays" parameter above. Use either method, but do not add the same
# definition in both.
#
#overlay_defs : /etc/layman/overlays
#-----------------------------------------------------------
# Proxy support
# If unset, layman will use the http_proxy/https_proxy environment variable.
#
#http_proxy : http://[user:pass@]www.my-proxy.org:3128
#https_proxy : https://[user:pass@]www.my-proxy.org:3128
#-----------------------------------------------------------
# Strict checking of overlay definitions
#
# The nocheck option is a bit confusing, for historical reasons.
# Hopefully this description eases the double negation trouble:
#
# nocheck : yes
# - Accepts complete overlay entries without warnings
# - Lists overlays of type foo (say Git) even with no foo installed
#
# nocheck : no
# - Checks overlay entries for missing description or contact
# information and issue warnings as needed
# - Hides overlays of type foo (say Git) if foo not not installed
#
nocheck : yes
#-----------------------------------------------------------
# Umask settings
#
# layman should usually work with a umask of 0022. You should
# only change this setting if you are absolutely certain that
# you know what you are doing.
#
#umask : 0022
news_reporter: portage
Код: Выделить всё
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# Contains local system settings for Portage system
# Please review 'man make.conf' for more information.
# Build-time functionality
# ========================
#
# The USE variable is used to enable optional build-time functionality. For
# example, quite a few packages have optional X, gtk or GNOME functionality
# that can only be enabled or disabled at compile-time. Gentoo Linux has a
# very extensive set of USE variables described in our USE variable HOWTO at
# http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&chap=1
#
# The available list of use flags with descriptions is in your portage tree.
# Use 'less' to view them: --> less /usr/portage/profiles/use.desc <--
#
# 'ufed' is an ncurses/dialog interface available in portage to make handling
# useflags for you. 'emerge app-portage/ufed'
#
# Example:
USE=" 3dnow 3dnowext
-alsa -alsa-lib
aac amr a52 apng awesome
-aqua aqualung app-foo/bar app-bar/baz
binary bindist
-bluetooth
cleartype cmake c++0x cairo
-cups consolekit crypt
dbus -dolphin development
-dso -doc -default-term
-development -dhclient
dhcpcd deluge dropbox
-emacs egl
firmware flac ffmpeg
-fbcondecor flaggie
git g3dvl gstreamer -gnome-keyring
gtk gtk3 -gnome -gnome-online-accounts gtkstyle
grilo geany -graphite gudev
-ghcbootstrap -gcrypt -geoloc
highlight hscolour heather
-handbook -hoogle -hpn
icu icq irc
i18n -introspection
jpeg jpeg2k
kmod
-kerberos -kde
lodgeit-default llvm ladspa -libav
-ldap lua libsamplerate librsync-bundled
minizip mmx mp3 mpeg mms -modemmanager
mhash minimal nls mpeg4
-networkmanager -nautilus
openssl openvg oss opengl
osmesa openrc optimization ogg
plugins pdf
perl -pulseaudio pypy2_0 png playlist pcre16
-plasma pcre pango python policykit
ristretto
-qt5 -qemu
-qt3 -qt4
strong-optimization spell scrobbler
symlink sse sse2 sse3 ssse3 sse4_1
steamruntime spamassassin sdl ssl
-spice -systemd sync
-subversion -startup-notification
threads
truetype traker thunar
udev udisks unicode
-virt-network
video-thumbnails -vala vorbis
usb
wavpack wallpapers
-webkit
xft xvmc xa xorg xvid x264 xkb
xinerama X
-yahoo
zfs zlib
zsh-completion"
INPUT_DEVICES="keyboard mouse evdev"
VIDEO_CARDS="nouveau"
#VIDEO_CARDS="nvidia"
#VIDEO_CARDS="radeon radeonsi"
OSS_CARDS="cmi878x hdaudio ich imux midiloop midimix userdev"
# Please don't ruin my language settings ore sound
CONFIG_PROTECT="${CONFIG_PROTECT} /usr/share/i18n/locales /usr/lib/oss/soundon.user"
# Host Setting
# ============
#
CHOST="x86_64-pc-linux-gnu"
LINGUAS="en ru"
# Host and optimization settings
# ==============================
#
# For optimal performance, enable a CFLAGS setting appropriate for your CPU.
#
# Please note that if you experience strange issues with a package, it may be
# due to gcc's optimizations interacting in a strange way. Please test the
# package (and in some cases the libraries it uses) at default optimizations
# before reporting errors to developers.
#
# If your gcc supports it, you can add -frecord-gcc-switches to all of the
# following *FLAGS in order to enable *FLAGS ignorance checking for ebuilds:
# CFLAGS, CXXFLAGS, FFLAGS, and FCFLAGS.
# Note that this check is only enabled if every one of these variables contains
# -frecord-gcc-switches, since otherwise the check could result in false
# positive results.
#
# -mcpu=<cpu-type> means optimize code for the particular type of CPU without
# breaking compatibility with other CPUs. GCC 3.4 has deprecated support for
# -mcpu, so use -mtune instead if using this compiler.
#
# -march=<cpu-type> means to take full advantage of the ABI and instructions
# for the particular CPU; this will break compatibility with older CPUs (for
# example, -march=athlon-xp code will not run on a regular Athlon, and
# -march=i686 code will not run on a Pentium Classic.)
#
# CPU types supported in gcc-3.2 and higher: athlon-xp, athlon-mp,
# athlon-tbird, athlon, k6, k6-2, k6-3, i386, i486, i586 (Pentium), i686
# (PentiumPro), pentium, pentium-mmx, pentiumpro, pentium2 (Celeron),
# pentium3, and pentium4.
#
# Note that Gentoo Linux 1.4 and higher include at least gcc-3.2.
#
# amd64 CPU types supported in gcc-3.4: athlon64, opteron, k8
#
# CRITICAL WARNINGS: ****************************************************** #
# K6 markings are deceptive. Avoid setting -march for them. See Bug #24379. #
# Pentium-M CPUs should not enable sse2 until at least gcc-3.4. Bug 50616. #
# GCC 3.3 doesnt support an amd64 specific -march setting, use 3.4. #
# ************************************************************************* #
#
# Decent examples:
#
CFLAGS="-mtune=k8 -O2 -pipe"
#CFLAGS="-march=athlon64 -O2 -pipe"
# If you set a CFLAGS above, then this line will set your default C++ flags to
# the same settings.
CXXFLAGS="${CFLAGS}"
#
# If you set a CFLAGS above, then this line will set your default FORTRAN 77
# flags to the same settings.
FFLAGS="${CFLAGS}"
#
# If you set a FFLAGS above, then this line will set your default FORTRAN
# flags to the same settings for modern build systems
FCFLAGS="${FFLAGS}"
# Advanced Masking
# ================
#
# Gentoo is using a new masking system to allow for easier stability testing
# on packages. KEYWORDS are used in ebuilds to mask and unmask packages based
# on the platform they are set for. A special form has been added that
# indicates packages and revisions that are expected to work, but have not yet
# been approved for the stable set. '~arch' is a superset of 'arch' which
# includes the unstable, in testing, packages. Users of the 'x86' architecture
# would add '~x86' to ACCEPT_KEYWORDS to enable unstable/testing packages.
# '~ppc', '~sparc' are the unstable KEYWORDS for their respective platforms.
#
# Please note that this is not for development, alpha, beta, nor cvs release
# packages. "Broken" packages will not be added to testing and should not be
# requested to be added. Alternative routes are available to developers
# for experimental packages, and it is at their discretion to use them.
#
# DO NOT PUT ANYTHING BUT YOUR SPECIFIC ~ARCHITECTURE IN THE LIST.
# IF YOU ARE UNSURE OF YOUR ARCH, OR THE IMPLICATIONS, DO NOT MODIFY THIS.
#
ACCEPT_KEYWORDS="~amd64"
# ACCEPT_LICENSE is used to mask packages based on licensing restrictions.
# It may contain both license and group names, where group names are
# prefixed with the '@' symbol. License groups are defined in the
# license_groups file (see portage(5) man page). In addition to license
# and group names, the * and -* wildcard tokens are also supported.
#
# Accept any license except those in the EULA license group (default).
#ACCEPT_LICENSE="* -@EULA"
#
# Only accept licenses in the FREE license group (i.e. Free Software).
ACCEPT_LICENSE="-* @FREE"
# Portage Directories
# ===================
#
# Each of these settings controls an aspect of portage's storage and file
# system usage. If you change any of these, be sure it is available when
# you try to use portage. *** DO NOT INCLUDE A TRAILING "/" ***
#
# PORTAGE_TMPDIR is the location portage will use for compilations and
# temporary storage of data. This can get VERY large depending upon
# the application being installed.
PORTAGE_TMPDIR=/var/tmp
#
# PORTDIR is the location of the portage tree. This is the repository
# for all profile information as well as all ebuilds.
# ***Warning***
# Data stored inside PORTDIR is in peril of being overwritten or deleted by
# the emerge --sync command. The default value of PORTAGE_RSYNC_OPTS
# will protect the default locations of DISTDIR and PKGDIR, but users are
# warned that any other locations inside PORTDIR are not necessarily safe
# for data storage.
#PORTDIR=/usr/portage
#
# DISTDIR is where all of the source code tarballs will be placed for
# emerges. After packages are built, it is safe to remove any and
# all files from this directory since they will be automatically
# fetched on demand for a given build. If you would like to
# selectively prune obsolete files from this directory, see
# eclean from the gentoolkit package. Note that locations under
# /usr/portage are not necessarily safe for data storage. See the
# PORTDIR documentation for more information.
#DISTDIR=/usr/portage/distfiles
DISTDIR=/var/db/distfiles
# PKGDIR is the location of binary packages that you can have created
# with '--buildpkg' or '-b' while emerging a package. This can get
# up to several hundred megs, or even a few gigs. Note that
# locations under /usr/portage are not necessarily safe for data
# storage. See the PORTDIR documentation for more information.
PKGDIR=/var/db/packages
#
# PORT_LOGDIR is the location where portage will store all the logs it
# creates from each individual merge. They are stored as
# ${CATEGORY}:${PF}:YYYYMMDD-HHMMSS.log in the directory specified.
# If the directory does not exist, it will be created automatically and
# group permissions will be applied to it. If the directory already
# exists, portage will not modify it's permissions.
PORT_LOGDIR=""
PORTAGE_RSYNC_RETRIES="-1"
#
# PORTAGE_RSYNC_EXTRA_OPTS can be used to feed additional options to the rsync
# command used by `emerge --sync`. This will not change the default options
# which are set by PORTAGE_RSYNC_OPTS (don't change those unless you know
# exactly what you're doing).
PORTAGE_RSYNC_EXTRA_OPTS=""
#
# Advanced Features
# =================
#
# EMERGE_DEFAULT_OPTS allows emerge to act as if certain options are
# specified on every run. Useful options include --ask, --verbose,
# --usepkg and many others. Options that are not useful, such as --help,
# are not filtered.
#EMERGE_DEFAULT_OPTS="--ask --ask-enter-invalid --with-bdeps=y --keep-going=y --quiet-unmerge-warn --quiet-build=y --jobs=3 --ignore-built-slot-operator-deps=y"
#
# INSTALL_MASK allows certain files to not be installed into your file system.
# This is useful when you wish to filter out a certain set of files from
# ever being installed, such as INSTALL.gz or TODO.gz
#INSTALL_MASK=""
#
# MAKEOPTS provides extra options that may be passed to 'make' when a
# program is compiled. Presently the only use is for specifying
# the number of parallel makes (-j) to perform. The suggested number
# for parallel makes is CPUs+1.
MAKEOPTS="-j5"
#
# PORTAGE_NICENESS provides a default increment to emerge's niceness level.
# Note: This is an increment. Running emerge in a niced environment will
# reduce it further. Default is unset.
PORTAGE_NICENESS=3
#
# PORTAGE_IONICE_COMMAND provides a command for portage to call in order to
# adjust the io priority of portage and it's subprocesses. Default is
# unset.
PORTAGE_IONICE_COMMAND="ionice -c 3 -p \${PID}"
#
# AUTOCLEAN enables portage to automatically clean out older or overlapping
# packages from the system after every successful merge. This is the
# same as running 'emerge -c' after every merge. Set with: "yes" or "no".
# This does not affect the unpacked source. See 'noclean' below.
#
# Warning: AUTOCLEAN="no" can cause serious problems due to overlapping
# packages. Do not use it unless absolutely necessary!
#AUTOCLEAN="yes"
#
# FEATURES defines actions portage takes by default. This is an incremental
# variable. See the make.conf(5) man page for a complete list of supported
# values and their respective meanings.
#FEATURES="ccache distcc installsources \
# splitdebug test userpriv usersandbox"
# CCACHE_SIZE and CCACHE_DIR are used to control the behavior of ccache, and
# and are only used if "ccache" is in FEATURES.
#
# CCACHE_SIZE sets the space limitations for ccache. The default size is
# "2G", or 2 gigabytes. Units are specified with 'G', 'M', or 'K'.
#
CCACHE_SIZE="2G"
#
# CCACHE_DIR sets the ccache path. If not specified, portage will default
# to "${PORTAGE_TMPDIR}/ccache".
#
# Note that to display ccache statistics outside of portage, you must
# remember to give the correct path to the cache.
#
# # CCACHE_DIR=/var/tmp/ccache ccache -s
#
CCACHE_DIR="${PORTAGE_TMPDIR}/ccache"
PORTDIR="/var/db/repos/funtoo"
PORTDIR_OVERLAY="/var/db/repos/bar"
Код: Выделить всё
## ls /var/db
distfiles Makefile pkg repos sudo
awesome tupoll # ls /var/db/repos
cache_930c3ed4a5f89f74fd810585751a06e3.timestamp installed.xml
cache_930c3ed4a5f89f74fd810585751a06e3.xml bar funtoo make.conf
Код: Выделить всё
zfs list
NAME USED AVAIL REFER MOUNTPOINT
free 23,6G 205G 136K none
free/FUNTOO 466M 205G 136K none
free/FUNTOO/build-dir 465M 205G 465M /var/tmp/portage
free/FUNTOO/ccache 136K 205G 136K /var/tmp/ccache
free/HOME 13,4G 205G 13,4G /home
free/ROOT 6,20G 205G 136K none
free/ROOT/funtoo 6,20G 205G 4,37G /
free/VAR 3,56G 205G 136K none
free/VAR/db 122M 205G 122M /var/db
free/VAR/distfiles 1,32G 205G 1,32G /var/db/distfiles
free/VAR/repos 2,12G 205G 2,12G /var/db/repos
-------------------------------------------------------------------
zfs create -o mountpoint=none -o setuid=off free/VAR
zfs create -o mountpoint=/var/db -o atime=off free/VAR/db
zfs create -o mountpoint=/var/db/distfiles free/VAR/distfiles
zfs create -o mountpoint=/var/db/repos free/VAR/repos
Добавление стороннего репозитория(оверлея) теперь отличается от гентушного
eix читает карту /etc/portage/make.conf,туда вписываем место расположения
в моем случае оверлей /bar /var/db/repos/bar
Приоритет использования выставляется в /etc/portage/repos.conf/layman.cfg
Команда на добавление оверлея стандартная
Код: Выделить всё
layman -a bar && eix-update
Код: Выделить всё
layman -d funtoo layman -a gentoo
настройки в /etc/portage/
Сделано на основании http://www.funtoo.org/Package:Portage_(Funtoo) http://www.funtoo.org/ZFS_Install_Guide
Правильный линукс-BSD.
Re: Funtoo.Настройка для пользователя сторонних оверлеев.
Просьба помочь навести порядок в настройках,любой совет на вес золота.
Правильный линукс-BSD.