Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Build Minimal Installation CD with systemd via Catalyst
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
Pravorskii Andrii
n00b
n00b


Joined: 06 Jun 2017
Posts: 6

PostPosted: Tue Sep 04, 2018 11:26 am    Post subject: Build Minimal Installation CD with systemd via Catalyst Reply with quote

I try build Minimal Installation CD with systemd instead OpenRC via Catalyst. I use specs files from RelEng repository.

Currently it is not ready for building ISO images with systemd. I tried to find how I can improve instruments to make possible solve described issue.

There is file catalyst/targets/livecd_stage1.py. It contains code that will be executed during building Minimal Installation CD stage1.

It contains (line 45) hard-coded requirement of package app-misc/livecd-tools. And app-misc/livecd-tools depends from OpenRC.

So, I have proposal how we can add support systemd to livecd_stage1.
  • Package:
    • Create additional package (app-misc/livecd-tools-systemd)
    • Or add USE-flag "systemd" to existing package app-misc/livecd-tools and improve existing package.

  • Target "livecd_stage1" in Catalyst:
    • Do nothing, USE-flag "systemd" in package "app-misc/livecd-tools" will do everything.
    • Or add some logic to livecd_stage1 that will select proper package (app-misc/livecd-tools or app-misc/livecd-tools-systemd)
    • Or add extra target "livecd_systemd_stage1"

I would be grateful to receive clarifications before preparing the patches.
Back to top
View user's profile Send private message
geeksheik
Tux's lil' helper
Tux's lil' helper


Joined: 07 Sep 2003
Posts: 99
Location: Zürich, Switzerland

PostPosted: Thu Jan 03, 2019 9:34 am    Post subject: Reply with quote

Sorry to see that you haven't gotten a response here. I've just started dealing with these issues as well. Did you make any progress?

I've been working with the livedvd images. I put together a working stage1 *without* systemd. I'd like to create a systemd-compatible version as well, but as you've correctly-observed, it requires a customized livecd-tools package.

This does not appear to be a very challenging package to port to systemd; I'm just not there yet. I need to get my stage2 working first. At the moment, I'm trying to determine the intent of the @REPO_DIR@ symbol; this doesn't seem to be documented anywhere.

Here is my functional livedvd-stage1.spec:

Code:

subarch: amd64
version_stamp: installer-latest
target: livecd-stage1
rel_type: default
profile: default/linux/amd64/17.0/desktop
snapshot: latest
source_subpath: default/stage3-amd64-desktop-latest
portage_confdir: /projects/gentoo-live-catalyst/etc/portage/

livecd/use:
   branding
   livecd
   socks5
   -systemd

livecd/packages:
   app-admin/logrotate
   app-admin/syslog-ng
   app-arch/unrar
   app-arch/unzip
   app-benchmarks/cpuburn
   app-cdr/bin2iso
   app-cdr/cdrdao
   app-cdr/cdrtools
   app-cdr/dvd+rw-tools
   app-crypt/gnupg
   app-editors/bluefish
   app-editors/emacs
   app-editors/gvim
   app-editors/vim
   app-editors/xemacs
   app-misc/mc
   app-misc/pax-utils
   app-misc/screen
   app-office/gnucash
   app-office/openoffice-bin
   app-portage/genlop
   app-portage/gentoolkit
   app-portage/layman
   app-portage/mirrorselect
   app-portage/portage-utils
   app-shells/bash-completion
   app-shells/gentoo-bashcomp
   dev-util/ccache
   dev-vcs/cvs
   dev-vcs/git
   dev-util/indent
   dev-util/ltrace
   dev-util/strace
   dev-texlive/texlive-xetex
   dev-vcs/subversion
   dev-util/valgrind
   kde-apps/k3b
   kde-plasma/plasma-meta
   mail-client/thunderbird-bin
   media-gfx/fbgrab
   media-gfx/gimp
   media-gfx/inkscape
   media-gfx/xsane
   media-sound/easytag
   media-sound/grip
   media-sound/hydrogen
   media-sound/rhythmbox
   media-video/dvdrip
   media-video/lsdvd
   media-video/mplayer
   media-video/vlc
   net-analyzer/netcat
   net-analyzer/nmap
   net-analyzer/tcpdump
   net-analyzer/traceroute
   net-analyzer/wireshark
   net-dialup/minicom
   net-firewall/iptables
   net-fs/cifs-utils
   net-fs/nfs-utils
   net-fs/samba
   net-im/pidgin
   net-irc/hexchat
   net-misc/dhcpcd
   net-misc/iputils
   net-misc/ntp
   net-misc/rdesktop
   net-misc/whois
   net-p2p/rtorrent
   net-print/cups
   net-proxy/dante
   net-proxy/tsocks
   net-vpn/vpnc
   net-wireless/wireless-tools
   net-wireless/wpa_supplicant
   sys-apps/dmidecode
   sys-apps/ethtool
   sys-apps/hdparm
   sys-apps/iproute2
   sys-block/parted
   sys-apps/lm_sensors
   sys-apps/mlocate
   sys-block/gparted
   sys-boot/grub
   sys-boot/lilo
   sys-boot/syslinux
   sys-devel/distcc
   sys-devel/gdb
   sys-fs/cryptsetup
   sys-fs/dosfstools
   sys-fs/e2fsprogs
   sys-fs/hfsutils
   sys-fs/jfsutils
   sys-fs/mdadm
   sys-fs/ntfs3g
   sys-fs/udftools
   sys-fs/xfsprogs
   sys-fs/xfsdump
   sys-kernel/genkernel
   sys-libs/gpm
   sys-process/htop
   sys-process/lsof
   sys-process/vixie-cron
   www-client/links
   www-client/firefox-bin
   x11-base/xorg-x11
   x11-misc/xscreensaver
   x11-misc/xsensors
   x11-themes/gentoo-artwork-livecd


