add sorting options

This commit is contained in:
James Barnett
2016-03-19 08:19:10 -05:00
parent 59164367e7
commit f820de4759
2 changed files with 15 additions and 1 deletions

View File

@@ -74,6 +74,12 @@ ninit=("${GRUB_BTRFS_NINIT[@]}")
microcode=("${GRUB_BTRFS_INTEL_UCODE[@]}")
## Limit to show in menu
limit=("${GRUB_BTRFS_LIMIT[@]:-100}")
## How to sort
subvolsort=${GRUB_BTRFS_SUBVOLUME_SORT:-"descending"}
case "${subvolsort}" in
ascending) btrfssubvolsort=("--sort=+rootid");;
*) btrfssubvolsort=("--sort=-rootid")
esac
########################
### variables script ###
@@ -158,7 +164,7 @@ snapshots_entry()
## List of snapshots on filesystem
snapshot_list()
{
for snap in $(btrfs subvolume list -sa --sort=-rootid /); do
for snap in $(btrfs subvolume list -sa "${btrfssubvolsort}" /); do
IFS=$oldIFS
snap=($snap)
local snap_path_name=${snap[@]:13:${#snap[@]}}

View File

@@ -54,7 +54,15 @@ Add this lines to /etc/default/grub:
(Use only if you have custom intel-ucode or auto-detect failed.)
* GRUB_BTRFS_LIMIT=("100")
(Limit the number of snapshots populated in the GRUB menu.)
* GRUB_BTRFS_SUBVOLUME_SORT=("descending")
(Sort the found subvolumes by newest first ("descending") or oldest first
("ascending"). If "ascending" is chosen then the $GRUB_BTRFS_LIMIT oldest
subvolumes will populate the menu.)
Generate grub.cfg (on Archlinux use grub-mkconfig -o /boot/grub/grub.cfg )