tokiclover / mkinitramfs-ll

Lightweight, modular and powerfull initramfs generating tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gentoo install not functional

herriett opened this issue · comments

The install works (no errors), but is not functional afterwards:

ERROR: mkinitramfs-ll.bash: no mkinitramfs-ll.conf found

When executed inside /etc, where the conf file resides:
ERROR: mkinitramfs-ll.bash: /usr/share//usr dir not found

/usr/share/mkinitramfs-ll/ has the hooks, scripts etc. installed.

It does work when manually untared into a directory and ./mkinitramfs-ll.bash is used...

The error is obvious, you don't have the configuration file installed.
I cannot guess you ended up with the bash scripts installed without the
configuration file. More data is needed... you should have bash USE flag
enabled.

On Thu, Jul 07, 2016 at 11:55:03PM -0700, hollaho wrote:

The install works (no errors), but is not functional afterwards:

ERROR: mkinitramfs-ll.bash: no mkinitramfs-ll.conf found

When executed inside /etc, where the conf file resides:
ERROR: mkinitramfs-ll.bash: /usr/share//usr dir not found

/usr/share/mkinitramfs-ll/ has the hooks, scripts etc. installed.

It does work when manually untared into a directory and ./mkinitramfs-ll.bash is used...


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
#40

I confirm the issue.
The .conf file is installed actually under /etc/, after git clone + eix-sync + emerge. No install issue reported. The mkinitramfs-ll.conf file itself looks legit.
It's just that bash cannot find the right path to this conf file, possibly because the /etc root is not the appropriate place to look for the conf file. I suspect an inadequate install copy under /etc by the automated gentoo install script.
Platform is Sabayon 16.07 for x86_64 processors and git clone is just fresh.

/etc/mkinitramfs-ll.conf file

