Stripping nemesis to bare minimum and rebuilding with pman

Arch based Porteus community project

Moderator: M. Eerie

User avatar
francois
Contributor
Contributor
Posts: 6434
Joined: 28 Dec 2010, 14:25
Distribution: xfce plank porteus nemesis
Location: Le printemps, le printemps, le printemps... ... l'hiver s'essoufle.

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#16 by francois » 15 Dec 2016, 04:40

@jack:
Take all your time. We are just having fun, though this is serious stuff. :wink:

Going to bed now as I work early tomorrow morning. :twisted:
Prendre son temps, profiter de celui qui passe.

User avatar
ncmprhnsbl
DEV Team
DEV Team
Posts: 3924
Joined: 20 Mar 2012, 03:42
Distribution: v5.0-64bit
Location: australia
Contact:

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#17 by ncmprhnsbl » 15 Dec 2016, 04:42

guys....what about mc?

but.. what Blaze is getting at, is to save the script(in gui) to somewhere conveniant like / (in a module if need be or rootcopy) ,
make it executable: chmod +x script.sh
then when you boot into text mode , just run the script: sh script.sh so no copy/paste/ in console

as well there are some problems with the list:

Code: Select all

error: target not found: cower
error: target not found: eudev-systemdcompat
error: target not found: ipw2100
error: target not found: ipw2200
:: There are 2 providers available for libdbus:
:: Repository core
   1) dbus  2) dbus-x11
error: target not found: ntfs-3g-fuse
error: target not found: pacaur


:: Replace eudev-systemdcompat with community/eudev-systemd? [Y/n] y
:: Replace eudev-systemdcompat with community/libeudev-systemd? [Y/n] y
:: Replace libdbus with core/dbus? [Y/n] y
heres a revised list: (not sure about the dbus and eudev-systemd stuff, might soon find out)

Code: Select all

pacman -S acl acpid acpid-openrc archlinux-keyring attr bash bzip2 ca-certificates ca-certificates-cacert ca-certificates-mozilla ca-certificates-utils cdrtools cgmanager cgmanager-openrc consolekit consolekit-openrc coreutils cpio cronie cronie-openrc curl db dbus-glib dbus dbus-openrc  device-mapper device-mapper-openrc dhclient dhcpcd dhcpcd-openrc dialog diffutils dmidecode dnssec-anchors dosfstools downgrade e2fsprogs elfutils eudev eudev-systemd eventlog expac expat file filesystem findutils fuse gawk gcc-libs gdbm gettext glib-networking glib2 glibc glibc-openrc gmp gnupg gnutls gpgme gpm gpm-openrc gptfdisk grep gsettings-desktop-schemas gzip haveged haveged-openrc hddtemp hdparm hwids iana-etc inetutils inetutils-openrc inotify-tools inxi iproute2 iptables iptables-openrc iputils ipw2100-fw ipw2200-fw jansson js17 json-c kbd kbproto keyutils kmod krb5 ldns less libarchive libassuan libatomic_ops libcap libdaemon libdbi libedit libelf libevdev libffi libgcrypt libgpg-error libgudev libidn libinput libksba libldap libmm-glib libndp libnewt libnih libnl libnm-glib libpcap libpgm libproxy libsasl libseccomp libsodium libsoup libssh2 libtasn1 libteam libtirpc libtool libunistring libusb libutil-linux libx11 libxau libxcb libxdmcp libxml2 linux-api-headers lm_sensors logrotate lsof lynx lz4 lzo manjaro-keyring mc mdadm mdadm-openrc mpfr mtdev nano ncurses net-tools netifrc nettle networkmanager-consolekit networkmanager-openrc npth nspr nss ntfs-3g ntp ntp-openrc openrc openresolv openssh openssh-openrc openssl openvpn openvpn-openrc p11-kit package-query pacman pacman-mirrorlist pam pambase parted patch pciutils pcre perl pinentry polkit-consolekit popt ppp procps-ng psmisc python readline rfkill rp-pppoe rsync run-parts screen sdparm sed shadow slang sqlite squashfs-tools sudo sysfsutils syslog-ng syslog-ng-openrc sysvinit tar tcl texinfo tzdata udev-openrc unrar unzip usb_modeswitch usbutils util-linux vi wget which wpa_supplicant xcb-proto xfsprogs xproto xz yajl zd1211-firmware zeromq zip zlib
Forum Rules : https://forum.porteus.org/viewtopic.php?f=35&t=44

