Update
This commit is contained in:
commit
8435cd67fc
|
@ -0,0 +1,15 @@
|
||||||
|
# These are supported funding model platforms
|
||||||
|
|
||||||
|
#github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
||||||
|
|
||||||
|
#patreon: # Replace with a single Patreon username
|
||||||
|
#open_collective: # Replace with a single Open Collective username
|
||||||
|
#ko_fi: # Replace with a single Ko-fi username
|
||||||
|
#tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
||||||
|
#community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||||
|
#liberapay: # Replace with a single Liberapay username
|
||||||
|
#issuehunt: # Replace with a single IssueHunt username
|
||||||
|
#otechie: # Replace with a single Otechie username
|
||||||
|
#custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
||||||
|
#github: [Valeria-Fadeeva]
|
||||||
|
custom: ["https://www.tinkoff.ru/rm/fadeeva.valeriya96/9bLRi79066", "https://yoomoney.ru/to/4100115921160758", "https://qiwi.com/n/VALERIAFADEEVA", "valeria.fadeeva.me"]
|
|
@ -0,0 +1,7 @@
|
||||||
|
# This config file controls the automation provided by eos-dracut
|
||||||
|
|
||||||
|
# When DRACUT_QUIET is set to true, dracut will operate with quiet flag set suppressing most output
|
||||||
|
#DRACUT_QUIET="false"
|
||||||
|
|
||||||
|
# When NO_FALLBACK is set to true, no fallback initrd will be generated
|
||||||
|
#NO_DRACUT_FALLBACK="false"
|
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
git add . && git commit -m "Update" && git push
|
||||||
|
|
||||||
|
echo "Ready"
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Rebuild the initrds for all kernels found in /usr/lib/modules
|
||||||
|
#
|
||||||
|
# Run dracut for all the installed kernels
|
||||||
|
|
||||||
|
# This script requires passing a valid file to regenerate all initrds so we pass a file we know will exist
|
||||||
|
/usr/share/libalpm/scripts/dracut-install < "/usr/bin/dracut-rebuild"
|
|
@ -0,0 +1,19 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# called by dracut
|
||||||
|
check() {
|
||||||
|
dracut_module_included btrfs || return 1
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# called by dracut
|
||||||
|
depends() {
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# called by dracut
|
||||||
|
install() {
|
||||||
|
inst mktemp
|
||||||
|
hostonly='' instmods overlay
|
||||||
|
inst_hook pre-pivot 000 "$moddir/snapshot-overlay.sh"
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
#!/bin/bash
|
||||||
|
function mount_snapshot_overlay() {
|
||||||
|
local root_mnt="$NEWROOT"
|
||||||
|
if [[ "$(findmnt --mountpoint "$root_mnt" -o FSTYPE -n)" = "btrfs" ]] && [[ "$(btrfs property get ${root_mnt} ro)" != "ro=false" ]]; then
|
||||||
|
local ram_dir=$(mktemp -d -p /)
|
||||||
|
mount -t tmpfs cowspace ${ram_dir}
|
||||||
|
mkdir -p ${ram_dir}/{upper,work}
|
||||||
|
mount -t overlay -o lowerdir=${root_mnt},upperdir=${ram_dir}/upper,workdir=${ram_dir}/work rootfs ${root_mnt}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
mount_snapshot_overlay
|
|
@ -0,0 +1,10 @@
|
||||||
|
[Trigger]
|
||||||
|
Type = Path
|
||||||
|
Operation = Remove
|
||||||
|
Target = usr/lib/modules/*/pkgbase
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description = Removing initramfs...
|
||||||
|
When = PreTransaction
|
||||||
|
Exec = /usr/share/libalpm/scripts/dracut-remove
|
||||||
|
NeedsTargets
|
|
@ -0,0 +1,13 @@
|
||||||
|
[Trigger]
|
||||||
|
Type = Path
|
||||||
|
Operation = Install
|
||||||
|
Operation = Upgrade
|
||||||
|
Target = usr/lib/modules/*/vmlinuz
|
||||||
|
Target = usr/lib/dracut/*
|
||||||
|
Target = usr/lib/systemd/systemd
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description = Updating initramfs...
|
||||||
|
When = PostTransaction
|
||||||
|
Exec = /usr/share/libalpm/scripts/dracut-install
|
||||||
|
NeedsTargets
|
|
@ -0,0 +1,45 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
all=0
|
||||||
|
lines=()
|
||||||
|
# Read the optional config file for automation
|
||||||
|
[[ -f /etc/grub-dracut.conf ]] && source /etc/grub-dracut.conf
|
||||||
|
|
||||||
|
while read -r line; do
|
||||||
|
if [[ "${line}" != */vmlinuz ]]; then
|
||||||
|
# triggers when it's a change to dracut files
|
||||||
|
all=1
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
lines+=("/${line%/vmlinuz}")
|
||||||
|
|
||||||
|
pkgbase="$(<"${lines[-1]}/pkgbase")"
|
||||||
|
install -Dm644 "/${line}" "/boot/vmlinuz-${pkgbase}"
|
||||||
|
done
|
||||||
|
|
||||||
|
if (( all )); then
|
||||||
|
lines=(/usr/lib/modules/*)
|
||||||
|
fi
|
||||||
|
|
||||||
|
[[ ${DRACUT_QUIET} == "true" ]] && DRACUT_EXTRA_PARAMS=" --quiet"
|
||||||
|
|
||||||
|
for line in "${lines[@]}"; do
|
||||||
|
if ! pacman -Qqo "${line}/pkgbase" &> /dev/null; then
|
||||||
|
# if pkgbase does not belong to any package then skip this kernel
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
pkgbase="$(<"${line}/pkgbase")"
|
||||||
|
kver="${line##*/}"
|
||||||
|
dracut_restore_img="/usr/lib/modules/${kver}/initrd"
|
||||||
|
|
||||||
|
echo ":: Building initramfs for ${pkgbase} (${kver})"
|
||||||
|
dracut --force --hostonly --no-hostonly-cmdline${DRACUT_EXTRA_PARAMS} ${dracut_restore_img} "${kver}"
|
||||||
|
install -Dm644 ${dracut_restore_img} "/boot/initramfs-${pkgbase}.img"
|
||||||
|
|
||||||
|
if [[ ${NO_DRACUT_FALLBACK} != "true" ]] ; then
|
||||||
|
echo ":: Building fallback initramfs for ${pkgbase} (${kver})"
|
||||||
|
dracut --force --no-hostonly${DRACUT_EXTRA_PARAMS} "/boot/initramfs-${pkgbase}-fallback.img" "${kver}"
|
||||||
|
fi
|
||||||
|
done
|
|
@ -0,0 +1,10 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
while read -r line; do
|
||||||
|
if [[ "${line}" == */pkgbase ]]; then
|
||||||
|
pkgbase="$(<"/${line}")"
|
||||||
|
kver="$(echo ${line} | cut -d/ -f4)"
|
||||||
|
|
||||||
|
rm -rf "/usr/lib/modules/${kver}" "/boot/vmlinuz-${pkgbase}" "/boot/initramfs-${pkgbase}.img" "/boot/initramfs-${pkgbase}-fallback.img" 2> /dev/null
|
||||||
|
fi
|
||||||
|
done
|
Loading…
Reference in New Issue