#
# Header: mkinitramfs-ll/mkinitramfs-ll.conf, 2015/05/28 Exp
#
# opts an associative array which hold pretty much every single option,
# so one could assign default values for pretty much everything: opts[-arg]
#  being an options or a command line switch. opts[-arg] is a colon ':' 
# separated list for each option or arg that is a list.
#
# To enable default options e.g. {all,hook,luks,lvm,toi,gpg,squashd,...} use
# 'opts[-luks]=:', 'opts[-lvm]=:', opts[-hook]+=:zram:zfs etc.
#
# opts[-module-] a list of kernel module group, nls_cp437:vfat should be putted
# to remdev group for vfat remdev users for example.
#
#   Support kernel module dependencies, so no need to stuff modules groups;
#   Support kernel module groups in the boot group e.g. kms group.
#
#   Support an improved regular expression kernel module name, e.g. appending
#   `serpent' to opts[-module-dm-crypt] would rightly add serpent_generic and
#   architecture specific modules serpent-{avx{2,-x86_64},sse-x86_64}.
#
#   Support extended kernel module group that can be appended directly to
#   `module' kernel cmdline argument: module=group;
#   just create opts[-module-] grooups and then append them to
#   opts[-module-group].
#
# Every item if built as module will be included or nothing if not, so one
# can leave as is or add a few items.
#
#
# Default kernel module groups:
# User groups are also supported e.g. kms module group
#
opts[-module-boot]+=:kms:ext2:ext3:ext4
opts[-module-device-mapper]+=:device-mapper
opts[-module-dm-crypt]+=aes:dm-crypt:sha256:sha512:wp512:ecb:lrw:xts:twofish:serpent
opts[-module-dm-raid]+=:dm-raid:dm-mirror:dm-multipath:dm-snapshot
opts[-module-gpg]+=:cast5
opts[-module-kms]+=:i915:nouveau:radeon
opts[-module-raid]+=:raid0:raid10:raid1:raid456
opts[-module-remdev]+=:nls_cp437:vfat
opts[-module-squashd]+=:aufs:overlay:squashfs
opts[-module-swsusp]+=
opts[-module-tuxonice]+=:tuxonice_swap:tuxonice_userui:tuxonice_file
opts[-module-zfs]+=:zfs
opts[-module-zram]+=:zram
opts[-module-bcache]+=:bcache
opts[-module-btrfs]+=:btrfs
#
# A list of kernel modules to include in the initramfs that can be loaded
# at boot time if passed to *module* kernel cmdline argument
#
opts[-module]+=:uvesafb
#
# Default kernel module group included in the initramfs
#
opts[-module-group]+=:boot:kms:remdev:swsusp
#
# A list of binaries to include into the initramfs, library
# dependencies will be copied over using `$(ldd /path/to/bin)'.
#
opts[-bin]+=:blkid:v86d
#
# opts[-bin-] are list of binaries to include if  hook or script
# is included in the initramfs
#
opts[-bin-zfs]=zfs:zpool
opts[-bin-btrfs]=btrfs:btrfsck:fsck.btrfs
#
# A colon separated list of console fonts to include into the initramfs
#
opts[-font]+=:ter-g12n:ter-g14n:ter-112n:ter-v12n
#
# A colon separated list of keymap to include in the initramfs
#
opts[-keymap]+=:azerty:dvorak:unicode
#
# An array holding *environment* variables or kernel cmdline arguments,
# To disable default kernel cmdline, append `env=0'
# or case insensitive disable|false|off|no for that matter.
#
# Note, however, this will disbale everything. Or else, a colon separated
# list can be used instead e.g. `env=:root:'; (NOTE: start/end with a colon `:').
#
env=(
        ${MIR_EXTRA_ENV}
        # Disable applets/binaries checking
        'ENV_CHK=false'
        # Set a default rootfs mount option
        #'rootflags=user_xattr'
        # Set up root options with fsck enabled
        #'root=root-sda2' 'rootfs=ext4:no'
        # Set up root key mode (dm-crypt LUKS)
        #'luks=pwd'
        # Setup init variable if necessary
        #'init=/sbin/runit-init'
        # Set up extra option (squash(ed) directory)
        #'squashd=:aufs:+LOCAL:opt'
        # Set this variable to keep some system file systems mounted
        #'SYSFS=/run:/sys:/dev:/proc'
)
#
# vim:fenc=utf-8:ft=sh:ci:pi:sts=0:sw=4:ts=4:
#

make.conf file

# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
# Compiler stuff
GRAPHITE="-floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block"
# Only enable Graphite via package.env
CFLAGS="-O2 -march=core-avx2 -pipe" # -ftree-vectorize ${GRAPHITE}"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j16 -s"
# Portage stuff
ACCEPT_KEYWORDS="~amd64"
FEATURES="parallel-fetch protect-owned compressdebug splitdebug"
CCACHE_SIZE="2G"
CCACHE_DIR="/var/ccache"
LINGUAS="en en_US af ar az bg bn br bs ca cs cy da de el en_GB eo es et eu fa fi fr fy ga gl he hi hr hu is it ja kk km ko lt lv mk mn ms nb nds nl nn pa pl pt pt_BR ro ru rw se sk sl sr sr@Latn ss sv ta tg tr uk uz vi zh_CN zh_TW es_AR es_ES fy_NL ga_IE gu gu_IN nb_NO nn_NO pt_PT sv_SE zh"
## USE ##
SAB_BAD="-kdeprefix -arts -qt3 -beagle -gnome -evo -mono -eds -apm -oss -branding -esd"
SAB_MEDIA="musicbrainz sdl pulseaudio wmf fame cdr dvi mp3rtp xine cddb alsa dvb dvd bluray network dvdread ipod audiofile artswrappersuid dvdr jack dri cdda libav mjpeg mmx joystick xvmc cpudetection v4l v4l2"
SAB_CODECS="x264 x265 gsm lame opus dv mp3 stream live openal theora ogg a52 win32codecs matroska xvid flac ffmpeg aac speex real dts musepack"
SAB_SYSTEM="cjk unicode gnutls nptl gcj udev systemd logind -consolekit kerberos acl dbus bash-completion lzo rar policykit xcb bzip2 bidi wifi lm_sensors acpi usb pcmcia bluetooth irda ieee1394 perl python"
SAB_FILESYS="fat hfs jfs xfs ntfs reiserfs sysfs inotify"
SAB_PRINT="cups ppds foomatic-db gimpprint freetype xprint scanner"
SAB_XSYS="cairo X opengl png gif gtk qt4 qt5 qt3support xpm tiff xinerama aiglx svg gphoto2 dga lcd openexr wayland" 
SAB_DESKTOP="kdehiddenvisibility gmp libnotify rdesktop pda zeroconf kdeenablefinal visualization avahi startup-notification accessibility"
SAB_BROWSER="nsplugin firefox mozdevelop xulrunner"
SAB_COMMS="jabber msn yahoo icq irc aim rss slp mail imap http2"
USE="bash ${SAB_BAD} ${SAB_MEDIA} ${SAB_CODECS} ${SAB_SYSTEM} ${SAB_FILESYS} ${SAB_PRINT} ${SAB_XSYS} ${SAB_DESKTOP} ${SAB_BROWSER} ${SAB_COMMS}"
## DEVICES ##
INPUT_DEVICES="evdev void"
VIDEO_CARDS="fbdev vesa radeonsi radeon"
LIRC_DEVICES="audio audio_alsa devinput pctv"
ALSA_CARDS="emu10k1x darla20 darla24 emu10k1 gina20 gina24 hdsp hdspm ice1712 indigo indigoio layla20 layla24 mia mixart mona pcxhr rme32 rme96 sb16 sbawe sscape usbusx2y vx222 usb-usx2y"
CAMERAS="agfa_cl20 casio_qv dimagev dimera3500 kodak_dc120 kodak_dc210 kodak_dc240 kodak_dc3200 kodak_ez200 konica_qm150 panasonic_coolshot panasonic_dc1000 panasonic_dc1580 panasonic_l859 polaroid_pdc320 polaroid_pdc640 polaroid_pdc700 ricoh_g3 sipix_blink sipix_blink2 sipix_web2 sony_dscf1 sony_dscf55 toshiba_pdrm11 adc65 aox barbie canon clicksmart310 digigr8 digita directory enigma13 fuji gsmart300 hp215 iclick jamcam jd11 konica largan lg_gsm mars mustek pccam300 pccam600 ptp2 ricoh samsung sierra smal sonix soundvision spca50x sq905 stv0674 stv0680 sx330z template"
## OFFICE ##
LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer pdfimport wiki-publisher"
## QEMU ##
QEMU_USER_TARGETS="alpha arm armeb cris i386 m68k microblaze mips mipsel ppc ppc64 ppc64abi32 sh4 sh4eb sparc sparc32plus sparc64 x86_64"
QEMU_SOFTMMU_TARGETS="x86_64 arm cris i386 m68k microblaze mips mips64 mips64el mipsel ppc ppc64 ppcemb sh4 sh4eb sparc sparc64"
## PORTAGE CONFIG ##
PORTDIR_OVERLAY="/usr/local/portage"
source /var/lib/layman/make.conf
CONFIG_PROTECT="/usr/share/config/kdm /etc /etc/conf.d /etc/init.d"
# /lib/modules mask is useful for our internal tinderbox
CONFIG_PROTECT_MASK="/etc/skel /lib/modules"
APACHE2_MPMS="prefork"
GENTOO_MIRRORS="ftp://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ http://archive.mmu.edu.my/gentoo rsync://gentoo.bloodhost.ru/gentoo-distfiles ftp://gentoo.mirrors.tds.net/gentoo ftp://ftp.halifax.rwth-aachen.de/gentoo/ rsync://mirror.neolabs.kz/gentoo http://ftp.gentoo.bg/ http://ftp.cc.uoc.gr/mirrors/linux/gentoo/ ftp://ftp.cc.uoc.gr/mirrors/linux/gentoo/ ftp://mirrors.tera-byte.com/pub/gentoo"
USE_PYTHON="2.7"
PYTHON_TARGETS="python2_7 python3_4"
# Some more forced targets
PHP_TARGETS="php5-5"
RUBY_TARGETS="ruby21"
# Apache suEXEC default UMASK
# See bug 3544
SUEXEC_UMASK=022
# Setup GRUB platforms
GRUB_PLATFORMS="efi-32 efi-64 pc"
# Support both 64bit and 32bit
ABI_X86="64 32"
# Set PORTDIR for backward compatibility with various tools:
#   gentoo-bashcomp - bug #478444
#   euse - bug #474574
#   euses and ufed - bu

The error is obvious, you don't have the configuration file installed.

The config file is obviously installed into /etc by the gentoo package and is somehow not found when the script is executed outside /etc directory.

When executed inside /etc another error comes:

ERROR: mkinitramfs-ll.bash: /usr/share//usr dir not found

When the whole package is manually extracted into e.g. /usr/src/mkinitramfs-ll and executed from there, then it works. So the problem is with the gentoo installer settings somehow.

I can confirm that the bash use flag is not globally enabled, but it is for mkinitramfs-ll:
sys-kernel/mkinitramfs-ll [1] 0.22.3(00:28:19 19.06.2016)(bash btrfs bzip2 device-mapper e2fs lz4 lzma xz zram -aufs -dm-crypt -dmraid -f2fs -fbsplash -gzip -jfs -lzo -mdadm -reiserfs -squashfs -xfs -zfs -zsh)

Issue confirmed here as well, sorry for the delay to reply to this. I
was more than busy with other stuff. I will look at it ASAP. It's simple
issue... an old one at it. It's just that the Makefile fails at rightly
putting the full path to the configuration file.

Sigh...

On Sat, Jul 16, 2016 at 02:45:12AM -0700, hollaho wrote:

The error is obvious, you don't have the configuration file installed.

The config file is obviously installed into /etc by the gentoo package and is somehow not found when the script is executed outside /etc directory.

When executed inside /etc another error comes:

ERROR: mkinitramfs-ll.bash: /usr/share//usr dir not found

When the whole package is manually extracted into e.g. /usr/src/mkinitramfs-ll and executed from there, then it works. So the problem is with the gentoo installer settings somehow.

I can confirm that the bash use flag is not enabled here. That use flag seems to be only used by mkinitramfs-ll - it should not be required for a working installation or the gentoo package should declare the use-flag mandatory if it is.


You are receiving this because you commented.
Reply to this email directly or view it on GitHub:
#40 (comment)

Installation path is now fixed; please upgrade to v0.22.4.

Now, the bash use flag is enabled by default by the ebuild in
bar-overlay. I don't know
where you're getting the build for installation, so please, provide
emerge --info sys-kernel/mkinitramfs-ll. The reason this use flag is
there is that, there are POSIX compatible shell scripts instead of
{ba,z}sh scripts in the distribution. I am not confortable with those
scripts because they lack my old habits of setting my configs. So,
anybody can choose the right scripts for its purpose. If none of
{ba,z}sh is set, then the POSIX shell scripts will be installed instead.
So, be carefull with that.

Both those errors should be fixed now.

On Sat, Jul 16, 2016 at 02:45:12AM -0700, hollaho wrote:

The error is obvious, you don't have the configuration file installed.

The config file is obviously installed into /etc by the gentoo package and is somehow not found when the script is executed outside /etc directory.

When executed inside /etc another error comes:

ERROR: mkinitramfs-ll.bash: /usr/share//usr dir not found

When the whole package is manually extracted into e.g. /usr/src/mkinitramfs-ll and executed from there, then it works. So the problem is with the gentoo installer settings somehow.

I can confirm that the bash use flag is not enabled here. That use flag seems to be only used by mkinitramfs-ll - it should not be required for a working installation or the gentoo package should declare the use-flag mandatory if it is.


You are receiving this because you commented.
Reply to this email directly or view it on GitHub:
#40 (comment)