Jack
Contributor
Contributor
Posts: 1857
Joined: 09 Aug 2013, 14:25
Distribution: Porteus and Nemesis
Location: USA

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#18 by Jack » 15 Dec 2016, 04:57

ncmprhnsbl wrote:

Code: Select all

pacman -S acl acpid acpid-openrc archlinux-keyring attr bash bzip2 ca-certificates ca-certificates-cacert ca-certificates-mozilla ca-certificates-utils cdrtools cgmanager cgmanager-openrc consolekit consolekit-openrc coreutils cpio cronie cronie-openrc curl db dbus-glib dbus dbus-openrc  device-mapper device-mapper-openrc dhclient dhcpcd dhcpcd-openrc dialog diffutils dmidecode dnssec-anchors dosfstools downgrade e2fsprogs elfutils eudev eudev-systemd eventlog expac expat file filesystem findutils fuse gawk gcc-libs gdbm gettext glib-networking glib2 glibc glibc-openrc gmp gnupg gnutls gpgme gpm gpm-openrc gptfdisk grep gsettings-desktop-schemas gzip haveged haveged-openrc hddtemp hdparm hwids iana-etc inetutils inetutils-openrc inotify-tools inxi iproute2 iptables iptables-openrc iputils ipw2100-fw ipw2200-fw jansson js17 json-c kbd kbproto keyutils kmod krb5 ldns less libarchive libassuan libatomic_ops libcap libdaemon libdbi libedit libelf libevdev libffi libgcrypt libgpg-error libgudev libidn libinput libksba libldap libmm-glib libndp libnewt libnih libnl libnm-glib libpcap libpgm libproxy libsasl libseccomp libsodium libsoup libssh2 libtasn1 libteam libtirpc libtool libunistring libusb libutil-linux libx11 libxau libxcb libxdmcp libxml2 linux-api-headers lm_sensors logrotate lsof lynx lz4 lzo manjaro-keyring mc mdadm mdadm-openrc mpfr mtdev nano ncurses net-tools netifrc nettle networkmanager-consolekit networkmanager-openrc npth nspr nss ntfs-3g ntp ntp-openrc openrc openresolv openssh openssh-openrc openssl openvpn openvpn-openrc p11-kit package-query pacman pacman-mirrorlist pam pambase parted patch pciutils pcre perl pinentry polkit-consolekit popt ppp procps-ng psmisc python readline rfkill rp-pppoe rsync run-parts screen sdparm sed shadow slang sqlite squashfs-tools sudo sysfsutils syslog-ng syslog-ng-openrc sysvinit tar tcl texinfo tzdata udev-openrc unrar unzip usb_modeswitch usbutils util-linux vi wget which wpa_supplicant xcb-proto xfsprogs xproto xz yajl zd1211-firmware zeromq zip zlib
Is this a script or not? If it is then I can run it in text node and that would be great.
I just like Slackware because I think it teach you about Linux to build packages where Ubuntu is like Windows you just install programs you want.

User avatar
ncmprhnsbl
DEV Team
DEV Team
Posts: 3924
Joined: 20 Mar 2012, 03:42
Distribution: v5.0-64bit
Location: australia
Contact:

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#19 by ncmprhnsbl » 15 Dec 2016, 05:33

these can be removed from the list:

Code: Select all

warning: bzip2-1.0.6-5 is up to date -- reinstalling
warning: cgmanager-0.39-2 is up to date -- reinstalling
warning: db-5.3.28-3 is up to date -- reinstalling
warning: dmidecode-3.0-1 is up to date -- reinstalling
warning: dnssec-anchors-20150403-1 is up to date -- reinstalling
warning: eventlog-0.2.12-4 is up to date -- reinstalling
warning: filesystem-2015.09-1 is up to date -- reinstalling
warning: gptfdisk-1.0.1-2 is up to date -- reinstalling
warning: haveged-1.9.1-2 is up to date -- reinstalling
warning: hddtemp-0.3.beta15.52-2 is up to date -- reinstalling
warning: inotify-tools-3.14-4 is up to date -- reinstalling
warning: ipw2100-fw-1.3-7 is up to date -- reinstalling
warning: ipw2200-fw-3.1-5 is up to date -- reinstalling
warning: kbd-2.0.3-1 is up to date -- reinstalling
warning: kbproto-1.0.7-1 is up to date -- reinstalling
warning: keyutils-1.5.9-1 is up to date -- reinstalling
warning: libdaemon-0.14-3 is up to date -- reinstalling
warning: libdbi-0.9.0-2 is up to date -- reinstalling
warning: libgudev-230-1 is up to date -- reinstalling
warning: libnih-1.0.3-2 is up to date -- reinstalling
warning: libpgm-5.2.122-2 is up to date -- reinstalling
warning: libtirpc-1.0.1-2 is up to date -- reinstalling
warning: libxau-1.0.8-2 is up to date -- reinstalling
warning: libxdmcp-1.1.2-1 is up to date -- reinstalling
warning: lsof-4.89-1 is up to date -- reinstalling
warning: lzo-2.09-1 is up to date -- reinstalling
warning: mtdev-1.1.5-1 is up to date -- reinstalling
warning: pambase-20130928-1 is up to date -- reinstalling
warning: patch-2.7.5-1 is up to date -- reinstalling
warning: ppp-2.4.7-2 is up to date -- reinstalling
warning: psmisc-22.21-3 is up to date -- reinstalling
warning: rfkill-0.5-1 is up to date -- reinstalling
warning: squashfs-tools-4.3-4 is up to date -- reinstalling
warning: sysfsutils-2.1.0-9 is up to date -- reinstalling
warning: sysvinit-2.88-16 is up to date -- reinstalling
warning: usbutils-008-1 is up to date -- reinstalling
warning: vi-1:070224-2 is up to date -- reinstalling
warning: yajl-2.1.0-1 is up to date -- reinstalling
warning: zd1211-firmware-1.5-1 is up to date -- reinstalling
and linux-api-headers because its for a newer kernel
Jack wrote:Is this a script or not?
no its not but this is:
revised script (unneeded packages removed)

Code: Select all

#!/bin/bash
pacman -S acl acpid acpid-openrc archlinux-keyring attr bash ca-certificates ca-certificates-cacert ca-certificates-mozilla ca-certificates-utils cdrtools cgmanager-openrc consolekit consolekit-openrc coreutils cpio cronie cronie-openrc curdubdus-glib dbus dbus-openrc  device-mapper device-mapper-openrc dhclient dhcpcd dhcpcd-openrc dialog diffutils dosfstools downgrade e2fsprogs elfutils eudev eudev-systemd expac expat file findutils fuse gawk gcc-libs gdbm gettext glib-networking glib2 glibc glibc-openrc gmp gnupg gnutls gpgme gpm gpm-openrc grep gsettings-desktop-schemas gzip haveged-openrc hdparm hwids iana-etc inetut-fwwf-etutils--fwwf- inxi iproute2 iptables iptables-openrc iputils jansson js17 json-c kmod krb5 ldns less libarchive libassuan libatomic_ops libcap libedit libelf libeudev-systemd libevdev libffi libgcrypt libgpg-error libidn libinput libksba libldap libmm-glib libndp libnewt libnl libnm-glib libpcap libpgm libproxy libsasl libseccomp libsodium libsoup libssh2 libtasn1 libteam libtool libunistring libusb libutil-linux libx11 libxcb libxml2 lm_sensors logrotate lynx lz4 manjaro-keyring mc mdadm mdadm-o  nrc mpfr nano ncurses net-tools netifrc nettle networkmanager-consolekit networkmanager-openrc npth nspr nss ntfs-3g ntp ntp-openrc openrc openresolv openssh openssh-openrc openssl openvpn openvpn-openrc p11-kit package-query pacman pacman-mirrorlist pam parted pciutils pcre perl pinentry polkit-consolekit popt procps-ng python readline rp-pppoe rsync run-parts screen sdparm sed shadow slang sqlite sudo syslog-ng syslog-ng-openrc tar tcl texinfo tzdata udev-openrc unrar unzip usb_modeswitch util-linux wget which wpa_supplicant xcb-proto xfsprogs xproto xz zeromq zip zlib 
you might be asked to remove eudevsystemd-compat and libdbus ...y ..is your only choice...
EDIT: fixed nasty typo and added libeudev-systemd
Forum Rules : https://forum.porteus.org/viewtopic.php?f=35&t=44

User avatar
ncmprhnsbl
DEV Team
DEV Team
Posts: 3924
Joined: 20 Mar 2012, 03:42
Distribution: v5.0-64bit
Location: australia
Contact:

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#20 by ncmprhnsbl » 15 Dec 2016, 05:56

NOTE : fixed typo in the script in prevoius post :oops:

anyway the output should look like this :

Code: Select all

root /home/guest # pacman -S <list of packages>
loading packages...
looking for conflicting packages...
:: dbus and libdbus are in conflict. Remove libdbus? [y/N] y
:: eudev-systemd and eudev-systemdcompat are in conflict (systemd-tools). Remove eudev-systemdcompat? [y/N] y
:: ntfs-3g and ntfs-3g-fuse are in conflict (ntfsprogs). Remove ntfs-3g-fuse? [y/N] y

Packages (195) eudev-systemdcompat-226-1 [removal]  libdbus-1.10.4-1 [removal]
               ntfs-3g-fuse-2015.3.14-1 [removal]  acl-2.2.52-3  acpid-2.0.28-1
               acpid-openrc-20160528-1  archlinux-keyring-20161201-1
               attr-2.4.47-2  bash-4.4.005-1  ca-certificates-20160507-1
               ca-certificates-cacert-20140824-4
               ca-certificates-mozilla-3.27.2-1
               ca-certificates-utils-20160507-1  cdrtools-3.02a06-1
               cgmanager-openrc-20160528-1  consolekit-1.1.0-12
               consolekit-openrc-20160528-1  coreutils-8.26-1  cpio-2.12-3
               cronie-1.5.1-1  cronie-openrc-20160528-1  curl-7.51.0-2
               dbus-1.10.14-1  dbus-glib-0.108-1  dbus-openrc-20160907-1
               device-mapper-2.02.168-1  device-mapper-openrc-20160528-1
               dhclient-4.3.5-1  dhcpcd-6.11.3-1  dhcpcd-openrc-20160528-1
               dialog-1:1.3_20160828-1  diffutils-3.5-1  dosfstools-4.0-3
               downgrade-5.3.0-3  e2fsprogs-1.43.3-1  elfutils-0.167-1
               eudev-3.2-4  eudev-systemd-231-10  expac-8-1  expat-2.2.0-2
               file-5.29-1  findutils-4.6.0-2  fuse-2.9.7-1  gawk-4.1.4-2
               gcc-libs-6.2.1-1  gdbm-1.12-2  gettext-0.19.8.1-2
               glib-networking-2.50.0-1  glib2-2.50.2-1  glibc-2.24-2
               glibc-openrc-20160528-1  gmp-6.1.1-1  gnupg-2.1.16-1
               gnutls-3.4.17-1  gpgme-1.7.1-2  gpm-1.20.7-7
               gpm-openrc-20160528-1  grep-2.26-1
               gsettings-desktop-schemas-3.22.0+1+g6f52ab5-1  gzip-1.8-2
               haveged-openrc-20160528-1  hdparm-9.50-1  hwids-20161103-1
               iana-etc-20161101-1  inetutils-1.9.4-5
               inetutils-openrc-20160528-1  inxi-2.3.4-1  iproute2-4.8.0-1
               iptables-1.6.0-1  iptables-openrc-20160528-1
               iputils-20161105.1f2bb12-1  jansson-2.9-1  js17-17.0.0-4
               json-c-0.12.1-1  kmod-23-1  krb5-1.13.7-1  ldns-1.6.17-4
               less-487-1  libarchive-3.2.1-2  libassuan-2.4.3-1
               libatomic_ops-7.4.4-1  libcap-2.25-1  libedit-20160903_3.1-1
               libelf-0.167-1  libeudev-3.2-4  libevdev-1.5.5-1  libffi-3.2.1-2
               libgcrypt-1.7.3-1  libgpg-error-1.25-1  libidn-1.33-1
               libinput-1.5.3-1  libksba-1.3.4-2  libldap-2.4.44-2
               libmm-glib-1.6.4-1  libmnl-1.0.4-1  libndp-1.6-1
               libnewt-0.52.19-1  libnftnl-1.0.6-1  libnl-3.2.28-1
               libnm-glib-1.4.2-2  libpcap-1.8.1-2  libproxy-0.4.13-1
               libpsl-0.15.0-6  libsasl-2.1.26-8  libseccomp-2.3.1-1
               libsecret-0.18.5-1  libsodium-1.0.11-1  libsoup-2.56.0-1
               libssh2-1.8.0-1  libtasn1-4.9-2  libteam-1.23-1  libtool-2.4.6-6
               libunistring-0.9.6-2  libusb-1.0.21-1  libutil-linux-2.28.2-2
               libwacom-0.22-1  libx11-1.6.4-1  libxcb-1.12-1
               libxml2-2.9.4+12+ge905f08-2  lm_sensors-3.4.0-2
               logrotate-3.10.0-1  lynx-2.8.8-4  lz4-1:1.7.4.2-1
               manjaro-keyring-20160527-1  mc-4.8.18-1  mdadm-3.4-1
               mdadm-openrc-20160528-1  mpfr-3.1.5-1  nano-2.7.1-1
               ncurses-6.0+20161203-1  net-tools-1.60.20160710git-1
               netifrc-0.5.1-2  nettle-3.3-1  networkmanager-consolekit-1.4.2-1
               networkmanager-openrc-20160623-1  npth-1.3-1  nspr-4.13.1-1
               nss-3.27.2-1  ntfs-3g-2016.2.22-1  ntp-4.2.8.p9-1
               ntp-openrc-20160528-1  openrc-0.22.4-1  openresolv-3.8.1-1
               openssh-7.3p1-2  openssh-openrc-20160528-1  openssl-1.0.2.j-1
               openvpn-2.3.14-1  openvpn-openrc-20160528-1  p11-kit-0.23.2-1
               package-query-1.8-1  pacman-5.0.1-4
               pacman-mirrorlist-20161101-1  pam-1.3.0-1  parted-3.2-5
               pciutils-3.5.2-1  pcre-8.39-2  perl-5.24.0-2  pinentry-1.0.0-1
               pkcs11-helper-1.11-3  polkit-consolekit-0.113-5  popt-1.16-8
               procps-ng-3.3.12-1  python-3.5.2-3  readline-7.0.001-1
               rp-pppoe-3.12-1  rsync-3.1.2-2  run-parts-4.8.1-1
               screen-4.4.0-1  sdparm-1.10-1  sed-4.2.2-4  shadow-4.4-3
               slang-2.3.1a-1  sqlite-3.15.2-1  sudo-1.8.18.p1-1
               syslog-ng-3.6.3-2  syslog-ng-openrc-20160528-1  tar-1.29-2
               tcl-8.6.6-1  texinfo-6.3-1  tzdata-2016j-1  udev-openrc-32-1
               unrar-1:5.4.5-1  unzip-6.0-12  usb_modeswitch-2.4.0-2
               util-linux-2.28.2-2  wget-1.18-2  which-2.21-2
               wpa_supplicant-1:2.6-2  xcb-proto-1.12-2  xfsprogs-4.8.0-1
               xproto-7.0.31-1  xz-5.2.2-2  zeromq-4.1.5-1  zip-3.0-7
               zlib-1:1.2.8-7

