vovan1982
- Longevity: 9 years
- Posts: 1132
- REPUTATION:77[+] [-]
- Location: Ростов-на-Дону
|
AZJIO, спасибо. Я только утреннее обновление опробовал, а тут новое вышло. PS: Думаю нужно репозиторий делать
|
AZJIO
- Longevity: 6 years 9 months
- Posts: 1324
- REPUTATION:127[+] [-]
|
Обновлено 1. Значки кнопок сохранения (2 шт) изменяются на красный цвет, когда документ требует сохранения 2. Окно информации теперь поддерживает множество кнопок и зависит от числа параметров в секции [info] в ini-файле. 3. Моноширинный шрифт для окна инфо можно задать в ini-файле FontInfo=DejaVuSansMono 4. Исправлена ошибка связанная с изменением размера окна информации, которая распространялась на оба окна.
|
vovan1982
- Longevity: 9 years
- Posts: 1132
- REPUTATION:77[+] [-]
- Location: Ростов-на-Дону
|
AZJIO, приветствую. Протестировал обновление. Стало еще лучше и удобнее. Есть просьба. Добавить шаблоны, которые потом можно было бы использовать. Например: сохранить выражение probe --set=UUID --fs-uuid $root, чтобы потом была возможность подменять UUID раздела переменной $UUID. Для того, чтобы шаблоны были под рукой.
|
Отправлено: 08-Mar-2024 14:43
(after 2 hours 23 minutes)
vovan1982
- Longevity: 9 years
- Posts: 1132
- REPUTATION:77[+] [-]
- Location: Ростов-на-Дону
|
AZJIO, 2-й вариант мне нравится. ЗЫ: прилагаю свой конфиг. Просто у меня нигде явно UUID не указан. Ну это так, для ознакомления.grub_cfg# # DO NOT EDIT THIS FILE # # It is automatically generated by grub-mkconfig using templates # from /etc/grub.d and settings from /etc/default/grub # ### BEGIN /etc/grub.d/00_header ### probe --set=UUID --fs-uuid $root if [ -s $prefix/grubenv ]; then set have_grubenv=true load_env fi if [ "${initrdfail}" = 2 ]; then set initrdfail= elif [ "${initrdfail}" = 1 ]; then set next_entry="${prev_entry}" set prev_entry= save_env prev_entry if [ "${next_entry}" ]; then set initrdfail=2 fi fi if [ "${next_entry}" ] ; then set default="${next_entry}" set next_entry= save_env next_entry set boot_once=true else set default="${saved_entry}" fi if [ x"${feature_menuentry_id}" = xy ]; then menuentry_id_option="--id" else menuentry_id_option="" fi export menuentry_id_option if [ "${prev_saved_entry}" ]; then set saved_entry="${prev_saved_entry}" save_env saved_entry set prev_saved_entry= save_env prev_saved_entry set boot_once=true fi function savedefault { if [ -z "${boot_once}" ]; then saved_entry="${chosen}" save_env saved_entry fi } function initrdfail { if [ -n "${have_grubenv}" ]; then if [ -n "${partuuid}" ]; then if [ -z "${initrdfail}" ]; then set initrdfail=1 if [ -n "${boot_once}" ]; then set prev_entry="${default}" save_env prev_entry fi fi save_env initrdfail fi; fi } function recordfail { set recordfail=1 if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi } function load_video { if [ x$feature_all_video_module = xy ]; then insmod all_video else insmod efi_gop insmod efi_uga insmod ieee1275_fb insmod vbe insmod vga insmod video_bochs insmod video_cirrus fi } insmod part_msdos insmod ext2 set root='hd1,msdos6' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos6 --hint-efi=hd1,msdos6 --hint-baremetal=ahci1,msdos6 $UUID else search --no-floppy --fs-uuid --set=root $UUID fi if loadfont /boot/grub/fonts/UbuntuMono32.pf2 ; then set gfxmode=1920x1080,auto load_video insmod gfxterm set locale_dir=$prefix/locale set lang=ru_RU insmod gettext fi terminal_output gfxterm insmod part_msdos insmod ext2 set root='hd1,msdos6' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos6 --hint-efi=hd1,msdos6 --hint-baremetal=ahci1,msdos6 $UUID else search --no-floppy --fs-uuid --set=root $UUID fi insmod gfxmenu insmod png set theme=($root)/boot/grub/themes/linuxmint-2k/theme.txt export theme if [ "${recordfail}" = 1 ] ; then set timeout=30 else if [ x$feature_timeout_style = xy ] ; then set timeout_style=hidden set timeout=5 # Fallback hidden-timeout code in case the timeout_style feature is # unavailable. elif sleep --interruptible 5 ; then set timeout=0 fi fi ### END /etc/grub.d/00_header ### ### BEGIN /etc/grub.d/05_debian_theme ### set menu_color_normal=white/black set menu_color_highlight=black/light-gray ### END /etc/grub.d/05_debian_theme ### ### BEGIN /etc/grub.d/10_linux_proxy ### function gfxmode { set gfxpayload="${1}" if [ "${1}" = "keep" ]; then set vt_handoff=vt.handoff=7 else set vt_handoff= fi } if [ "${recordfail}" != 1 ]; then if [ -e ${prefix}/gfxblacklist.txt ]; then if [ ${grub_platform} != pc ]; then set linux_gfx_mode=keep elif hwmatch ${prefix}/gfxblacklist.txt 3; then if [ ${match} = 0 ]; then set linux_gfx_mode=keep else set linux_gfx_mode=text fi else set linux_gfx_mode=text fi else set linux_gfx_mode=keep fi else set linux_gfx_mode=text fi export linux_gfx_mode menuentry "Linux Mint 21.3 Cinnamon" --hotkey "m" --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-$UUID' { recordfail savedefault load_video gfxmode $linux_gfx_mode insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_msdos insmod ext2 set root='hd1,msdos6' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos6 --hint-efi=hd1,msdos6 --hint-baremetal=ahci1,msdos6 $UUID else search --no-floppy --fs-uuid --set=root $UUID fi linux /boot/vmlinuz-6.5.0-25-generic root=UUID=$UUID ro quiet splash $vt_handoff initrd /boot/initrd.img-6.5.0-25-generic } ### END /etc/grub.d/10_linux_proxy ### ### BEGIN /etc/grub.d/30_os-prober_proxy ### probe --set=WUID --fs-uuid (hd0,msdos1) menuentry "Windows 10 (on /dev/sda1)" --hotkey "w" --class windows --class os $menuentry_id_option 'osprober-chain-$WUID' { savedefault insmod part_msdos insmod ntfs set root='hd0,msdos1' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 $WUID else search --no-floppy --fs-uuid --set=root $WUID fi parttool ${root} hidden- drivemap -s (hd0) ${root} chainloader +1 } ### END /etc/grub.d/30_os-prober_proxy ### ### BEGIN /etc/grub.d/31_linux_zfs ### ### END /etc/grub.d/31_linux_zfs ### ### BEGIN /etc/grub.d/32_linux_xen ### ### END /etc/grub.d/32_linux_xen ### ### BEGIN /etc/grub.d/33_os-prober_proxy ### set timeout_style=menu if [ "${timeout}" = 0 ]; then set timeout=10 fi ### END /etc/grub.d/33_os-prober_proxy ### ### BEGIN /etc/grub.d/34_uefi-firmware ### ### END /etc/grub.d/34_uefi-firmware ### ### BEGIN /etc/grub.d/35_fwupd ### ### END /etc/grub.d/35_fwupd ### ### BEGIN /etc/grub.d/40_custom_proxy ### # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. menuentry "Grub2 FM" --hotkey "g" --class linux { set root='hd0,msdos1' search --no-floppy --fs-uuid --set=root $UUID if [ ${grub_cpu} = "x86_64" -a ${grub_platform} = "efi" ]; then chainloader /boot/grub/grubfmx64.efi else loopback loop /boot/grub/grubfm.iso linux /boot/grub/loadfm initrd /boot/grub/grubfm.iso fi } menuentry "Reboot" --hotkey "r" --class restart { reboot } menuentry "Shutdown" --hotkey "s" --class shutdown { halt } ### END /etc/grub.d/40_custom_proxy ### ### BEGIN /etc/grub.d/41_linux_proxy ### probe --set=UUID --fs-uuid $root submenu "Advanced options for Linux Mint 21.3 Cinnamon" --hotkey "a" --class steamos { menuentry "Linux Mint 21.3, with Linux 6.5.0-25-generic" --hotkey "1" --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-25-generic-advanced-$UUID' { recordfail savedefault load_video gfxmode $linux_gfx_mode insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_msdos insmod ext2 set root='hd1,msdos6' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos6 --hint-efi=hd1,msdos6 --hint-baremetal=ahci1,msdos6 $UUID else search --no-floppy --fs-uuid --set=root $UUID fi echo 'Loading Linux 6.5.0-25-generic ...' linux /boot/vmlinuz-6.5.0-25-generic root=UUID=$UUID ro quiet splash $vt_handoff echo 'Loading initial ramdisk ...' initrd /boot/initrd.img-6.5.0-25-generic } menuentry "Linux Mint 21.3, with Linux 6.5.0-25-generic (recovery mode)" --hotkey "2" --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-25-generic-recovery-$UUID' { recordfail load_video insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_msdos insmod ext2 set root='hd1,msdos6' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos6 --hint-efi=hd1,msdos6 --hint-baremetal=ahci1,msdos6 $UUID else search --no-floppy --fs-uuid --set=root $UUID fi echo 'Loading Linux 6.5.0-25-generic ...' linux /boot/vmlinuz-6.5.0-25-generic root=UUID=$UUID ro recovery nomodeset dis_ucode_ldr echo 'Loading initial ramdisk ...' initrd /boot/initrd.img-6.5.0-25-generic } menuentry "Linux Mint 21.3, with Linux 5.15.0-100-generic" --hotkey "3" --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.0-100-generic-advanced-$UUID' { recordfail savedefault load_video gfxmode $linux_gfx_mode insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_msdos insmod ext2 set root='hd1,msdos6' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos6 --hint-efi=hd1,msdos6 --hint-baremetal=ahci1,msdos6 $UUID else search --no-floppy --fs-uuid --set=root $UUID fi echo 'Loading Linux 5.15.0-100-generic ...' linux /boot/vmlinuz-5.15.0-100-generic root=UUID=$UUID ro quiet splash $vt_handoff echo 'Loading initial ramdisk ...' initrd /boot/initrd.img-5.15.0-100-generic } menuentry "Linux Mint 21.3, with Linux 5.15.0-100-generic (recovery mode)" --hotkey "4" --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.0-100-generic-recovery-$UUID' { recordfail load_video insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_msdos insmod ext2 set root='hd1,msdos6' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos6 --hint-efi=hd1,msdos6 --hint-baremetal=ahci1,msdos6 $UUID else search --no-floppy --fs-uuid --set=root $UUID fi echo 'Loading Linux 5.15.0-100-generic ...' linux /boot/vmlinuz-5.15.0-100-generic root=UUID=$UUID ro recovery nomodeset dis_ucode_ldr echo 'Loading initial ramdisk ...' initrd /boot/initrd.img-5.15.0-100-generic } } ### END /etc/grub.d/41_linux_proxy ### ### BEGIN /etc/grub.d/43_custom ### if [ -f ${config_directory}/custom.cfg ]; then source ${config_directory}/custom.cfg elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then source $prefix/custom.cfg fi ### END /etc/grub.d/43_custom ###
|
Отправлено: 08-Mar-2024 15:44
(after 1 hour 1 minute)
AZJIO
- Longevity: 6 years 9 months
- Posts: 1324
- REPUTATION:127[+] [-]
|
vovan1982, я сейчас в Windows сделал выше сказанные фичи (поиск UUID регвыром и мессага с предложением заменить), но лень пока в Linux перезагружать чтобы компилировать и собирать. У меня четыре ОС, иногда даже больше, если бы диск сразу купил на 2 терабайта точно было бы больше и под каждую ОС свой UUID и вариант с одним UUID на всех не подходит, а в шаблонах его вообще нет, там они могут появится если пользователь сделал копии своих пунктов как шаблоны. Если UUID сохранён как переменная, это тоже не создаёт проблем. Я могу сделать окно замены, чтобы найти в конфиге какой-то текст и заменить другим. Мне кажется это более универсальное решение, чем прописывать что-то индивидуальное. Или даже добавить историю замен, чтобы можно было выбрать.
|
AZJIO
- Longevity: 6 years 9 months
- Posts: 1324
- REPUTATION:127[+] [-]
|
Обновления При открытии шаблона если в нём есть UUID и в буфере обмена UUID, то предложение заменить UUID в шаблоне. Необходимость сохранения теперь также контролируется при дублировании, удалении, открытии шаблона При закрытии программы предлагается сохранить, если данные помечены как не сохранённые.
|
AZJIO
- Longevity: 6 years 9 months
- Posts: 1324
- REPUTATION:127[+] [-]
|
Обновление Добавлено диалоговое окно замены.
|
vovan1982
- Longevity: 9 years
- Posts: 1132
- REPUTATION:77[+] [-]
- Location: Ростов-на-Дону
|
AZJIO, отличнл. Завтра опробую.
|
AZJIO
- Longevity: 6 years 9 months
- Posts: 1324
- REPUTATION:127[+] [-]
|
Вот так оно выглядит.
|
vovan1982
- Longevity: 9 years
- Posts: 1132
- REPUTATION:77[+] [-]
- Location: Ростов-на-Дону
|
AZJIO, привет. Отлично. И шаблоны и поиск и замена. Единственное. На MINT'е не запоминает выбор "запускать от root".
|
vovan1982
- Longevity: 9 years
- Posts: 1132
- REPUTATION:77[+] [-]
- Location: Ростов-на-Дону
|
AZJIO, спасибо за разъяснение. Я подумал, что и пароль спрашивать не будет. А где сохраняет ini файл?
|
AZJIO
- Longevity: 6 years 9 months
- Posts: 1324
- REPUTATION:127[+] [-]
|
102594 А где сохраняет ini файл? /home/user/.config/Grub2-generator/ На днях как нибудь скомпилирую с бэкапированием без админа, исходник уже обновил, на арче собрал.
|
vovan1982
- Longevity: 9 years
- Posts: 1132
- REPUTATION:77[+] [-]
- Location: Ростов-на-Дону
|
AZJIO, на данном этапе я от софтины уже получил то, что хотел. Куски кода бэкапит и их потом можно восстановить. Данную фичу я проверил. Если будет дальнейшее развитие, то я также в деле по тестированию. PS: на самом деле ini и шаблоны сохраняет в /root/.config/Grub2-generator/ и /root/.config/Grub2-generator/template/ , но для меня это не проблема, просто нужно было знать путь к месту сохранения.
|
Page 2 of 3
Current time is: 06-Dec 00:55
All times are UTC + 3
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
|