summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-10-29Makefile: Add the remove hook and script to installGiancarlo Razzolini1-0/+2
Add the remove hook and remove script as part of the installation.
2019-10-29libalpm/hooks: Change the remove hook to PreTransaction and also match on ↵Giancarlo Razzolini1-1/+2
mkinitcpio-git. Since the hook actually needs to be able to match on a kernel pkgbase, it needs to be ran PreTransaction and not Post. Also add an additional target on mkinitcpio-git, to aid development.
2019-10-15Add a remove hookGiancarlo Razzolini1-0/+15
This hook triggers when a kernel is removed or when the mkinitcpio package itself is being removed.
2019-10-10Rework the install script a bit moreGiancarlo Razzolini1-9/+20
Added comments to make the flow more understandable. We now actively bail when we encounter a kernel with no pkgbase. Also, if the preset does not exist yet, and there is a .pacsave, we move that instead of copying from the template. Move the preset check alongside the check if all was passed and finally, check if the args array is not empty, before trying to run mkinitcpio.
2019-10-10Change the install hook to trigger on usr/lib/initcpio/* instead of ↵Giancarlo Razzolini1-6/+1
mkinitcpio* package Since not only mkinitcpio* packages touch /usr/lib/initcpio, switch the hook to triggering on that.
2019-10-09Change the script to abort on errors and quote the glob on compgenGiancarlo Razzolini1-2/+2
2019-10-09Rework of the script to cover all casesGiancarlo Razzolini1-12/+26
The script did not work properly for the cases where more than one kernel was being installed, or only when mkinitcpio without a kernel is installed. Now the script runs properly on all cases.
2019-10-09Changed the trigger to vmlinuzGiancarlo Razzolini1-1/+1
All the kernels install the kernel to the file vmlinuz, so triggering on it makes more sense. The pkgbase file is still used on the script.
2019-10-09Rename of the hook and scriptGiancarlo Razzolini2-31/+0
2019-10-09Change the Makefile to reflect the change in the names of the hook and scriptGiancarlo Razzolini1-2/+2
2019-10-09Rework the script to create the preset and install the actual kernel to /bootGiancarlo Razzolini1-0/+19
The script now will use a prepared preset to create presets when new kernels are installed. It will also always copy the vmlinuz kernel to /boot.
2019-10-09Change the hook name and change the name of the script called by itGiancarlo Razzolini1-0/+17
The hook was renamed to reflect it will be triggered only on install (or upgrades). This is because we will have a hook/script pair running on kernels removals as well.
2019-10-09Add a preset to be used by the pacman hook to create presets on the flyGiancarlo Razzolini1-0/+14
This will be used by the pacman hook to create presets on the fly for new kernels being installed based on pkgbase.
2019-10-09Add the pacman hook and script files to the installationGiancarlo Razzolini1-1/+6
Changed the Makefile to properly install the pacman hook and script.
2019-10-09Add a mkinitcpio pacman scriptGiancarlo Razzolini1-0/+14
This script runs on mkinitcpio package updates as well as on kernel updates that have the pkgbase file on their modules directory. It will use the contents of that file to determine which preset to run or, in case not pkgbase file is passed to it, it will run all presets with -P.
2019-10-09Add a new mkinitcpio pacman hookGiancarlo Razzolini1-0/+17
This hook runs on mkinitcpio updates as well as on kernels containing the pkgbase file on their modules directory. It calls the mkinitcpio script.
2019-10-07Merge branch 'fix-hookdir-flag'v26Giancarlo Razzolini3-5/+7
Added the hookdir flag to the parser and also added it to the completions.
2019-10-07Add the hookdir option to both bash and zsh completion filesGiancarlo Razzolini2-2/+3
2019-10-07Split the hookdir var creation and also add the hookdir option to the optparser.Giancarlo Razzolini1-3/+4
2019-10-07Add initramfs to provides=() in the PKGBUILDGiancarlo Razzolini1-1/+1
2019-10-07Change the PKGBUILD to use $startdirGiancarlo Razzolini1-2/+2
2019-10-04Merge branch 'falconindy-master'Giancarlo Razzolini1-15/+13
2019-10-04Merge branch 'master' of https://github.com/falconindy/mkinitcpio into ↵Giancarlo Razzolini1-15/+13
falconindy-master
2019-10-04Merge branch 'Foxboron-morten/hookdir-flag'Giancarlo Razzolini2-1/+16
2019-10-04* Fix whitespaceGiancarlo Razzolini1-1/+1
2019-10-04[mkinitcpio] Fixup declaration and remove trailing :Morten Linderud1-4/+3
2019-10-04[mkinitcpio] Support multiple hook pathsMorten Linderud1-2/+9
2019-10-04Add flag to specify where to look for hooks.Morten Linderud2-1/+10
2019-09-17consolidate error reporting within generation pipelineDave Reisner1-15/+13
2019-09-16Merge branch 'Foxboron-morten/copyright'Giancarlo Razzolini4-4/+5
2019-09-16Merge branch 'morten/copyright' of https://github.com/Foxboron/mkinitcpio ↵Giancarlo Razzolini4-4/+5
into Foxboron-morten/copyright
2019-09-15[README] Add grazzolini to the copyrightMorten Linderud1-0/+1
2019-09-14Merge pull request #1 from esotericnonsense/esotericnonsense/reproducibleGiancarlo Razzolini2-10/+29
mkinitcpio: Produce reproducible initramfs images
2019-09-10Updated copyright yearMorten Linderud4-4/+4
2019-09-09mkinitcpio: Produce reproducible initramfs imagesDaniel Edgecumbe2-10/+29
We achieve this by stripping timestamps from within the filesystem, and by using a pipeline to strip inodes from the cpio archive. It functions for at least the 'gzip', 'xz', 'bzip2', 'lz4' and 'cat' compressors. The 'lzop' compressor embeds a runtime timestamp. Motivation: https://reproducible-builds.org Signed-off-by: Daniel Edgecumbe <git@esotericnonsense.com>
2018-10-09install/block: avoid conditional addition of drivers25Dave Reisner1-17/+8
Avoid over-optimizing autodetect and always add these. This allows storage drivers to be builtins and still trigger addition of the block node driver.
2018-03-29ship /var/run as symlink to /runDave Reisner1-1/+2
This might not strictly be strictly needed, but systemd documents it as being a requirement, else it adds a var-run-bad taint flag.
2017-12-30Remove install hook aliases for block and keyboardDave Reisner8-8/+0
These have been deprecated since 2012. I think that's enough time for people to migrate.
2017-12-30cleanup some shellcheck lint warningsDave Reisner1-13/+11
2017-11-25PKGBUILD: fix upstream URLDave Reisner1-1/+1
2017-11-25lsinitcpio: Attempt to estimate only decompression timeDave Reisner1-10/+10
Read time is constant between compression methods and we can't possibly estimate this accurately since reading the image from disk doesn't happen with kernel userland functions, but instead UEFI or 16-bit realmode capabilities. ref: https://bugs.archlinux.org/task/56417
2017-10-06Restore addition of modules from config fileDave Reisner1-1/+10
Broken by c5ad00c2. ref: https://bugs.archlinux.org/task/55870
2017-10-01man: include package name in versionv24Dave Reisner1-1/+1
2017-10-01add crc32c for ext4Dave Reisner1-0/+3
Might be needed for ext4 filesystems formatted with the metadata_csum option. ref: https://bugs.archlinux.org/task/54091
2017-10-01Avoid erroneous deprecation warningsDave Reisner2-15/+6
Consistently handle hooks as symlinks by relying on the exit status of readlink instead of an lstat and always, additionally, examine the hooks basenames to ensure that we aren't warning about foo deprecating foo (because the hook is a symlink to somewhere else that the hook is actually stored on disk. ref: https://bugs.archlinux.org/task/55323
2017-10-01install/keyboard: fix wording in hook helpDave Reisner1-2/+2
ref: https://bugs.archlinux.org/task/54460
2017-08-22make ldd parsing compatible with upstream glibc changesDave Reisner1-3/+3
https://sourceware.org/git/?p=glibc.git;a=commit;h=eedca9772e99c72ab4c3c34e43cc764250aa3e3c
2017-08-20functions: add_full_dir: path prefix strip-offErik Stromdahl2-5/+11
Add third argument to add_full_dir: strip_prefix. The strip_prefix will be stripped off from the destination path (path in the initramfs image) when adding files. Rationale: Make it easier to add rootfs overlay hooks when generating images. add_full_dir can be invoked in this way: add_full_dir /path/on/parent/rootfs-overlay * /path/on/parent/rootfs-overlay The above invocation will add all content of */path/on/parent/rootfs-overlay* into */* in the initramfs image. Signed-off-by: Erik Stromdahl <erik.stromdahl@gmail.com>
2017-08-20functions: add_full_dir: recursive filterErik Stromdahl1-1/+1
By passing the filter glob in all recursive invocations of add_full_dir, the filtering is performed on all subdirs and not just the top dir. This makes the implementation correspond to the documented behavior in the man page. Signed-off-by: Erik Stromdahl <erik.stromdahl@gmail.com>
2017-03-19arrayize config vars in mkinitcpio.confDave Reisner4-33/+42
allows for backwards compat by detecting and converting old-style string-based configs.