Total Installed Size:  615.85 MiB
Net Upgrade Size:       39.56 MiB

:: Proceed with installation? [Y/n] y
Forum Rules : https://forum.porteus.org/viewtopic.php?f=35&t=44

User avatar
ncmprhnsbl
DEV Team
DEV Team
Posts: 3924
Joined: 20 Mar 2012, 03:42
Distribution: v5.0-64bit
Location: australia
Contact:

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#21 by ncmprhnsbl » 15 Dec 2016, 09:09

well... i got an updated core to boot but was missing libeudev-systemd... some things didnt like it...
will rebuild with it and try again later...
fixed the list/script above to reflect this...
Forum Rules : https://forum.porteus.org/viewtopic.php?f=35&t=44

User avatar
francois
Contributor
Contributor
Posts: 6434
Joined: 28 Dec 2010, 14:25
Distribution: xfce plank porteus nemesis
Location: Le printemps, le printemps, le printemps... ... l'hiver s'essoufle.

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#22 by francois » 15 Dec 2016, 11:00

@ncmprhnsbl:
So:

Code: Select all

root /home/guest # pacman -S <list of packages>
and then

Code: Select all

dir2xzm mnt/live/memory/changes/ 001-core.xzm
You do that from X environment?
Prendre son temps, profiter de celui qui passe.

User avatar
ncmprhnsbl
DEV Team
DEV Team
Posts: 3924
Joined: 20 Mar 2012, 03:42
Distribution: v5.0-64bit
Location: australia
Contact:

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#23 by ncmprhnsbl » 15 Dec 2016, 11:29

francois wrote: You do that from X environment?
yes, this:

Code: Select all

unsquashfs 001-core.xzm
which gives folder squashfs-root (xzm2dir could be used but i forgot how)
then

Code: Select all

pacman -Sy
to update the database(actually did -Syu first which got the keyrings update first, but didnt go ahead with the whole upgrade)
then

Code: Select all

pacman -Sw <list of packages>
which downloads packages to cache (but doesnt install anything)
then

Code: Select all

pacman -Uddr /path/to/squashfs-root /var/cache/pacman/pkg/*.pkg.tar.xz
i had to copy the /var/lib/pacman/local/ALPM_DB_VERSION from the live system to squashfs-root first(it complains if i dont)
then strip some stuff(docs locales etc)(got the size to 98 mb (original=78 mb))
then

Code: Select all

dir2xzm /path/to/squashfs-root 001-core-1.xzm
some further research suggests dbus-x11 might be better than dbus (replaces libdbus)
Forum Rules : https://forum.porteus.org/viewtopic.php?f=35&t=44

User avatar
Blaze
DEV Team
DEV Team
Posts: 3869
Joined: 28 Dec 2010, 11:31
Distribution: ⟰ Porteus current ☯ all DEs ☯
Location: ☭ Russian Federation, Lipetsk region, Dankov
Contact:

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#24 by Blaze » 15 Dec 2016, 17:53

ncmprhnsbl, thanks for your reports.
Jack wrote:do you have 002 files like you posted on 001?
No, because I did not think about this question. And list of 001 posted by you (not by me) :)

Run script (see below) in the Text mode as root user

Code: Select all

root
toor
For example. Copy update-core-nemesis.sh to /mnt/sdb1 (where sdb1 is partition of your usb drive). Then run this script via these commands:

Code: Select all

cd /mnt/sdb1
chmod +x update-core-nemesis.sh
./update-core-nemesis.sh
Download update-core-nemesis.sh

Code: Select all

#!/bin/bash
setup-pman
rm -rf /usr/lib/libdcadec.so.0
pacman -S dcadec
pacman -R upower-pm-utils
pacman -S upower
pacman -Syu
pacman -S acl acpid acpid-openrc archlinux-keyring attr bash ca-certificates ca-certificates-cacert ca-certificates-mozilla ca-certificates-utils cdrtools cgmanager-openrc consolekit consolekit-openrc coreutils cpio cronie cronie-openrc curdubdus-glib dbus dbus-openrc  device-mapper device-mapper-openrc dhclient dhcpcd dhcpcd-openrc dialog diffutils dosfstools downgrade e2fsprogs elfutils eudev eudev-systemd expac expat file findutils fuse gawk gcc-libs gdbm gettext glib-networking glib2 glibc glibc-openrc gmp gnupg gnutls gpgme gpm gpm-openrc grep gsettings-desktop-schemas gzip haveged-openrc hdparm hwids iana-etc inetut-fwwf-etutils--fwwf- inxi iproute2 iptables iptables-openrc iputils jansson js17 json-c kmod krb5 ldns less libarchive libassuan libatomic_ops libcap libedit libelf libeudev-systemd libevdev libffi libgcrypt libgpg-error libidn libinput libksba libldap libmm-glib libndp libnewt libnl libnm-glib libpcap libpgm libproxy libsasl libseccomp libsodium libsoup libssh2 libtasn1 libteam libtool libunistring libusb libutil-linux libx11 libxcb libxml2 lm_sensors logrotate lynx lz4 manjaro-keyring mc mdadm mdadm-o  nrc mpfr nano ncurses net-tools netifrc nettle networkmanager-consolekit networkmanager-openrc npth nspr nss ntfs-3g ntp ntp-openrc openrc openresolv openssh openssh-openrc openssl openvpn openvpn-openrc p11-kit package-query pacman pacman-mirrorlist pam parted pciutils pcre perl pinentry polkit-consolekit popt procps-ng python readline rp-pppoe rsync run-parts screen sdparm sed shadow slang sqlite sudo syslog-ng syslog-ng-openrc tar tcl texinfo tzdata udev-openrc unrar unzip usb_modeswitch util-linux wget which wpa_supplicant xcb-proto xfsprogs xproto xz zeromq zip zlib
dir2xzm /mnt/live/memory /tmp/001-core.xzm
cp /tmp/001-core.xzm /mnt/sdb1
a new 001-core.xzm you can find in the /mnt/sdb1 (root directory of your USB flash drive)
Linux 6.6.11-porteus #1 SMP PREEMPT_DYNAMIC Sun Jan 14 12:07:37 MSK 2024 x86_64 Intel(R) Xeon(R) CPU E3-1270 v6 @ 3.80GHz GenuineIntel GNU/Linux
MS-7A12 » [AMD/ATI] Navi 23 [Radeon RX 6600] [1002:73ff] (rev c7) » Vengeance LPX 16GB DDR4 K2 3200MHz C16

Jack
Contributor
Contributor
Posts: 1857
Joined: 09 Aug 2013, 14:25
Distribution: Porteus and Nemesis
Location: USA

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#25 by Jack » 15 Dec 2016, 21:17

Will Blaze I use your script and it work great but when I replace it with the old 001-core.xzm then I rebooted and it error out and didn't boot up. The new 001-core.xzm was 441.6 M. My question do I need to do something else? I'm not what the error was.
Update:
I put back the old 001-core.xzm and rename the new to 001-update-core.xzm then it works. This is just let you know.
I just like Slackware because I think it teach you about Linux to build packages where Ubuntu is like Windows you just install programs you want.

User avatar
francois
Contributor
Contributor
Posts: 6434
Joined: 28 Dec 2010, 14:25
Distribution: xfce plank porteus nemesis
Location: Le printemps, le printemps, le printemps... ... l'hiver s'essoufle.

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#26 by francois » 16 Dec 2016, 02:43

@jack:
twin (console window manager) and mc solutions with mouse cursor in console mode (out of X environment) with jssouza collaboration. :)
http://forum.porteus.org/viewtopic.php? ... 361#p51361

This will save us great pain. :twisted:

@ncmprhnsbl:
For 001-core.xzm 98 mb (original=78 mb) is more than respectable.

@all:
So the only receipe missing is for the 000-kernel.xzm module.

Could it be just to xzm2dir 000-kernel.xzm of nemesis and simply replacing /64bit_nemesis/porteus/base/000-kernel/usr/lib/modules/4.3.3-porteus/ by /64bit_v32/porteus/base/000-kernel/lib/modules/4.8.11-porteus/? And then dir2xzm?

From what I understand the upgrade does not change the kernel version:
/lib/modules/4.3.3-porteus/
and

Code: Select all

root ~ # uname -a
Linux porteus 4.3.3-porteus #1 SMP PREEMPT Tue Dec 15 21:30:52 UTC 2015 x86_64 GNU/Linux
Prendre son temps, profiter de celui qui passe.

Jack
Contributor
Contributor
Posts: 1857
Joined: 09 Aug 2013, 14:25
Distribution: Porteus and Nemesis
Location: USA

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#27 by Jack » 16 Dec 2016, 05:45

@francois
I going to turn on another Laptop just to work on this project. One to just for the Forum and one for building and working on Nemesis. I want add text editor, twin and mouse control to make life easier of course MC is all ready there.
I just like Slackware because I think it teach you about Linux to build packages where Ubuntu is like Windows you just install programs you want.

User avatar
brokenman
Site Admin
Site Admin
Posts: 6105
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v4 all desktops
Location: Brazil

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#28 by brokenman » 16 Dec 2016, 13:18

If you replace /lib/modules/4.3.3-porteus then you will also need to replace /lib/firmware and vmlinuz from the same. These all work as one. If you don't you will probably boot into a screen where your mouse/keyboard don't work.
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
Blaze
DEV Team
DEV Team
Posts: 3869
Joined: 28 Dec 2010, 11:31
Distribution: ⟰ Porteus current ☯ all DEs ☯
Location: ☭ Russian Federation, Lipetsk region, Dankov
Contact:

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#29 by Blaze » 16 Dec 2016, 17:25

Presumably, need to compare a trees of these modules (001-core.xzm, 001-update-core.xzm) via application tree

Code: Select all

# Arch Linux
pacman -S tree

# Slackware
usm -g tree
then

Code: Select all

xzm2dir 001-core.xzm 001-core
xzm2dir 001-update-core.xzm 001-update-core
cd 001-core
tree
cd ..
cd 001-update-core
tree
Probably, 001-update-core is having some missing configs + unnecessary trash which can be removed from 001-update-core (need a human eye for checking both modules).

I think updating of Nemesis is not simple thing...
Linux 6.6.11-porteus #1 SMP PREEMPT_DYNAMIC Sun Jan 14 12:07:37 MSK 2024 x86_64 Intel(R) Xeon(R) CPU E3-1270 v6 @ 3.80GHz GenuineIntel GNU/Linux
MS-7A12 » [AMD/ATI] Navi 23 [Radeon RX 6600] [1002:73ff] (rev c7) » Vengeance LPX 16GB DDR4 K2 3200MHz C16

Jack
Contributor
Contributor
Posts: 1857
Joined: 09 Aug 2013, 14:25
Distribution: Porteus and Nemesis
Location: USA

Re: Stripping nemesis to bare minimum and rebuilding with pm

Post#30 by Jack » 16 Dec 2016, 17:34

To do what I need or do, Nemesis need to be a full install. In Slackware it is easy all you need to upgrade the files inside 001-core.xzm. Here is how to do it.

Code: Select all

xzm2dir 001-core.xzm /tmp/unpacked
ROOT=/tmp/unpacked upgradepkg gimp
dir2xzm /tmp/unpacked /tmp/new-001-core.xzm
Slackware is so easy to upgrade and work with.
I just like Slackware because I think it teach you about Linux to build packages where Ubuntu is like Windows you just install programs you want.

Post Reply