Сайт | Скачать | Видео | Wiki

Автор Тема: Grub4dos. Многоуровневое меню в единственном MENU.LST  (Прочитано 497 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18188
  • Репутация: +140/-0
    • PuppyRus-A
кусок конфига
Выложите целиком . Не понял где задаются переменные
на заметку - http://usbtor.ru/viewtopic.php?t=945
Кто скачал из их шапки - выложите если работает

Оффлайн rockdgon

  • Новичок
  • *
  • Сообщений: 15
  • Репутация: +0/-0
Давайте лучше сегодня вечером выложу свой конфиг в подготовленном для изучения виде!
Выкину из него тяжелые файлы.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 18188
  • Репутация: +140/-0
    • PuppyRus-A
ок. Многоуровневое меню в единственном MENU.LST - интересно
 

Оффлайн rockdgon

  • Новичок
  • *
  • Сообщений: 15
  • Репутация: +0/-0
http://rgho.st/6Zz2qqPrW готовый пример.
Если используем свой загрузчик, то грузим /ACAB/BOOT/G4D/GRLDR
Если с нуля на диск копируем, то с помощью BootICE восстанавливаем на накопитель MBR -  /ACAB/BOOT/MBR/WEEtoG4D или XORtoG4D

Папка GrubMenu+ для того чтобы GRLDR пропатчить со своим заголовком.
Само меню лежит тут /ACAB/BOOT/G4D/MENU.LST
pra64 кидать в /ACAB/LINUX
ядро переименовать в vmlinuz
« Последнее редактирование: 29 Декабрь 2016, 18:32:21 от rockdgon »

Оффлайн mikron2215

  • Постоялец
  • ***
  • Сообщений: 153
  • Репутация: +2/-0
готовый пример
Извените конечно rockdgon, сама тема многоуровневого меню возможно интересна если пользоваться как Ливсиди от nikzzzz, а если чисто чтоб запустить ПРА-64 с разными параметрами то смысл ?
наворачивать столько папок чтоб все равно папку ПРА положить в /ACAB/LINUX ? и к тому же меню лист все равно остался, только теперь по более усложненной схеме.
PS со статьей  http://usbtor.ru/viewtopic.php?t=945 ознакомился.
« Последнее редактирование: 29 Декабрь 2016, 21:16:35 от mikron2215 »
lenovo B580, GIGABYTE GA-H61M-S1, CUBX-E mhz633ram1024(4x256),AGP MX440-64m

Оффлайн rockdgon

  • Новичок
  • *
  • Сообщений: 15
  • Репутация: +0/-0
mikron2215
Это я выложил в таком виде. Так как сам мультифлешку делаю. Моя структура файлов тут не причем.
А на деле там все по минимуму: загрузчик, шрифт и файл меню.
Можно сделать меню для PRA в одном файле, исключив переходы по другим файлам меню.
Для выбора видео драйверов например.
Ну и кошерно это будет полюбому 8)

Оффлайн mikron2215

  • Постоялец
  • ***
  • Сообщений: 153
  • Репутация: +2/-0
Ну с украшением не спорю, выглядит красивее...
Так тогда бы исходники чисто для линукса выложили, чтоб лишнее не лопатить и опять не упрощать.
Если я вас правильно понял то из вашего примера:
нужно папку  BOOT/G4D+LINUX и (GrubMenu+) ну и желательно пример из статьи с описанием про пункты.
« Последнее редактирование: 29 Декабрь 2016, 21:53:11 от mikron2215 »
lenovo B580, GIGABYTE GA-H61M-S1, CUBX-E mhz633ram1024(4x256),AGP MX440-64m

Оффлайн rockdgon

  • Новичок
  • *
  • Сообщений: 15
  • Репутация: +0/-0
Ну если прям вообще все обрезать для понимания нужно будет. То перезалью вообще по минимуму.
А то действительно заготовку для флешки выложил)

Я еще почему так сделал. У меня пункт раскрывающийся с подпунктами что касается PRA - один.
И если я все обрежу, то и наглядности не будет.

А вот чтобы разнообразить это меню, то это уже мне конфиги PRA разобрать придется.
Поэтому я запаковал для разработчиков. Они то точно картинку увидят сразу, того что должно быть. Если вложенность меню пригодиться.

Вот, смотрите сами:


Т.Е. обрезал все так чтобы посмотреть.
А если ближе к делу, то нужна папка ACAB/BOOT/G4D
в ней файлы GRLDR, FONT и MENU.LST
GRLDR вы можете использовать свой, по идее
Переместите к себе в папку BOOT файл шрифта FONT и создайте там же TEST.LST - на который уже из своего MENU.LST ссылайтесь
iftitle [find /BOOT/TEST.LST] Тест многоуровнего меню в PRA
configfile /BOOT/TEST.LST
А вот код для TEST.LST
default %n%
timeout 10
font /BOOT/FONT
graphicsmode -1

#1
iftitle [if not "%PUNKT1%"=="1"] ⊞ PuppyRus-A x86-64 PRA1611 ver.FAT 30/11/2016\n
set PUNKT1=1
set /a n=2
set n1=4
configfile (md)4+8
boot

iftitle [if "%PUNKT1%"=="1"] ⊟ PuppyRus-A x86-64 PRA1611 ver.FAT 30/11/2016\n
set PUNKT1=0
set /a n=1
set n1=0
configfile (md)4+8
boot

#1.1
iftitle [if "%PUNKT1%"=="1"] ├ Default\n
kernel /путь/к/vmlinuz dir=путь/к/pra64 quiet load=mesa noswap nocd nomagic norootcopy zram=33%
initrd /путь/к/initrd.xz

#1.2
iftitle [if "%PUNKT1%"=="1"] ├ Save\n
kernel /путь/к/vmlinuz dir=путь/к/pra64 quiet load=mesa noswap nocd nomagic norootcopy zram=33% changes=путь/к/pra64/pra64-save.dat
initrd /путь/к/initrd.xz

#1.3
iftitle [if "%PUNKT1%"=="1"] ├ Save + Copy2Ram\n
kernel /путь/к/vmlinuz dir=путь/к/pra64 quiet load=mesa noswap nocd nomagic norootcopy zram=33% copy2ram changes=путь/к/pra64/pra64-save.dat
initrd /путь/к/initrd.xz

#1.4
iftitle [if "%PUNKT1%"=="1"] └ Save + Copy2Ram + extra options\n
kernel /путь/к/vmlinuz modprobe.blacklist=pcspkr,ipv6 dir=путь/к/pra64 quiet load=mesa noswap nocd nomagic norootcopy zram=33% copy2ram changes=путь/к/pra64/pra64-save.dat net.ifnames=0 biosdevname=0
initrd /путь/к/initrd.xz

#2
title \n
clear

#3
iftitle [if not "%PUNKT3%"=="1"] ⊞ Slax 7.0.8 x86-64\n
set PUNKT3=1
set /a n=4+%n1%-0
set n3=4
configfile (md)4+8
boot

iftitle [if "%PUNKT3%"=="1"] ⊟ Slax 7.0.8 x86-64\n
set PUNKT3=0
set /a n=3+%n1%-0
set n3=0
configfile (md)4+8
boot

#3.1
iftitle [if "%PUNKT3%"=="1"] ├ Default\n
kernel /путь/к/vmlinuz slax.flags=xmode
initrd /путь/к/initrfs.img

#3.2
iftitle [if "%PUNKT3%"=="1"] ├ Save\n
kernel /путь/к/vmlinuz slax.flags=perch,xmode
initrd /путь/к/initrfs.img

#3.3
iftitle [if "%PUNKT3%"=="1"] ├ Save + Copy2Ram\n
kernel /путь/к/vmlinuz slax.flags=toram,perch,xmode
initrd /путь/к/initrfs.img

#3.4
iftitle [if "%PUNKT3%"=="1"] └ Save + Copy2Ram + extra options\n
kernel /путь/к/vmlinuz vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=toram,perch,xmode splash=silent nomagic norootcopy net.ifnames=0 biosdevname=0 quiet
initrd /путь/к/initrfs.img

#4
title \n
clear

#5
iftitle [find /BOOT/MENU.LST]   Вернуться в главное меню
configfile /BOOT/MENU.LST

#6
title   Перезагрузка\n
reboot

#7
title   Выключение ПК\n
halt

Ну как то так. Меню со SLAX оставил чтобы понять логику можно было.
« Последнее редактирование: 29 Декабрь 2016, 23:46:52 от rockdgon »

Оффлайн rockdgon

  • Новичок
  • *
  • Сообщений: 15
  • Репутация: +0/-0
дополнил прошлый пост, смотрите...

Оффлайн mikron2215

  • Постоялец
  • ***
  • Сообщений: 153
  • Репутация: +2/-0
Так можно и оставить для начала. Спасибо!
lenovo B580, GIGABYTE GA-H61M-S1, CUBX-E mhz633ram1024(4x256),AGP MX440-64m