summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorIru Cai2018-01-08 10:56:34 +0800
committerIru Cai2018-01-08 10:56:34 +0800
commit6477de819e428aa7d32340d571f5e3c9a6a19ea2 (patch)
treeb09df77dda4bfe41c0d6962d958533eadeaf5a63
downloadaur-6477de819e428aa7d32340d571f5e3c9a6a19ea2.tar.gz
initial
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD22
-rwxr-xr-xinstall-tools48
-rw-r--r--install-tools.preset10
4 files changed, 101 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..100b1dd6429a
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,21 @@
+# Generated by mksrcinfo v8
+# Mon Jan 8 02:56:27 UTC 2018
+pkgbase = mkinitcpio-install-tools
+ pkgdesc = build an initramfs that can bootstrap Arch
+ pkgver = 1.0
+ pkgrel = 1
+ url = https://www.archlinux.org
+ arch = x86_64
+ license = GPL
+ depends = btrfs-progs
+ depends = curl
+ depends = wget
+ depends = bind-tools
+ depends = mkinitcpio-nfs-utils
+ source = install-tools
+ source = install-tools.preset
+ sha256sums = 7e5bd15a73fde3dc3f9fd193454e2e66cea8710690caecec22231348d15d1613
+ sha256sums = d8c1846236dbe41f0647aec00670c8de48d3dd72b3d60c63b513bbbe03354a69
+
+pkgname = mkinitcpio-install-tools
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..92379258d7a6
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,22 @@
+# Maintainer: vimacs <https://vimacs.lcpu.club>
+pkgname=mkinitcpio-install-tools
+pkgver=1.0
+pkgrel=1
+pkgdesc="build an initramfs that can bootstrap Arch"
+arch=(x86_64)
+url='https://www.archlinux.org'
+license=('GPL')
+depends=('btrfs-progs' 'curl' 'wget' 'bind-tools' 'mkinitcpio-nfs-utils')
+source=('install-tools' 'install-tools.preset')
+sha256sums=('7e5bd15a73fde3dc3f9fd193454e2e66cea8710690caecec22231348d15d1613'
+ 'd8c1846236dbe41f0647aec00670c8de48d3dd72b3d60c63b513bbbe03354a69')
+
+build() {
+ true
+}
+
+package() {
+ install -D -m 644 install-tools.preset "$pkgdir/etc/mkinitcpio.d/install-tools.preset"
+ install -D -m 644 install-tools "$pkgdir/usr/lib/initcpio/install/install-tools"
+}
+
diff --git a/install-tools b/install-tools
new file mode 100755
index 000000000000..4d46a835c8c3
--- /dev/null
+++ b/install-tools
@@ -0,0 +1,48 @@
+#!/bin/bash
+
+build() {
+ local fs bin hook
+
+ for fs in ext2 ext3 ext4 btrfs; do
+ [[ -f /usr/bin/mkfs.$fs ]] && add_binary mkfs.$fs
+ done
+
+ [[ -e /etc/mke2fs.conf ]] && add_file /etc/mke2fs.conf
+
+ for bin in /usr/bin/btrfs*; do
+ [[ -f $bin ]] && add_binary "$bin"
+ done
+
+ add_binary dhcpcd
+ add_file /usr/lib/dhcpcd/dhcpcd-run-hooks
+ add_file /etc/dhcpcd.conf
+ add_dir /var/lib/dhcpcd
+ for hook in /usr/lib/dhcpcd/dhcpcd-hooks/*; do
+ [[ -f "$hook" ]] && add_file "$hook"
+ done
+
+ add_file /etc/ssl/certs/ca-certificates.crt
+ add_file /etc/ssl/cert.pem
+
+ add_binary wget
+ add_file /etc/wgetrc
+ for bin in /usr/lib/libnss_dns* /usr/lib/libnss_files* /usr/lib/libnss_mymachines* /usr/lib/libnss_resolv* ; do
+ add_binary "$bin"
+ done
+
+ add_binary curl
+
+ add_binary host
+ add_binary nslookup
+ add_binary fdisk
+ add_binary bash
+ which strace && add_binary strace
+}
+
+help() {
+ cat <<HELPEOF
+This hook provides the tools to partition the disk and install a system.
+HELPEOF
+}
+
+# vim: set ft=sh ts=4 sw=4 et:
diff --git a/install-tools.preset b/install-tools.preset
new file mode 100644
index 000000000000..278aae3f9318
--- /dev/null
+++ b/install-tools.preset
@@ -0,0 +1,10 @@
+# mkinitcpio preset file for the 'linux' package
+
+ALL_config="/etc/mkinitcpio.conf"
+ALL_kver="/boot/vmlinuz-linux"
+
+PRESETS=('fallback')
+
+#fallback_config="/etc/mkinitcpio.conf"
+fallback_image="/tmp/initramfs-linux-fallback.img"
+fallback_options="-S autodetect -A net,install-tools"