A set of use flags was required; this is still a bit messy, but it produced a stage1 without error:

Code:

>=sys-apps/util-linux-2.33-r1 static-libs
>=sys-libs/zlib-1.2.11-r2 minizip
>=app-text/texlive-core-2017-r4 xetex
>=dev-qt/qtwebengine-5.11.1 widgets
>=dev-qt/qtwebchannel-5.11.1 qml
>=dev-libs/libxml2-2.9.8 icu
>=dev-libs/boost-1.65.0 icu
>=sys-apps/util-linux-2.33-r1 tty-helpers
>=dev-lang/python-2.7.15:2.7 sqlite
>=sys-libs/tdb-1.3.16 python
>=sys-libs/tevent-0.9.37 python
>=app-crypt/pinentry-1.1.0-r2 gnome-keyring
>=media-libs/mesa-18.2.8 wayland gles2
>=sys-auth/pambase-20150213-r2 systemd
>=gnome-base/gnome-control-center-3.24.4 networkmanager
>=net-fs/samba-4.8.6-r2 client
>=media-libs/harfbuzz-2.0.2 icu
>=media-plugins/alsa-plugins-1.1.6 pulseaudio
sys-apps/dbus -systemd
gnome-base/gnome-control-center -systemd
gnome-base/gnome-core-apps -systemd
gnome-base/gnome -systemd
>=media-plugins/grilo-plugins-0.3.7 tracker
>=media-libs/grilo-0.3.6 playlist
>=dev-libs/libgdata-0.17.9-r1 gnome-online-accounts
>=media-libs/gegl-0.3.26 jpeg2k raw
>=www-servers/apache-2.4.34-r2 apache2_modules_auth_digest
>=media-libs/gst-plugins-base-1.14.1 theora
>=dev-libs/folks-0.11.4 eds
>=gnome-extra/evolution-data-server-3.24.7 vala
>=app-misc/tracker-1.12.4 gstreamer
media-libs/libmediaart -gtk
kde-plasma/plasma-meta -pam
sys-auth/pambase -systemd consolekit
kde-plasma/plasma-meta -systemd
virtual/udev -systemd
virtual/libudev -systemd
net-misc/openssh -pam
gnome-base/gnome-keyring -ssh-agent
app-crypt/pinentry -gnome-keyring
sys-auth/polkit -pam
x11-misc/sddm -pam
sys-apps/util-linux -pam
sys-libs/libcap -pam
sys-auth/consolekit -pam
sys-auth/pambase -systemd
=sys-auth/pambase-20150213-r2 -systemd
x11-misc/xscreensaver -pam
sys-auth/consolekit pam


In some follow-up step, I'll remove the redundant flags. I just realized the contradiction with my consolekit pam flag, due to a late-night debugging session.

I also added some systemd-related files to package.mask for debugging purposes; this shouldn't be necessary, but here it is:
Code:

sys-apps/gentoo-systemd-integration
sys-apps/systemd
virtual/tmpfiles
Back to top
View user's profile Send private message
realkstrawn93
n00b
n00b


Joined: 27 Sep 2019
Posts: 2
Location: Mission Viejo, California

PostPosted: Fri Sep 27, 2019 12:01 pm    Post subject: Reply with quote

I personally submitted a bug report about this issue myself, which includes a couple of patches replacing the hard dependency with a USE flag conditional dependency. Now it’s just a waiting game to see if these patches are accepted or not.
Back to top
View user's profile Send private message
realkstrawn93
n00b
n00b


Joined: 27 Sep 2019
Posts: 2
Location: Mission Viejo, California

PostPosted: Fri Sep 27, 2019 9:16 pm    Post subject: Reply with quote

Workaround: add “!(app-misc/livecd-tools)” to “livecd/packages” section
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum