Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- CWD="$PWD"
- clean=true
- HARDLINKED_SFS_unextracted="$(realpath ../puppy_upupgg+d_20.10.sfs)"
- EXTRACTED_SFS=puppy_upupgg+d_20.10.sfs.extracted
- NEW_SFS=puli7.3_x86_64-ungoogled-hardlinked-new.sfs
- FR_SOURCE_ARCHIVE="$(realpath ../kalipup_CLI_0.0002.sfs)"
- FR_SOURCE_ORIG="$(realpath ./chroot-kali-rolling-i386.extracted)"
- [ "$clean" = true ] && rm -rf "$EXTRACTED_SFS"
- EXTRACTED_SFS_FP="$CWD"/"$EXTRACTED_SFS"
- FR_SOURCE="$CWD"/"$EXTRACTED_SFS"/kali/cli
- if [ ! -d $EXTRACTED_SFS ] || [ ! "$(ls -A $EXTRACTED_SFS)" ] ; then
- #mkdir -p "$EXTRACTED_SFS"
- uextract $HARDLINKED_SFS_unextracted || { echo "failed to extract $HARDLINKED_SFS_unextracted" && exit; }
- if [[ "${HARDLINKED_SFS_unextracted}.extracted" != "$EXTRACTED_SFS" ]]; then
- mv ${$HARDLINKED_SFS_unextracted}.extracted $EXTRACTED_SFS
- fi
- fi
- EXTRACTED_SFS="$(realpath "$EXTRACTED_SFS")" || { echo "failed realpath \"$HARDLINKED_SFS\"" && exit; }
- TARGET="$EXTRACTED_SFS"/kali; mkdir -p "$TARGET"
- MV_LOC="$TARGET/GG-moved"; mkdir -p $MV_LOC
- #See: https://forum.puppylinux.com/viewtopic.php?f=53&t=1397&p=15016&hilit=hardlinked#p15016
- HL_LOC="$EXTRACTED_SFS"; mkdir -p "$HL_LOC"
- USE_MULTI_ARCH_DIRS=yes
- WARN_MV_ARCH=true
- if [ ! -d "$TARGET" ]; then
- mkdir -p "$TARGET"
- rsync -rltDv --link-dest="${HL_LOC}/" "${HL_LOC}/" "${TARGET}/"
- fi
- if [ ! -d "$FR_SOURCE_ORIG" ]; then
- uextract -o "$FR_SOURCE_ORIG" "$FR_SOURCE_ARCHIVE" || { echo "failed to extract $HARDLINKED_SFS_unextracted" && exit; }
- fi
- if [ ! -d "$FR_SOURCE_ORIG" ]; then
- cp -Ra "$FR_SOURCE_ORIG" "$FR_SOURCE"
- fi
- if [ ! -d "$FR_SOURCE" ]; then
- cp -Ra "$FR_SOURCE_ORIG" "$FR_SOURCE"
- fi
- #FR_SOURCE=/mnt/+mnt+sda5+test_save+ext2/firstRIB_lego/01firstrib_rootfs.sfs.extracted
- #Move no longer needed core libs
- #if [ "$USE_MULTI_ARCH_DIRS" = yes ]; then
- #while read arch_dir_rel; do
- #target_arch_dir="$TARGET/$arch_dir_rel"
- #arch_dir="$(basename "$arch_dir_rel")"
- #parent_dir_rel="$(dirname "${arch_dir_rel}")"
- #target_arch_parent="$TARGET/$parent_dir_rel"
- #parent_of_arch_dir="$TARGET/$parent_dir_rel"
- #fp_arch_dir="$parrent_dir/arch_dir"
- ##if [ ! -d "$target_arch_dir" ]; then
- ##source_dir="$FR_SOURCE/$a_dir"
- #source_arch_dir="$FR_SOURCE/$arch_dir_rel"
- #if [ ! -d "$source_arch_dir" ]; then
- #[ -e "$target_arch_dir" ] && rm "$target_arch_dir" ;
- #mkdir -p "$target_arch_dir"
- #else
- ##the read in this warn section causes the outer loop to be skipped so comment out until fixed.
- ##if [ "$WARN_MV_ARCH" = true ]; then #Debugging code
- ##set +x
- ##echo "about to:"
- ##echo "
- ##cd \"$FR_SOURCE\"
- ##echo ./\"${arch_dir_rel}\" | \
- ##cpio -pdu \"$TARGET\" )"
- ##read -p "Press enter to continue"
- ##set -x
- ##fi
- #( cd "$FR_SOURCE"
- #echo "./${arch_dir_rel}" | \
- #cpio -pdu "$TARGET" )
- #fi
- ##fi
- #while read b_name; do
- ##the read in this warn section causes the outer loop to be skipped so comment out until fixed.
- ##if [ "$WARN_MV_ARCH" = true ]; then #Debugging code
- ##set +x
- ##echo "about to:"
- ##echo "
- ##mv \"$target_arch_parent/$b_name\" \"$target_arch_dir/$b_name\"
- ##( cd \"$target_arch_parent\"; ln -s \"$b_name\" \"$arch_dir/$b_name\" ) "
- ##read -p "Press enter to continue"
- ##set -x
- ##fi
- #rel_path="$(dirname "$arch_dir_rel")/$b_name"
- #case "$rel_path" in
- #lib/lsb|lib/systemd|lib/terminfo) continue; ;;
- #usr/lib/apt|usr/lib/debootstrap|usr/lib/dpkg) continue; ;;
- #usr/lib/locale|usr/lib/mime|usr/lib/NetworkManager) continue; ;;
- #usr/lib/pm-utils|usr/lib/ssl|usr/lib/tmpfiles.d) continue; ;;
- #esac
- #[[ "$target_arch_parent/$b_name" = "$target_arch_dir" ]] && continue
- #mv "$target_arch_parent/$b_name" "$target_arch_dir/$b_name"
- #( cd "$target_arch_parent"; ln -s "$arch_dir/$b_name" "$b_name" )
- #done < <(find $target_arch_parent -mindepth 1 -maxdepth 1 -type d | xargs -n 1 basename)
- #done <<EOF
- #usr/local/lib/x86_64-linux-gnu
- #lib/x86_64-linux-gnu
- #usr/lib/x86_64-linux-gnu
- #EOF
- #fi
- #if [ "$WARN_MV_ARCH" = true ]; then #Debugging code
- #set +x
- #echo "finished moving files to multi-arch dirs"
- #read -p "Press enter to continue"
- #set -x
- #fi
- #mkdir -p "$TARGET"/lib/glib23
- #while read line; do
- #mv "$TARGET"/lib/$line "$TARGET"/lib/glib23/$line
- #done <<EOF
- #ld-2.23.so
- #ld-linux-x86-64.so.2
- #libanl-2.23.so
- #libanl.so.1
- #libaudit.so.1
- #libaudit.so.1.0.0
- #libBrokenLocale-2.23.so
- #libBrokenLocale.so.1
- #libbz2.so.1
- #libbz2.so.1.0
- #libbz2.so.1.0.4
- #libc-2.23.so
- #libcrypt-2.23.so
- #libcrypt.so.1
- #libc.so.6
- #libdbus-1.so.3
- #libdbus-1.so.3.14.6
- #libdl-2.23.so
- #libdl.so.2
- #libgpg-error.so.0
- #libgpg-error.so.0.17.0
- #libhistory.so.5
- #libhistory.so.6
- #libhistory.so.6.3
- #liblzma.so.0
- #liblzma.so.5
- #liblzma.so.5.0.0
- #libm-2.23.so
- #libmemusage.so
- #libm.so.6
- #libmvec-2.23.so
- #libmvec.so.1
- #libnl-3.so
- #libnl-3.so.200
- #libnl-3.so.200.22.0
- #libnl-genl-3.so
- #libnl-genl-3.so.200
- #libnl-genl-3.so.200.22.0
- #libnsl-2.23.so
- #libnsl.so.1
- #libnss_compat-2.23.so
- #libnss_compat.so.2
- #libnss_dns-2.23.so
- #libnss_dns.so.2
- #libnss_files-2.23.so
- #libnss_files.so.2
- #libnss_hesiod-2.23.so
- #libnss_hesiod.so.2
- #libnss_nis-2.23.so
- #libnss_nisplus-2.23.so
- #libnss_nisplus.so.2
- #libnss_nis.so.2
- #libpamc.so.0
- #libpamc.so.0.82.1
- #libpam_misc.so.0
- #libpam_misc.so.0.82.0
- #libpam.so.0
- #libpam.so.0.83.1
- #libpcprofile.so
- #libpthread-2.23.so
- #libpthread.so.0
- #libreadline.so.5
- #libreadline.so.6
- #libreadline.so.6.3
- #libresolv-2.23.so
- #libresolv.so.2
- #librt-2.23.so
- #librt.so.1
- #libSegFault.so
- #libselinux.so.1
- #libsepol.so.1
- #libsystemd.so.0
- #libsystemd.so.0.14.0
- #libthread_db-1.0.so
- #libthread_db.so.1
- #libudev.so.0
- #libudev.so.1
- #libudev.so.1.6.3
- #libutil-2.23.so
- #libutil.so.1
- #libz.so.1
- #libz.so.1.2.8
- #EOF
- if [ 1 -ne 1 ]; then #TODO: We likely need to do something like this.
- cd "$TARGET"/lib
- rm ld-linux.so.2
- ln -s ../lib32/ld-linux.so.2 ld-linux.so.2
- fi
- #CWD="$PWD"
- #HARDLINKED_SFS=puli7.3_x86_64-ungoogled-hardlinked.sfs.extracted
- #FR_SOURCE=/mnt/+mnt+sda5+test_save+ext2/firstRIB_lego/01firstrib_rootfs.sfs.extracted
- #TARGET="$CWD"/"$HARDLINKED_SFS"/cont
- #for folder in bin sbin usr/bin usr/sbin usr/local/bin usr/local/sbin
- #for a_file in $(ls -1 $FR_SOURCE/"$folder"); do
- #mkdir -p $TARGET/${folder}2
- #if [[ "$(readlink "$TARGET/$folder/$a_file")" = */busybox ]]; then
- #if [ ! -h "$FR_SOURCE/$folder/$a_file" ]; then
- #mv "$TARGET/$folder/$a_file" "$TARGET/${folder}2/$a_file"
- #fi
- #done
- #done
- #done
- while read a_folder; do
- mkdir -p "$MV_LOC/${a_folder}"
- for a_file in $(ls -1A $FR_SOURCE/"$a_folder"); do
- #if [[ "$(readlink "$TARGET/$folder/$a_file")" = */busybox ]]; then
- # if [ ! -h "$FR_SOURCE/$folder/$a_file" ]; then
- source_file="$FR_SOURCE/$a_folder/$a_file"
- target_file="$TARGET/$a_folder/$a_file"
- if [ -d "$source_file" ] && [ ! -d "$target_file" ]; then
- ( cd "$(dirname "$source_file")";
- echo "$(basename "$source_file")" | \
- cpio -pdu "$(dirname "$target_file")" )
- else
- if [ ! -e "$target_file" ] || [ $(stat -c %s "$source_file") -gt $(stat -c %s "$target_file") ] || ! cmp --silent "$source_file" "$target_file"; then
- if [ -e "$target_file" ]; then
- if [ ! -d "$target_file" ]; then
- if [ ! -d "$MV_LOC/${a_folder}" ]; then
- ( cd "$TARGET";
- echo "./${a_folder}" | \
- cpio -pdu "$MV_LOC" )
- fi
- mv "$target_file" "$MV_LOC/${a_folder}/$a_file"
- fi
- fi
- [ ! -d "$source_file" ] && ln "$source_file" "$target_file"
- fi
- # fi
- #done
- fi
- done
- done <<EOF
- lib64
- var
- var/log
- var/log/apt
- var/cache
- var/cache/ldconfig
- var/cache/apt
- var/cache/apt/archives
- var/cache/apt/archives/partial
- var/cache/debconf
- var/lib
- var/lib/dpkg
- var/lib/dpkg/info
- var/lib/dpkg/updates
- var/lib/dpkg/parts
- var/lib/dpkg/alternatives
- var/lib/dpkg/triggers
- var/lib/apt
- var/lib/apt/lists
- var/lib/apt/lists/partial
- var/lib/apt/periodic
- var/lib/apt/mirrors
- var/lib/apt/mirrors/partial
- var/lib/pam
- usr
- usr/libexec
- usr/src
- usr/lib32
- usr/local
- usr/local/sbin
- usr/local/lib
- usr/local/include
- usr/local/share
- usr/local/share/ca-certificates
- usr/local/firstrib
- usr/local/firstrib/bin
- usr/local/bin
- usr/sbin
- usr/lib
- usr/lib/dpkg
- usr/lib/dpkg/methods
- usr/lib/dpkg/methods/apt
- usr/lib/ssl
- usr/lib/ssl/misc
- usr/lib/mime
- usr/lib/mime/packages
- usr/lib/apt
- usr/lib/apt/planners
- usr/lib/apt/methods
- usr/lib/apt/solvers
- usr/lib/NetworkManager
- usr/lib/NetworkManager/conf.d
- usr/lib/tmpfiles.d
- usr/lib/x86_64-linux-gnu
- usr/lib/x86_64-linux-gnu/coreutils
- usr/lib/x86_64-linux-gnu/perl-base
- usr/lib/x86_64-linux-gnu/perl-base/Text
- usr/lib/x86_64-linux-gnu/perl-base/Tie
- usr/lib/x86_64-linux-gnu/perl-base/Scalar
- usr/lib/x86_64-linux-gnu/perl-base/Getopt
- usr/lib/x86_64-linux-gnu/perl-base/unicore
- usr/lib/x86_64-linux-gnu/perl-base/unicore/To
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Dep
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Hyphen
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/STerm
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/NFKDQC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Sc
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/InPC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/IDS
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CI
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/IDC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/PCM
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/In
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Ea
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/QMark
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Blk
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/PatSyn
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Vo
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Math
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Dash
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/GCB
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/XIDS
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/GrExt
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Alpha
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CE
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Jt
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/NFKCQC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Term
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/NFDQC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Nt
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Ideo
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Perl
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/WB
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/XIDC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/GrBase
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CWKCF
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/InSC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CWU
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Hex
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/BidiC
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/DI
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Lb
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Cased
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CWT
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CompEx
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Age
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/SD
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Dia
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Bc
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Lower
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Upper
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Dt
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Scx
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CWCM
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/SB
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Gc
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Nv
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Ccc
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/BidiM
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CWL
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Ext
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Bpt
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Hst
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/Jg
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/CWCF
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/UIdeo
- usr/lib/x86_64-linux-gnu/perl-base/unicore/lib/NFCQC
- usr/lib/x86_64-linux-gnu/perl-base/warnings
- usr/lib/x86_64-linux-gnu/perl-base/Hash
- usr/lib/x86_64-linux-gnu/perl-base/IO
- usr/lib/x86_64-linux-gnu/perl-base/IO/Socket
- usr/lib/x86_64-linux-gnu/perl-base/auto
- usr/lib/x86_64-linux-gnu/perl-base/auto/re
- usr/lib/x86_64-linux-gnu/perl-base/auto/Hash
- usr/lib/x86_64-linux-gnu/perl-base/auto/Hash/Util
- usr/lib/x86_64-linux-gnu/perl-base/auto/IO
- usr/lib/x86_64-linux-gnu/perl-base/auto/Socket
- usr/lib/x86_64-linux-gnu/perl-base/auto/attributes
- usr/lib/x86_64-linux-gnu/perl-base/auto/File
- usr/lib/x86_64-linux-gnu/perl-base/auto/File/Glob
- usr/lib/x86_64-linux-gnu/perl-base/auto/Cwd
- usr/lib/x86_64-linux-gnu/perl-base/auto/List
- usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util
- usr/lib/x86_64-linux-gnu/perl-base/auto/Fcntl
- usr/lib/x86_64-linux-gnu/perl-base/auto/POSIX
- usr/lib/x86_64-linux-gnu/perl-base/Carp
- usr/lib/x86_64-linux-gnu/perl-base/IPC
- usr/lib/x86_64-linux-gnu/perl-base/File
- usr/lib/x86_64-linux-gnu/perl-base/File/Spec
- usr/lib/x86_64-linux-gnu/perl-base/Exporter
- usr/lib/x86_64-linux-gnu/perl-base/List
- usr/lib/x86_64-linux-gnu/gconv
- usr/lib/x86_64-linux-gnu/engines-1.1
- usr/lib/x86_64-linux-gnu/audit
- usr/lib/locale
- usr/lib/locale/C.UTF-8
- usr/lib/locale/C.UTF-8/LC_MESSAGES
- usr/lib/debootstrap
- usr/lib/pm-utils
- usr/lib/pm-utils/sleep.d
- usr/include
- usr/share
- usr/share/pixmaps
- usr/share/terminfo
- usr/share/debianutils
- usr/share/doc
- usr/share/doc/libpam0g
- usr/share/doc/libsepol1
- usr/share/doc/lsb-base
- usr/share/doc/coreutils
- usr/share/doc/libzstd1
- usr/share/doc/libnl-genl-3-200
- usr/share/doc/debianutils
- usr/share/doc/libnl-3-200
- usr/share/doc/dpkg
- usr/share/doc/perl
- usr/share/doc/libacl1
- usr/share/doc/libpcre2-8-0
- usr/share/doc/libunistring2
- usr/share/doc/libpcsclite1
- usr/share/doc/libattr1
- usr/share/doc/libgnutls30
- usr/share/doc/libtasn1-6
- usr/share/doc/libdb5.3
- usr/share/doc/libnettle7
- usr/share/doc/libaudit1
- usr/share/doc/libsystemd0
- usr/share/doc/libgcrypt20
- usr/share/doc/libffi7
- usr/share/doc/gcc-10-base
- usr/share/doc/libtinfo6
- usr/share/doc/perl-base
- usr/share/doc/zlib1g
- usr/share/doc/libapt-pkg6.0
- usr/share/doc/libreadline8
- usr/share/doc/libreadline8/examples
- usr/share/doc/libselinux1
- usr/share/doc/libpam-modules
- usr/share/doc/libpam-modules/examples
- usr/share/doc/libsemanage-common
- usr/share/doc/apt
- usr/share/doc/apt/examples
- usr/share/doc/readline-common
- usr/share/doc/liblz4-1
- usr/share/doc/base-passwd
- usr/share/doc/libnl-route-3-200
- usr/share/doc/liblzma5
- usr/share/doc/libaudit-common
- usr/share/doc/libudev1
- usr/share/doc/less
- usr/share/doc/libdebconfclient0
- usr/share/doc/libsemanage1
- usr/share/doc/libc6
- usr/share/doc/libpam-modules-bin
- usr/share/doc/adduser
- usr/share/doc/adduser/examples
- usr/share/doc/adduser/examples/adduser.local.conf.examples
- usr/share/doc/adduser/examples/adduser.local.conf.examples/skel.other
- usr/share/doc/adduser/examples/adduser.local.conf.examples/skel
- usr/share/doc/libcap-ng0
- usr/share/doc/libgmp10
- usr/share/doc/ncurses-base
- usr/share/doc/libpam-runtime
- usr/share/doc/libseccomp2
- usr/share/doc/libcrypt1
- usr/share/doc/tar
- usr/share/doc/diffutils
- usr/share/doc/libssl1.1
- usr/share/doc/libc-bin
- usr/share/doc/passwd
- usr/share/doc/passwd/examples
- usr/share/doc/ca-certificates
- usr/share/doc/ca-certificates/examples
- usr/share/doc/ca-certificates/examples/ca-certificates-local
- usr/share/doc/ca-certificates/examples/ca-certificates-local/local
- usr/share/doc/ca-certificates/examples/ca-certificates-local/debian
- usr/share/doc/ca-certificates/examples/ca-certificates-local/debian/source
- usr/share/doc/libbz2-1.0
- usr/share/doc/openssl
- usr/share/doc/openssl/HOWTO
- usr/share/doc/wpasupplicant
- usr/share/doc/wpasupplicant/examples
- usr/share/doc/gpgv
- usr/share/doc/libgpg-error0
- usr/share/doc/debconf
- usr/share/doc/libdbus-1-3
- usr/share/doc/ubuntu-keyring
- usr/share/doc/libp11-kit0
- usr/share/doc/libp11-kit0/examples
- usr/share/doc/libidn2-0
- usr/share/dpkg
- usr/share/gdb
- usr/share/gdb/auto-load
- usr/share/gdb/auto-load/usr
- usr/share/gdb/auto-load/usr/lib
- usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu
- usr/share/udhcpc
- usr/share/man
- usr/share/man/man3
- usr/share/man/pl
- usr/share/man/pl/man8
- usr/share/man/pl/man1
- usr/share/man/pl/man5
- usr/share/man/fr
- usr/share/man/fr/man8
- usr/share/man/fr/man1
- usr/share/man/fr/man5
- usr/share/man/nl
- usr/share/man/nl/man8
- usr/share/man/nl/man1
- usr/share/man/nl/man5
- usr/share/man/tr
- usr/share/man/tr/man8
- usr/share/man/tr/man1
- usr/share/man/tr/man5
- usr/share/man/man8
- usr/share/man/man1
- usr/share/man/man7
- usr/share/man/it
- usr/share/man/it/man8
- usr/share/man/it/man1
- usr/share/man/it/man5
- usr/share/man/man5
- usr/share/man/pt
- usr/share/man/pt/man8
- usr/share/man/pt/man1
- usr/share/man/pt/man5
- usr/share/man/de
- usr/share/man/de/man8
- usr/share/man/de/man1
- usr/share/man/de/man5
- usr/share/man/ja
- usr/share/man/ja/man8
- usr/share/man/ja/man1
- usr/share/man/ja/man5
- usr/share/man/zh_TW
- usr/share/man/zh_TW/man8
- usr/share/man/zh_TW/man1
- usr/share/man/zh_TW/man5
- usr/share/man/es
- usr/share/man/es/man8
- usr/share/man/es/man1
- usr/share/man/es/man5
- usr/share/man/pt_BR
- usr/share/man/pt_BR/man8
- usr/share/man/pt_BR/man1
- usr/share/man/pt_BR/man5
- usr/share/man/ru
- usr/share/man/ru/man8
- usr/share/man/ru/man1
- usr/share/man/ru/man5
- usr/share/man/sv
- usr/share/man/sv/man8
- usr/share/man/sv/man1
- usr/share/man/sv/man5
- usr/share/man/zh_CN
- usr/share/man/zh_CN/man8
- usr/share/man/zh_CN/man1
- usr/share/man/zh_CN/man5
- usr/share/man/hu
- usr/share/man/hu/man1
- usr/share/man/hu/man5
- usr/share/man/da
- usr/share/man/da/man8
- usr/share/man/da/man1
- usr/share/man/da/man5
- usr/share/man/id
- usr/share/man/id/man8
- usr/share/man/id/man1
- usr/share/man/sl
- usr/share/man/sl/man8
- usr/share/man/sl/man1
- usr/share/man/cs
- usr/share/man/cs/man8
- usr/share/man/cs/man1
- usr/share/man/cs/man5
- usr/share/man/ko
- usr/share/man/ko/man8
- usr/share/man/ko/man1
- usr/share/man/ko/man5
- usr/share/man/fi
- usr/share/man/fi/man1
- usr/share/pam-configs
- usr/share/bug
- usr/share/bug/apt
- usr/share/info
- usr/share/gcc-10
- usr/share/gcc-10/python
- usr/share/gcc-10/python/libstdcxx
- usr/share/gcc-10/python/libstdcxx/v6
- usr/share/pam
- usr/share/polkit-1
- usr/share/polkit-1/actions
- usr/share/tabset
- usr/share/readline
- usr/share/base-passwd
- usr/share/keyrings
- usr/share/perl5
- usr/share/perl5/Debconf
- usr/share/perl5/Debconf/Template
- usr/share/perl5/Debconf/Client
- usr/share/perl5/Debconf/FrontEnd
- usr/share/perl5/Debconf/Element
- usr/share/perl5/Debconf/Element/Gnome
- usr/share/perl5/Debconf/Element/Dialog
- usr/share/perl5/Debconf/Element/Editor
- usr/share/perl5/Debconf/Element/Teletype
- usr/share/perl5/Debconf/Element/Noninteractive
- usr/share/perl5/Debconf/Element/Web
- usr/share/perl5/Debconf/DbDriver
- usr/share/perl5/Debconf/Format
- usr/share/perl5/Debian
- usr/share/perl5/Debian/DebConf
- usr/share/perl5/Debian/DebConf/Client
- usr/share/doc-base
- usr/share/dbus-1
- usr/share/dbus-1/system-services
- usr/share/adduser
- usr/share/bash-completion
- usr/share/bash-completion/completions
- usr/share/libc-bin
- usr/share/ca-certificates
- usr/share/ca-certificates/mozilla
- usr/share/locale
- usr/share/locale/pl
- usr/share/locale/pl/LC_MESSAGES
- usr/share/locale/ca
- usr/share/locale/ca/LC_MESSAGES
- usr/share/locale/fr
- usr/share/locale/fr/LC_MESSAGES
- usr/share/locale/nl
- usr/share/locale/nl/LC_MESSAGES
- usr/share/locale/nb
- usr/share/locale/nb/LC_MESSAGES
- usr/share/locale/tr
- usr/share/locale/tr/LC_MESSAGES
- usr/share/locale/ku
- usr/share/locale/ku/LC_MESSAGES
- usr/share/locale/km
- usr/share/locale/km/LC_MESSAGES
- usr/share/locale/vi
- usr/share/locale/vi/LC_MESSAGES
- usr/share/locale/it
- usr/share/locale/it/LC_MESSAGES
- usr/share/locale/pt
- usr/share/locale/pt/LC_MESSAGES
- usr/share/locale/de
- usr/share/locale/de/LC_MESSAGES
- usr/share/locale/sk
- usr/share/locale/sk/LC_MESSAGES
- usr/share/locale/mr
- usr/share/locale/mr/LC_MESSAGES
- usr/share/locale/et
- usr/share/locale/et/LC_MESSAGES
- usr/share/locale/eo
- usr/share/locale/eo/LC_MESSAGES
- usr/share/locale/ja
- usr/share/locale/ja/LC_MESSAGES
- usr/share/locale/pa
- usr/share/locale/pa/LC_MESSAGES
- usr/share/locale/gl
- usr/share/locale/gl/LC_MESSAGES
- usr/share/locale/zh_TW
- usr/share/locale/zh_TW/LC_MESSAGES
- usr/share/locale/es
- usr/share/locale/es/LC_MESSAGES
- usr/share/locale/pt_BR
- usr/share/locale/pt_BR/LC_MESSAGES
- usr/share/locale/ru
- usr/share/locale/ru/LC_MESSAGES
- usr/share/locale/sv
- usr/share/locale/sv/LC_MESSAGES
- usr/share/locale/nn
- usr/share/locale/nn/LC_MESSAGES
- usr/share/locale/bg
- usr/share/locale/bg/LC_MESSAGES
- usr/share/locale/ro
- usr/share/locale/ro/LC_MESSAGES
- usr/share/locale/cy
- usr/share/locale/cy/LC_MESSAGES
- usr/share/locale/eu
- usr/share/locale/eu/LC_MESSAGES
- usr/share/locale/zh_CN
- usr/share/locale/zh_CN/LC_MESSAGES
- usr/share/locale/hu
- usr/share/locale/hu/LC_MESSAGES
- usr/share/locale/da
- usr/share/locale/da/LC_MESSAGES
- usr/share/locale/bs
- usr/share/locale/bs/LC_MESSAGES
- usr/share/locale/id
- usr/share/locale/id/LC_MESSAGES
- usr/share/locale/ar
- usr/share/locale/ar/LC_MESSAGES
- usr/share/locale/ne
- usr/share/locale/ne/LC_MESSAGES
- usr/share/locale/dz
- usr/share/locale/dz/LC_MESSAGES
- usr/share/locale/sl
- usr/share/locale/sl/LC_MESSAGES
- usr/share/locale/th
- usr/share/locale/th/LC_MESSAGES
- usr/share/locale/cs
- usr/share/locale/cs/LC_MESSAGES
- usr/share/locale/ast
- usr/share/locale/ast/LC_MESSAGES
- usr/share/locale/ko
- usr/share/locale/ko/LC_MESSAGES
- usr/share/locale/lt
- usr/share/locale/lt/LC_MESSAGES
- usr/share/locale/el
- usr/share/locale/el/LC_MESSAGES
- usr/share/locale/tl
- usr/share/locale/tl/LC_MESSAGES
- usr/share/locale/fi
- usr/share/locale/fi/LC_MESSAGES
- usr/share/locale/uk
- usr/share/locale/uk/LC_MESSAGES
- usr/share/lintian
- usr/share/lintian/profiles
- usr/share/lintian/profiles/dpkg
- usr/share/lintian/overrides
- usr/share/debconf
- usr/bin
- home
- home/debian
- tmp
- opt
- sbin
- lib
- lib/systemd
- lib/systemd/system
- lib/terminfo
- lib/terminfo/v
- lib/terminfo/h
- lib/terminfo/s
- lib/terminfo/a
- lib/terminfo/m
- lib/terminfo/r
- lib/terminfo/l
- lib/terminfo/x
- lib/terminfo/w
- lib/terminfo/d
- lib/terminfo/c
- lib/terminfo/t
- lib/terminfo/E
- lib/terminfo/p
- lib/lsb
- lib/lsb/init-functions.d
- lib/x86_64-linux-gnu
- lib/x86_64-linux-gnu/security
- bin
- etc/libnl-3
- etc/terminfo
- etc/selinux
- etc/network
- etc/network/if-pre-up.d
- etc/network/if-down.d
- etc/network/if-up.d
- etc/network/if-post-down.d
- etc/dpkg
- etc/dpkg/dpkg.cfg.d
- etc/ssl
- etc/ssl/private
- etc/ssl/certs
- etc/udhcpc
- etc/logrotate.d
- etc/wpa_supplicant
- etc/rc.d
- etc/pam.d
- etc/apt
- etc/apt/auth.conf.d
- etc/apt/preferences.d
- etc/apt/apt.conf.d
- etc/apt/sources.list.d
- etc/apt/trusted.gpg.d
- etc/security
- etc/security/namespace.d
- etc/security/limits.d
- etc/default
- etc/ifplugd
- etc/ifplugd/action.d
- etc/kernel
- etc/kernel/postinst.d
- etc/dbus-1
- etc/dbus-1/system.d
- etc/cron.daily
- etc/skel
- etc/ld.so.conf.d
- etc/ca-certificates
- etc/ca-certificates/update.d
- etc/alternatives
- EOF
- #We don't need to copy these directories from firstribrootfs
- #dev
- #dev/pts
- #boot
- #root
- #sys
- #proc
- #mnt
- #media
- #run
- #etc
- echo "include /etc/ld.so.conf.d/*.conf" >> "$TARGET/etc/ld.so.conf"
- export $PATH="$PATH":/usr/local/firstrib/bin >> /etc/profile #maybe do this in /root/.profile
- while read a_file; do
- cp -af "$FR_SOURCE/etc/$a_file" "$TARGET/etc/$a_file"
- done <<EOF
- xattr.conf
- environment
- deluser.conf
- ca-certificates.conf
- pam.conf
- adduser.conf
- debconf.conf
- gai.conf
- bindresvport.blacklist
- EOF
- #Don't need from /etc:
- #.pwd.lock
- #group-
- #Duplicate in /etc
- #gshadow
- #inittab
- #passwd
- #passwd-
- #gshadow-
- #inputrc
- #ld.so.cache
- #libaudit.conf
- #nsswitch.conf
- #resolv.conf
- #shells
- #shadow
- while read a_file_rel_path; do #EXTRACTED_SFS_FP
- if [[ $(file "$TARGET/${a_file_rel_path}") != *ASCII* ]]; then
- #mv "$TARGET/${a_file_rel_path}-FULL" "$MV_LOC/${a_file_rel_path}-FULL"
- #mv "$TARGET/${a_file_rel_path}" "$TARGET/${a_file_rel_path}-FULL"
- #mv "$MV_LOC/${a_file_rel_path}" "$TARGET/${a_file_rel_path}"
- mv "$TARGET/${a_file_rel_path}-FULL" "$MV_LOC/${a_file_rel_path}-FULL"
- mv "$TARGET/${a_file_rel_path}" "$TARGET/${a_file_rel_path}-FULL"
- mv "$EXTRACTED_SFS_FP/${a_file_rel_path}" "$TARGET/${a_file_rel_path}"
- fi
- done <<EOF
- sbin/losetup
- bin/df
- bin/umount
- bin/mount
- bin/ps
- EOF
- if [ 1 -ne 1 ]; then
- cd "$TARGET"/lib
- rm ld-linux-x86-64.so.2
- ln -s ./x86_64-linux-gnu/ld-linux-x86-64.so.2 ld-linux-x86-64.so.2
- ln -s ./x86_64-linux-gnu/ld-linux-x86-64.so.2 ld-linux-x86-64.so.1
- fi
- #mksquashfs "$EXTRACTED_SFS" "$NEW_SFS"
Add Comment
Please, Sign In to add comment