mirror of
https://github.com/ventoy/Ventoy.git
synced 2025-02-03 18:06:06 -05:00
update for new release
This commit is contained in:
parent
a6d3ecc7a9
commit
0f8478fbe1
@ -202,3 +202,10 @@
|
|||||||
https://busybox.net/downloads/binaries/1.31.0-i686-uclibc/ busybox_ASH
|
https://busybox.net/downloads/binaries/1.31.0-i686-uclibc/ busybox_ASH
|
||||||
SHA-256: 2943f02f85fee0c9551aec47110a558a73f919c032b3c51e56d6f197b5ec4d7b
|
SHA-256: 2943f02f85fee0c9551aec47110a558a73f919c032b3c51e56d6f197b5ec4d7b
|
||||||
|
|
||||||
|
5.12 7za.exe
|
||||||
|
download from https://www.7-zip.org/a/7z1900-extra.7z
|
||||||
|
ISNTALL/ventoy/7z/64/7za.exe SHA-256: 8117e40ee7f824f63373a4f5625bb62749f69159d0c449b3ce2f35aad3b83549
|
||||||
|
ISNTALL/ventoy/7z/32/7za.exe SHA-256: ea308c76a2f927b160a143d94072b0dce232e04b751f0c6432a94e05164e716d
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@ grub_env_new_context (int export_all)
|
|||||||
grub_err_t
|
grub_err_t
|
||||||
grub_env_context_open (void)
|
grub_env_context_open (void)
|
||||||
{
|
{
|
||||||
return grub_env_new_context (1);
|
return grub_env_new_context (grub_env_get("ventoy_new_context") ? 0 : 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int grub_extractor_level = 0;
|
int grub_extractor_level = 0;
|
||||||
|
@ -853,13 +853,17 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GRUB_TERM_KEY_F6:
|
case GRUB_TERM_KEY_F6:
|
||||||
|
if (0 == g_ventoy_fn_mutex) {
|
||||||
cmdstr = grub_env_get("VTOY_F6_CMD");
|
cmdstr = grub_env_get("VTOY_F6_CMD");
|
||||||
if (cmdstr)
|
if (cmdstr)
|
||||||
{
|
{
|
||||||
menu_fini ();
|
menu_fini ();
|
||||||
|
g_ventoy_fn_mutex = 1;
|
||||||
grub_script_execute_sourcecode(cmdstr);
|
grub_script_execute_sourcecode(cmdstr);
|
||||||
|
g_ventoy_fn_mutex = 0;
|
||||||
goto refresh;
|
goto refresh;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case GRUB_TERM_KEY_F7:
|
case GRUB_TERM_KEY_F7:
|
||||||
cmdstr = grub_env_get("VTOY_F7_CMD");
|
cmdstr = grub_env_get("VTOY_F7_CMD");
|
||||||
|
@ -2167,7 +2167,7 @@ static grub_err_t ventoy_cmd_find_bootable_hdd(grub_extcmd_context_t ctxt, int a
|
|||||||
return grub_error(GRUB_ERR_BAD_ARGUMENT, "Usage: %s variable\n", cmd_raw_name);
|
return grub_error(GRUB_ERR_BAD_ARGUMENT, "Usage: %s variable\n", cmd_raw_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
isopath = grub_env_get("iso_path");
|
isopath = grub_env_get("vtoy_iso_part");
|
||||||
if (!isopath)
|
if (!isopath)
|
||||||
{
|
{
|
||||||
debug("isopath is null %p\n", isopath);
|
debug("isopath is null %p\n", isopath);
|
||||||
@ -2321,9 +2321,6 @@ static int ventoy_env_init(void)
|
|||||||
char buf[64];
|
char buf[64];
|
||||||
|
|
||||||
grub_env_set("vtdebug_flag", "");
|
grub_env_set("vtdebug_flag", "");
|
||||||
grub_env_export("vtdebug_flag");
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
g_tree_script_buf = grub_malloc(VTOY_MAX_SCRIPT_BUF);
|
g_tree_script_buf = grub_malloc(VTOY_MAX_SCRIPT_BUF);
|
||||||
g_list_script_buf = grub_malloc(VTOY_MAX_SCRIPT_BUF);
|
g_list_script_buf = grub_malloc(VTOY_MAX_SCRIPT_BUF);
|
||||||
|
@ -649,6 +649,15 @@ typedef struct menu_class
|
|||||||
struct menu_class *next;
|
struct menu_class *next;
|
||||||
}menu_class;
|
}menu_class;
|
||||||
|
|
||||||
|
typedef struct injection_config
|
||||||
|
{
|
||||||
|
int pathlen;
|
||||||
|
char isopath[256];
|
||||||
|
char archive[256];
|
||||||
|
|
||||||
|
struct injection_config *next;
|
||||||
|
}injection_config;
|
||||||
|
|
||||||
extern int g_ventoy_menu_esc;
|
extern int g_ventoy_menu_esc;
|
||||||
extern int g_ventoy_suppress_esc;
|
extern int g_ventoy_suppress_esc;
|
||||||
extern int g_ventoy_last_entry;
|
extern int g_ventoy_last_entry;
|
||||||
@ -666,6 +675,7 @@ persistence_config * ventoy_plugin_find_persistent(const char *isopath);
|
|||||||
void ventoy_plugin_dump_auto_install(void);
|
void ventoy_plugin_dump_auto_install(void);
|
||||||
int ventoy_fill_windows_rtdata(void *buf, char *isopath);
|
int ventoy_fill_windows_rtdata(void *buf, char *isopath);
|
||||||
int ventoy_plugin_get_persistent_chunklist(const char *isopath, int index, ventoy_img_chunk_list *chunk_list);
|
int ventoy_plugin_get_persistent_chunklist(const char *isopath, int index, ventoy_img_chunk_list *chunk_list);
|
||||||
|
const char * ventoy_plugin_get_injection(const char *isopath);
|
||||||
const char * ventoy_plugin_get_menu_alias(int type, const char *isopath);
|
const char * ventoy_plugin_get_menu_alias(int type, const char *isopath);
|
||||||
const char * ventoy_plugin_get_menu_class(int type, const char *name);
|
const char * ventoy_plugin_get_menu_class(int type, const char *name);
|
||||||
int ventoy_get_block_list(grub_file_t file, ventoy_img_chunk_list *chunklist, grub_disk_addr_t start);
|
int ventoy_get_block_list(grub_file_t file, ventoy_img_chunk_list *chunklist, grub_disk_addr_t start);
|
||||||
|
@ -909,6 +909,8 @@ grub_err_t ventoy_cmd_load_cpio(grub_extcmd_context_t ctxt, int argc, char **arg
|
|||||||
char *template_file = NULL;
|
char *template_file = NULL;
|
||||||
char *template_buf = NULL;
|
char *template_buf = NULL;
|
||||||
char *persistent_buf = NULL;
|
char *persistent_buf = NULL;
|
||||||
|
char *injection_buf = NULL;
|
||||||
|
const char *injection_file = NULL;
|
||||||
grub_uint8_t *buf = NULL;
|
grub_uint8_t *buf = NULL;
|
||||||
grub_uint32_t mod;
|
grub_uint32_t mod;
|
||||||
grub_uint32_t headlen;
|
grub_uint32_t headlen;
|
||||||
@ -917,8 +919,9 @@ grub_err_t ventoy_cmd_load_cpio(grub_extcmd_context_t ctxt, int argc, char **arg
|
|||||||
grub_uint32_t img_chunk_size;
|
grub_uint32_t img_chunk_size;
|
||||||
grub_uint32_t template_size = 0;
|
grub_uint32_t template_size = 0;
|
||||||
grub_uint32_t persistent_size = 0;
|
grub_uint32_t persistent_size = 0;
|
||||||
|
grub_uint32_t injection_size = 0;
|
||||||
grub_file_t file;
|
grub_file_t file;
|
||||||
grub_file_t scriptfile;
|
grub_file_t tmpfile;
|
||||||
ventoy_img_chunk_list chunk_list;
|
ventoy_img_chunk_list chunk_list;
|
||||||
|
|
||||||
(void)ctxt;
|
(void)ctxt;
|
||||||
@ -960,18 +963,18 @@ grub_err_t ventoy_cmd_load_cpio(grub_extcmd_context_t ctxt, int argc, char **arg
|
|||||||
if (template_file)
|
if (template_file)
|
||||||
{
|
{
|
||||||
debug("auto install template: <%s>\n", template_file);
|
debug("auto install template: <%s>\n", template_file);
|
||||||
scriptfile = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s%s", args[2], template_file);
|
tmpfile = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s%s", args[2], template_file);
|
||||||
if (scriptfile)
|
if (tmpfile)
|
||||||
{
|
{
|
||||||
debug("auto install script size %d\n", (int)scriptfile->size);
|
debug("auto install script size %d\n", (int)tmpfile->size);
|
||||||
template_size = scriptfile->size;
|
template_size = tmpfile->size;
|
||||||
template_buf = grub_malloc(template_size);
|
template_buf = grub_malloc(template_size);
|
||||||
if (template_buf)
|
if (template_buf)
|
||||||
{
|
{
|
||||||
grub_file_read(scriptfile, template_buf, template_size);
|
grub_file_read(tmpfile, template_buf, template_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
grub_file_close(scriptfile);
|
grub_file_close(tmpfile);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -983,7 +986,34 @@ grub_err_t ventoy_cmd_load_cpio(grub_extcmd_context_t ctxt, int argc, char **arg
|
|||||||
debug("auto install script skipped or not configed %s\n", args[1]);
|
debug("auto install script skipped or not configed %s\n", args[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
g_ventoy_cpio_buf = grub_malloc(file->size + 4096 + template_size + persistent_size + img_chunk_size);
|
injection_file = ventoy_plugin_get_injection(args[1]);
|
||||||
|
if (injection_file)
|
||||||
|
{
|
||||||
|
debug("injection archive: <%s>\n", injection_file);
|
||||||
|
tmpfile = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s%s", args[2], injection_file);
|
||||||
|
if (tmpfile)
|
||||||
|
{
|
||||||
|
debug("injection archive size:%d\n", (int)tmpfile->size);
|
||||||
|
injection_size = tmpfile->size;
|
||||||
|
injection_buf = grub_malloc(injection_size);
|
||||||
|
if (injection_buf)
|
||||||
|
{
|
||||||
|
grub_file_read(tmpfile, injection_buf, injection_size);
|
||||||
|
}
|
||||||
|
|
||||||
|
grub_file_close(tmpfile);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
debug("Failed to open injection archive %s%s\n", args[2], injection_file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
debug("injection not configed %s\n", args[1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
g_ventoy_cpio_buf = grub_malloc(file->size + 4096 + template_size + persistent_size + injection_size + img_chunk_size);
|
||||||
if (NULL == g_ventoy_cpio_buf)
|
if (NULL == g_ventoy_cpio_buf)
|
||||||
{
|
{
|
||||||
grub_file_close(file);
|
grub_file_close(file);
|
||||||
@ -1020,6 +1050,15 @@ grub_err_t ventoy_cmd_load_cpio(grub_extcmd_context_t ctxt, int argc, char **arg
|
|||||||
persistent_buf = NULL;
|
persistent_buf = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (injection_size > 0 && injection_buf)
|
||||||
|
{
|
||||||
|
headlen = ventoy_cpio_newc_fill_head(buf, injection_size, injection_buf, "ventoy/ventoy_injection");
|
||||||
|
buf += headlen + ventoy_align(injection_size, 4);
|
||||||
|
|
||||||
|
grub_free(injection_buf);
|
||||||
|
injection_buf = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/* step2: insert os param to cpio */
|
/* step2: insert os param to cpio */
|
||||||
headlen = ventoy_cpio_newc_fill_head(buf, 0, NULL, "ventoy/ventoy_os_param");
|
headlen = ventoy_cpio_newc_fill_head(buf, 0, NULL, "ventoy/ventoy_os_param");
|
||||||
padlen = sizeof(ventoy_os_param);
|
padlen = sizeof(ventoy_os_param);
|
||||||
|
@ -44,6 +44,7 @@ static install_template *g_install_template_head = NULL;
|
|||||||
static persistence_config *g_persistence_head = NULL;
|
static persistence_config *g_persistence_head = NULL;
|
||||||
static menu_alias *g_menu_alias_head = NULL;
|
static menu_alias *g_menu_alias_head = NULL;
|
||||||
static menu_class *g_menu_class_head = NULL;
|
static menu_class *g_menu_class_head = NULL;
|
||||||
|
static injection_config *g_injection_head = NULL;
|
||||||
|
|
||||||
static int ventoy_plugin_control_check(VTOY_JSON *json, const char *isodisk)
|
static int ventoy_plugin_control_check(VTOY_JSON *json, const char *isodisk)
|
||||||
{
|
{
|
||||||
@ -805,6 +806,96 @@ static int ventoy_plugin_menualias_entry(VTOY_JSON *json, const char *isodisk)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static int ventoy_plugin_injection_check(VTOY_JSON *json, const char *isodisk)
|
||||||
|
{
|
||||||
|
const char *path = NULL;
|
||||||
|
const char *archive = NULL;
|
||||||
|
VTOY_JSON *pNode = NULL;
|
||||||
|
|
||||||
|
(void)isodisk;
|
||||||
|
|
||||||
|
if (json->enDataType != JSON_TYPE_ARRAY)
|
||||||
|
{
|
||||||
|
grub_printf("Not array %d\n", json->enDataType);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (pNode = json->pstChild; pNode; pNode = pNode->pstNext)
|
||||||
|
{
|
||||||
|
path = vtoy_json_get_string_ex(pNode->pstChild, "image");
|
||||||
|
if (!path)
|
||||||
|
{
|
||||||
|
grub_printf("image not found\n");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
archive = vtoy_json_get_string_ex(pNode->pstChild, "archive");
|
||||||
|
if (!archive)
|
||||||
|
{
|
||||||
|
grub_printf("archive not found\n");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
grub_printf("image: <%s> [%s]\n", path, ventoy_check_file_exist("%s%s", isodisk, path) ? "OK" : "NOT EXIST");
|
||||||
|
grub_printf("archive: <%s> [%s]\n\n", archive, ventoy_check_file_exist("%s%s", isodisk, archive) ? "OK" : "NOT EXIST");
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int ventoy_plugin_injection_entry(VTOY_JSON *json, const char *isodisk)
|
||||||
|
{
|
||||||
|
const char *path = NULL;
|
||||||
|
const char *archive = NULL;
|
||||||
|
VTOY_JSON *pNode = NULL;
|
||||||
|
injection_config *node = NULL;
|
||||||
|
injection_config *next = NULL;
|
||||||
|
|
||||||
|
(void)isodisk;
|
||||||
|
|
||||||
|
if (json->enDataType != JSON_TYPE_ARRAY)
|
||||||
|
{
|
||||||
|
debug("Not array %d\n", json->enDataType);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (g_injection_head)
|
||||||
|
{
|
||||||
|
for (node = g_injection_head; node; node = next)
|
||||||
|
{
|
||||||
|
next = node->next;
|
||||||
|
grub_free(node);
|
||||||
|
}
|
||||||
|
|
||||||
|
g_injection_head = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (pNode = json->pstChild; pNode; pNode = pNode->pstNext)
|
||||||
|
{
|
||||||
|
path = vtoy_json_get_string_ex(pNode->pstChild, "image");
|
||||||
|
archive = vtoy_json_get_string_ex(pNode->pstChild, "archive");
|
||||||
|
if (path && path[0] == '/' && archive && archive[0] == '/')
|
||||||
|
{
|
||||||
|
node = grub_zalloc(sizeof(injection_config));
|
||||||
|
if (node)
|
||||||
|
{
|
||||||
|
node->pathlen = grub_snprintf(node->isopath, sizeof(node->isopath), "%s", path);
|
||||||
|
grub_snprintf(node->archive, sizeof(node->archive), "%s", archive);
|
||||||
|
|
||||||
|
if (g_injection_head)
|
||||||
|
{
|
||||||
|
node->next = g_injection_head;
|
||||||
|
}
|
||||||
|
|
||||||
|
g_injection_head = node;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int ventoy_plugin_menuclass_entry(VTOY_JSON *json, const char *isodisk)
|
static int ventoy_plugin_menuclass_entry(VTOY_JSON *json, const char *isodisk)
|
||||||
{
|
{
|
||||||
int type;
|
int type;
|
||||||
@ -914,6 +1005,7 @@ static plugin_entry g_plugin_entries[] =
|
|||||||
{ "persistence", ventoy_plugin_persistence_entry, ventoy_plugin_persistence_check },
|
{ "persistence", ventoy_plugin_persistence_entry, ventoy_plugin_persistence_check },
|
||||||
{ "menu_alias", ventoy_plugin_menualias_entry, ventoy_plugin_menualias_check },
|
{ "menu_alias", ventoy_plugin_menualias_entry, ventoy_plugin_menualias_check },
|
||||||
{ "menu_class", ventoy_plugin_menuclass_entry, ventoy_plugin_menuclass_check },
|
{ "menu_class", ventoy_plugin_menuclass_entry, ventoy_plugin_menuclass_check },
|
||||||
|
{ "injection", ventoy_plugin_injection_entry, ventoy_plugin_injection_check },
|
||||||
};
|
};
|
||||||
|
|
||||||
static int ventoy_parse_plugin_config(VTOY_JSON *json, const char *isodisk)
|
static int ventoy_parse_plugin_config(VTOY_JSON *json, const char *isodisk)
|
||||||
@ -1151,6 +1243,22 @@ end:
|
|||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char * ventoy_plugin_get_injection(const char *isopath)
|
||||||
|
{
|
||||||
|
injection_config *node = NULL;
|
||||||
|
int len = (int)grub_strlen(isopath);
|
||||||
|
|
||||||
|
for (node = g_injection_head; node; node = node->next)
|
||||||
|
{
|
||||||
|
if (node->pathlen == len && grub_strcmp(node->isopath, isopath) == 0)
|
||||||
|
{
|
||||||
|
return node->archive;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
const char * ventoy_plugin_get_menu_alias(int type, const char *isopath)
|
const char * ventoy_plugin_get_menu_alias(int type, const char *isopath)
|
||||||
{
|
{
|
||||||
menu_alias *node = NULL;
|
menu_alias *node = NULL;
|
||||||
|
@ -723,6 +723,17 @@ int ventoy_fill_windows_rtdata(void *buf, char *isopath)
|
|||||||
debug("auto install script skipped or not configed %s\n", pos);
|
debug("auto install script skipped or not configed %s\n", pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
script = (char *)ventoy_plugin_get_injection(pos);
|
||||||
|
if (script)
|
||||||
|
{
|
||||||
|
debug("injection archive <%s>\n", script);
|
||||||
|
grub_snprintf(data->injection_archive, sizeof(data->injection_archive) - 1, "%s", script);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
debug("injection archive not configed %s\n", pos);
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -132,7 +132,8 @@ typedef struct ventoy_os_param
|
|||||||
typedef struct ventoy_windows_data
|
typedef struct ventoy_windows_data
|
||||||
{
|
{
|
||||||
char auto_install_script[384];
|
char auto_install_script[384];
|
||||||
grub_uint8_t reserved[128];
|
char injection_archive[384];
|
||||||
|
grub_uint8_t reserved[256];
|
||||||
}ventoy_windows_data;
|
}ventoy_windows_data;
|
||||||
|
|
||||||
|
|
||||||
|
@ -35,15 +35,28 @@ if [ "$1" = "uefi" ]; then
|
|||||||
|
|
||||||
rm -f $VT_DIR/INSTALL/grub/x86_64-efi/normal.mod
|
rm -f $VT_DIR/INSTALL/grub/x86_64-efi/normal.mod
|
||||||
cp -a $VT_DIR/GRUB2/PXE/grub2/x86_64-efi/normal.mod $VT_DIR/INSTALL/grub/x86_64-efi/normal.mod || exit 1
|
cp -a $VT_DIR/GRUB2/PXE/grub2/x86_64-efi/normal.mod $VT_DIR/INSTALL/grub/x86_64-efi/normal.mod || exit 1
|
||||||
|
|
||||||
|
#copy other modules
|
||||||
|
ls -1 $VT_DIR/GRUB2/INSTALL/lib/grub/x86_64-efi/ | egrep '\.(lst|mod)$' | while read line; do
|
||||||
|
if ! echo $all_modules | grep -q "${line%.mod} "; then
|
||||||
|
echo "Copy $line ..."
|
||||||
|
rm -f $VT_DIR/INSTALL/grub/x86_64-efi/$line
|
||||||
|
cp -a $VT_DIR/GRUB2/INSTALL/lib/grub/x86_64-efi/$line $VT_DIR/INSTALL/grub/x86_64-efi/
|
||||||
|
fi
|
||||||
|
done
|
||||||
else
|
else
|
||||||
rm -f $VT_DIR/GRUB2/NBP/core.0
|
rm -f $VT_DIR/GRUB2/NBP/core.0
|
||||||
cp -a $VT_DIR/GRUB2/PXE/grub2/i386-pc/core.0 $VT_DIR/GRUB2/NBP/core.0 || exit 1
|
cp -a $VT_DIR/GRUB2/PXE/grub2/i386-pc/core.0 $VT_DIR/GRUB2/NBP/core.0 || exit 1
|
||||||
|
|
||||||
for md in $all_extra_modules; do
|
|
||||||
rm -f $VT_DIR/INSTALL/grub/i386-pc/${md}.mod
|
|
||||||
cp -a $VT_DIR/GRUB2/INSTALL/lib/grub/i386-pc/${md}.mod $VT_DIR/INSTALL/grub/i386-pc/
|
|
||||||
done
|
|
||||||
|
|
||||||
rm -f $VT_DIR/INSTALL/grub/i386-pc/boot.img
|
rm -f $VT_DIR/INSTALL/grub/i386-pc/boot.img
|
||||||
cp -a $VT_DIR/GRUB2/INSTALL/lib/grub/i386-pc/boot.img $VT_DIR/INSTALL/grub/i386-pc/boot.img || exit 1
|
cp -a $VT_DIR/GRUB2/INSTALL/lib/grub/i386-pc/boot.img $VT_DIR/INSTALL/grub/i386-pc/boot.img || exit 1
|
||||||
|
|
||||||
|
#copy other modules
|
||||||
|
ls -1 $VT_DIR/GRUB2/INSTALL/lib/grub/i386-pc/ | egrep '\.(lst|mod)$' | while read line; do
|
||||||
|
if ! echo $all_modules | grep -q "${line%.mod} "; then
|
||||||
|
echo "Copy $line ..."
|
||||||
|
rm -f $VT_DIR/INSTALL/grub/i386-pc/$line
|
||||||
|
cp -a $VT_DIR/GRUB2/INSTALL/lib/grub/i386-pc/$line $VT_DIR/INSTALL/grub/i386-pc/
|
||||||
|
fi
|
||||||
|
done
|
||||||
fi
|
fi
|
||||||
|
71
IMG/cpio/ventoy/hook/debian/linuxconsole-disk.sh
Normal file
71
IMG/cpio/ventoy/hook/debian/linuxconsole-disk.sh
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
#!/ventoy/busybox/sh
|
||||||
|
#************************************************************************************
|
||||||
|
# Copyright (c) 2020, longpanda <admin@ventoy.net>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
#************************************************************************************
|
||||||
|
|
||||||
|
. /ventoy/hook/ventoy-hook-lib.sh
|
||||||
|
|
||||||
|
if is_ventoy_hook_finished; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
vtlog "####### $0 $* ########"
|
||||||
|
|
||||||
|
VTPATH_OLD=$PATH; PATH=$BUSYBOX_PATH:$VTOY_PATH/tool:$PATH
|
||||||
|
|
||||||
|
wait_for_usb_disk_ready
|
||||||
|
|
||||||
|
vtdiskname=$(get_ventoy_disk_name)
|
||||||
|
if [ "$vtdiskname" = "unknown" ]; then
|
||||||
|
vtlog "ventoy disk not found"
|
||||||
|
PATH=$VTPATH_OLD
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
vtoydm -i -f $VTOY_PATH/ventoy_image_map -d $vtdiskname > $VTOY_PATH/iso_file_list
|
||||||
|
|
||||||
|
vtline=$(grep '[-][-] drivers-.*\.squashfs' $VTOY_PATH/iso_file_list)
|
||||||
|
sector=$(echo $vtline | awk '{print $(NF-1)}')
|
||||||
|
length=$(echo $vtline | awk '{print $NF}')
|
||||||
|
|
||||||
|
vtoydm -e -f $VTOY_PATH/ventoy_image_map -d $vtdiskname -s $sector -l $length -o $VTOY_PATH/driver.squashfs
|
||||||
|
mount -t squashfs $VTOY_PATH/driver.squashfs /lib/modules
|
||||||
|
modprobe dm-mod
|
||||||
|
|
||||||
|
umount /lib/modules
|
||||||
|
rm -f $VTOY_PATH/driver.squashfs
|
||||||
|
|
||||||
|
ventoy_udev_disk_common_hook "${vtdiskname#/dev/}2" "noreplace"
|
||||||
|
|
||||||
|
blkdev_num=$($VTOY_PATH/tool/dmsetup ls | grep ventoy | sed 's/.*(\([0-9][0-9]*\),.*\([0-9][0-9]*\).*/\1:\2/')
|
||||||
|
blkdev_dev=$($VTOY_PATH/tool/dmsetup ls | grep ventoy | sed 's/.*(\([0-9][0-9]*\),.*\([0-9][0-9]*\).*/\1 \2/')
|
||||||
|
vtDM=$(ventoy_find_dm_id ${blkdev_num})
|
||||||
|
|
||||||
|
if ! [ -b /dev/$vtDM ]; then
|
||||||
|
mknod -m 0660 /dev/$vtDM b $blkdev_dev
|
||||||
|
fi
|
||||||
|
|
||||||
|
if mount /dev/$vtDM /media/ydfs; then
|
||||||
|
vtlog "mount success"
|
||||||
|
else
|
||||||
|
vtlog "mount failed"
|
||||||
|
fi
|
||||||
|
|
||||||
|
PATH=$VTPATH_OLD
|
||||||
|
|
||||||
|
set_ventoy_hook_finish
|
23
IMG/cpio/ventoy/hook/debian/linuxconsole-hook.sh
Normal file
23
IMG/cpio/ventoy/hook/debian/linuxconsole-hook.sh
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#!/ventoy/busybox/sh
|
||||||
|
#************************************************************************************
|
||||||
|
# Copyright (c) 2020, longpanda <admin@ventoy.net>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
#************************************************************************************
|
||||||
|
|
||||||
|
$SED "s#/busybox/bin/sleep 2#/busybox/bin/sleep 10#" -i /etc/init.d/tty1
|
||||||
|
$SED "/install *-d *.media.ydfs/a return" -i /ydfs/detect/media
|
||||||
|
$SED "/install *-d *.media.ydfs/a $BUSYBOX_PATH/sh $VTOY_PATH/hook/debian/linuxconsole-disk.sh" -i /ydfs/detect/media
|
||||||
|
|
@ -60,6 +60,10 @@ ventoy_get_debian_distro() {
|
|||||||
echo 'porteus'; return
|
echo 'porteus'; return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if $GREP -q 'linuxconsole' /proc/version; then
|
||||||
|
echo 'linuxconsole'; return
|
||||||
|
fi
|
||||||
|
|
||||||
echo 'default'
|
echo 'default'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
63
IMG/cpio/ventoy/hook/vine/dev-listen.sh
Normal file
63
IMG/cpio/ventoy/hook/vine/dev-listen.sh
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
#!/ventoy/busybox/sh
|
||||||
|
#************************************************************************************
|
||||||
|
# Copyright (c) 2020, longpanda <admin@ventoy.net>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
#************************************************************************************
|
||||||
|
|
||||||
|
. /ventoy/hook/ventoy-hook-lib.sh
|
||||||
|
|
||||||
|
while [ -n "1" ]; do
|
||||||
|
if [ -e /dev/null ]; then
|
||||||
|
break
|
||||||
|
else
|
||||||
|
$SLEEP 0.5
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
while [ -n "1" ]; do
|
||||||
|
if [ -e /sys/block ]; then
|
||||||
|
break
|
||||||
|
else
|
||||||
|
$SLEEP 0.5
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
while [ -n "Y" ]; do
|
||||||
|
vtdiskname=$(get_ventoy_disk_name)
|
||||||
|
if [ "$vtdiskname" != "unknown" ]; then
|
||||||
|
break
|
||||||
|
else
|
||||||
|
$SLEEP 0.5
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
vtshortdev=${vtdiskname#/dev/}
|
||||||
|
|
||||||
|
if ! [ -b $vtdiskname ]; then
|
||||||
|
blkdev=$($CAT /sys/class/block/$vtshortdev/dev | $SED 's/:/ /g')
|
||||||
|
$BUSYBOX_PATH/mknod -m 0660 $vtdiskname b $blkdev
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [ -b "${vtdiskname}2" ]; then
|
||||||
|
blkdev=$($CAT /sys/class/block/${vtshortdev}2/dev | $SED 's/:/ /g')
|
||||||
|
$BUSYBOX_PATH/mknod -m 0660 "${vtdiskname}2" b $blkdev
|
||||||
|
fi
|
||||||
|
|
||||||
|
$BUSYBOX_PATH/ls /dev/ > /dev/console
|
||||||
|
|
||||||
|
$BUSYBOX_PATH/sh $VTOY_PATH/hook/vine/udev_disk_hook.sh "${vtdiskname#/dev/}2"
|
||||||
|
|
||||||
|
|
79
IMG/cpio/ventoy/hook/vine/udev_disk_hook.sh
Normal file
79
IMG/cpio/ventoy/hook/vine/udev_disk_hook.sh
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
#!/ventoy/busybox/sh
|
||||||
|
#************************************************************************************
|
||||||
|
# Copyright (c) 2020, longpanda <admin@ventoy.net>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
#************************************************************************************
|
||||||
|
|
||||||
|
. /ventoy/hook/ventoy-hook-lib.sh
|
||||||
|
|
||||||
|
vtCheatLoop=loop6
|
||||||
|
|
||||||
|
ventoy_os_install_dmsetup() {
|
||||||
|
vtlog "ventoy_os_install_dmsetup $1"
|
||||||
|
|
||||||
|
vt_usb_disk=$1
|
||||||
|
|
||||||
|
# dump iso file location
|
||||||
|
$VTOY_PATH/tool/vtoydm -i -f $VTOY_PATH/ventoy_image_map -d ${vt_usb_disk} > $VTOY_PATH/iso_file_list
|
||||||
|
|
||||||
|
# install dmsetup
|
||||||
|
LINE=$($GREP 'kernel-[0-9].*\.rpm' $VTOY_PATH/iso_file_list)
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
install_rpm_from_line "$LINE" ${vt_usb_disk}
|
||||||
|
fi
|
||||||
|
|
||||||
|
$BUSYBOX_PATH/modprobe dm-mod
|
||||||
|
|
||||||
|
vtlog "dmsetup install finish, now check it..."
|
||||||
|
|
||||||
|
dmsetup_path=/ventoy/tool/dmsetup
|
||||||
|
if [ -z "$dmsetup_path" ]; then
|
||||||
|
vterr "dmsetup still not found after install"
|
||||||
|
elif $dmsetup_path info >> $VTLOG 2>&1; then
|
||||||
|
vtlog "$dmsetup_path work ok"
|
||||||
|
else
|
||||||
|
vterr "$dmsetup_path not work"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if is_ventoy_hook_finished || not_ventoy_disk "${1:0:-1}"; then
|
||||||
|
# /dev/vtCheatLoop come first
|
||||||
|
if [ "$1" = "$vtCheatLoop" ] && [ -b $VTOY_DM_PATH ]; then
|
||||||
|
ventoy_copy_device_mapper /dev/$vtCheatLoop
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
ventoy_os_install_dmsetup "/dev/${1:0:-1}"
|
||||||
|
|
||||||
|
ventoy_udev_disk_common_hook $* "noreplace"
|
||||||
|
|
||||||
|
$BUSYBOX_PATH/mount $VTOY_DM_PATH /mnt/ventoy
|
||||||
|
|
||||||
|
#
|
||||||
|
# We do a trick for rhel6 series here.
|
||||||
|
# Use /dev/$vtCheatLoop and wapper it as a removable cdrom with bind mount.
|
||||||
|
# Then the anaconda installer will accept /dev/$vtCheatLoop as the install medium.
|
||||||
|
#
|
||||||
|
ventoy_copy_device_mapper /dev/$vtCheatLoop
|
||||||
|
|
||||||
|
$BUSYBOX_PATH/cp -a /sys/devices/virtual/block/$vtCheatLoop /tmp/ >> $VTLOG 2>&1
|
||||||
|
echo 19 > /tmp/$vtCheatLoop/capability
|
||||||
|
$BUSYBOX_PATH/mount --bind /tmp/$vtCheatLoop /sys/block/$vtCheatLoop >> $VTLOG 2>&1
|
||||||
|
|
||||||
|
# OK finish
|
||||||
|
set_ventoy_hook_finish
|
28
IMG/cpio/ventoy/hook/vine/ventoy-hook.sh
Normal file
28
IMG/cpio/ventoy/hook/vine/ventoy-hook.sh
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#!/ventoy/busybox/sh
|
||||||
|
#************************************************************************************
|
||||||
|
# Copyright (c) 2020, longpanda <admin@ventoy.net>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
#************************************************************************************
|
||||||
|
|
||||||
|
. $VTOY_PATH/hook/ventoy-os-lib.sh
|
||||||
|
|
||||||
|
$BUSYBOX_PATH/mkdir -p /etc/anaconda.repos.d /mnt/ventoy
|
||||||
|
ventoy_print_yum_repo "ventoy" "file:///mnt/ventoy" > /etc/anaconda.repos.d/ventoy.repo
|
||||||
|
|
||||||
|
|
||||||
|
$BUSYBOX_PATH/mknod -m 0660 /dev/null c 1 3
|
||||||
|
$VTOY_PATH/hook/vine/dev-listen.sh &
|
||||||
|
|
@ -183,7 +183,30 @@ fi
|
|||||||
|
|
||||||
####################################################################
|
####################################################################
|
||||||
# #
|
# #
|
||||||
# Step 3 : Hand over to ventoy.sh #
|
# Step 3 : Extract injection archive #
|
||||||
|
# #
|
||||||
|
####################################################################
|
||||||
|
if [ -e $VTOY_PATH/ventoy_injection ]; then
|
||||||
|
echo "decompress injection ..." >>$VTLOG
|
||||||
|
|
||||||
|
vtmagic=$(hexdump -n 2 -e '2/1 "%02X"' $VTOY_PATH/ventoy_injection)
|
||||||
|
echo "vtmagic=$vtmagic ..." >>$VTLOG
|
||||||
|
|
||||||
|
if [ "1F8B" = "vtmagic" ] || [ "1F9E" = "vtmagic" ]; then
|
||||||
|
zcat $VTOY_PATH/ventoy_injection | tar -xf -C /
|
||||||
|
elif [ "425A" = "vtmagic" ]; then
|
||||||
|
bzcat $VTOY_PATH/ventoy_injection | tar -xf -C /
|
||||||
|
elif [ "FD37" = "vtmagic" ]; then
|
||||||
|
xzcat $VTOY_PATH/ventoy_injection | tar -xf -C /
|
||||||
|
else
|
||||||
|
unzip -o -q $VTOY_PATH/ventoy_injection -d /
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
####################################################################
|
||||||
|
# #
|
||||||
|
# Step 4 : Hand over to ventoy.sh #
|
||||||
# #
|
# #
|
||||||
####################################################################
|
####################################################################
|
||||||
echo "Now hand over to ventoy.sh" >>$VTLOG
|
echo "Now hand over to ventoy.sh" >>$VTLOG
|
||||||
|
@ -221,6 +221,9 @@ ventoy_get_os_type() {
|
|||||||
echo 'kwort'; return
|
echo 'kwort'; return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if $GREP -q 'iwamoto' /proc/version; then
|
||||||
|
echo 'vine'; return
|
||||||
|
fi
|
||||||
|
|
||||||
echo "default"
|
echo "default"
|
||||||
}
|
}
|
||||||
@ -248,6 +251,7 @@ if [ "$VTOY_BREAK_LEVEL" = "03" ] || [ "$VTOY_BREAK_LEVEL" = "13" ]; then
|
|||||||
exec $BUSYBOX_PATH/sh
|
exec $BUSYBOX_PATH/sh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
####################################################################
|
####################################################################
|
||||||
# #
|
# #
|
||||||
# Step 4 : Hand over to real init #
|
# Step 4 : Hand over to real init #
|
||||||
|
Binary file not shown.
28
INSTALL/README
Normal file
28
INSTALL/README
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
|
||||||
|
========== Ventoy2Disk.sh ===============
|
||||||
|
|
||||||
|
sudo sh Ventoy2Disk.sh { -i | -I | -u } /dev/XXX XXX is the USB device, for example /dev/sdb.
|
||||||
|
|
||||||
|
Ventoy2Disk.sh CMD [ OPTION ] /dev/sdX
|
||||||
|
CMD:
|
||||||
|
-i install ventoy to sdX (fail if disk already installed with ventoy)
|
||||||
|
-I force install ventoy to sdX (no matter installed or not)
|
||||||
|
-u update ventoy in sdX
|
||||||
|
|
||||||
|
OPTION: (optional)
|
||||||
|
-r SIZE_MB preserve some space at the bottom of the disk (only for install)
|
||||||
|
-s enable secure boot support (default is disabled)
|
||||||
|
-g use GPT partition style, default is MBR style (only for install)
|
||||||
|
|
||||||
|
|
||||||
|
========== CreatePersistentImg.sh ===============
|
||||||
|
|
||||||
|
sudo sh CreatePersistentImg.sh
|
||||||
|
|
||||||
|
sh CreatePersistentImg.sh [ -s SIZE_IN_MB ] [ -t FSTYPE ] [ -l LABEL ] for example:
|
||||||
|
|
||||||
|
sh CreatePersistentImg.sh ----> persistence.img in 1GB size and ext4 filesystem and casper-rw label
|
||||||
|
sh CreatePersistentImg.sh -l MX-Persist ----> persistence.img in 1GB size and ext4 filesystem and MX-Persist label
|
||||||
|
sh CreatePersistentImg.sh -s 2048 ----> persistence.img in 2GB size and ext4 filesystem and casper-rw label
|
||||||
|
sh CreatePersistentImg.sh -s 4096 -t xfs ----> persistence.img in 4GB size and xfs filesystem (ext2/3/4 xfs are supported) and casper-rw label
|
||||||
|
|
Binary file not shown.
@ -1,7 +1,7 @@
|
|||||||
submenu 'Check plugin json configuration (ventoy.json)' --class=debug_json {
|
submenu 'Check plugin json configuration (ventoy.json)' --class=debug_json {
|
||||||
menuentry 'Check global control plugin configuration' --class=debug_control {
|
menuentry 'Check global control plugin configuration' --class=debug_control {
|
||||||
set pager=1
|
set pager=1
|
||||||
vt_check_plugin_json $vt_plugin_path control $iso_path
|
vt_check_plugin_json $vt_plugin_path control $vtoy_iso_part
|
||||||
|
|
||||||
echo -e "\npress ENTER to exit ..."
|
echo -e "\npress ENTER to exit ..."
|
||||||
read vtInputKey
|
read vtInputKey
|
||||||
@ -10,7 +10,7 @@ submenu 'Check plugin json configuration (ventoy.json)' --class=debug_json {
|
|||||||
|
|
||||||
menuentry 'Check theme plugin configuration' --class=debug_theme {
|
menuentry 'Check theme plugin configuration' --class=debug_theme {
|
||||||
set pager=1
|
set pager=1
|
||||||
vt_check_plugin_json $vt_plugin_path theme $iso_path
|
vt_check_plugin_json $vt_plugin_path theme $vtoy_iso_part
|
||||||
|
|
||||||
echo -e "\npress ENTER to exit ..."
|
echo -e "\npress ENTER to exit ..."
|
||||||
read vtInputKey
|
read vtInputKey
|
||||||
@ -19,7 +19,7 @@ submenu 'Check plugin json configuration (ventoy.json)' --class=debug_json {
|
|||||||
|
|
||||||
menuentry 'Check auto install plugin configuration' --class=debug_autoinstall {
|
menuentry 'Check auto install plugin configuration' --class=debug_autoinstall {
|
||||||
set pager=1
|
set pager=1
|
||||||
vt_check_plugin_json $vt_plugin_path auto_install $iso_path
|
vt_check_plugin_json $vt_plugin_path auto_install $vtoy_iso_part
|
||||||
|
|
||||||
echo -e "\npress ENTER to exit ..."
|
echo -e "\npress ENTER to exit ..."
|
||||||
read vtInputKey
|
read vtInputKey
|
||||||
@ -28,7 +28,7 @@ submenu 'Check plugin json configuration (ventoy.json)' --class=debug_json {
|
|||||||
|
|
||||||
menuentry 'Check persistence plugin configuration' --class=debug_persistence {
|
menuentry 'Check persistence plugin configuration' --class=debug_persistence {
|
||||||
set pager=1
|
set pager=1
|
||||||
vt_check_plugin_json $vt_plugin_path persistence $iso_path
|
vt_check_plugin_json $vt_plugin_path persistence $vtoy_iso_part
|
||||||
|
|
||||||
echo -e "\n############### dump persistence ###############"
|
echo -e "\n############### dump persistence ###############"
|
||||||
vt_dump_persistence
|
vt_dump_persistence
|
||||||
@ -40,7 +40,7 @@ submenu 'Check plugin json configuration (ventoy.json)' --class=debug_json {
|
|||||||
|
|
||||||
menuentry 'Check menu alias plugin configuration' --class=debug_menualias {
|
menuentry 'Check menu alias plugin configuration' --class=debug_menualias {
|
||||||
set pager=1
|
set pager=1
|
||||||
vt_check_plugin_json $vt_plugin_path menu_alias $iso_path
|
vt_check_plugin_json $vt_plugin_path menu_alias $vtoy_iso_part
|
||||||
|
|
||||||
echo -e "\npress ENTER to exit ..."
|
echo -e "\npress ENTER to exit ..."
|
||||||
read vtInputKey
|
read vtInputKey
|
||||||
@ -49,7 +49,7 @@ submenu 'Check plugin json configuration (ventoy.json)' --class=debug_json {
|
|||||||
|
|
||||||
menuentry 'Check menu class plugin configuration' --class=debug_menuclass {
|
menuentry 'Check menu class plugin configuration' --class=debug_menuclass {
|
||||||
set pager=1
|
set pager=1
|
||||||
vt_check_plugin_json $vt_plugin_path menu_class $iso_path
|
vt_check_plugin_json $vt_plugin_path menu_class $vtoy_iso_part
|
||||||
|
|
||||||
echo -e "\npress ENTER to exit ..."
|
echo -e "\npress ENTER to exit ..."
|
||||||
read vtInputKey
|
read vtInputKey
|
||||||
|
@ -67,6 +67,18 @@ function ventoy_localboot {
|
|||||||
configfile $prefix/localboot.cfg
|
configfile $prefix/localboot.cfg
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function ventoy_ext_menu {
|
||||||
|
#if [ -e $vt_plugin_path/ventoy/ventoy_grub.cfg ]; then
|
||||||
|
set ventoy_new_context=1
|
||||||
|
configfile $vt_plugin_path/ventoy/ventoy_grub.cfg
|
||||||
|
unset ventoy_new_context
|
||||||
|
#else
|
||||||
|
# echo "ventoy_grub.cfg NOT exist."
|
||||||
|
# echo -e "\npress ENTER to exit ..."
|
||||||
|
# read vtInputKey
|
||||||
|
#fi
|
||||||
|
}
|
||||||
|
|
||||||
function get_os_type {
|
function get_os_type {
|
||||||
set vtoy_os=Linux
|
set vtoy_os=Linux
|
||||||
|
|
||||||
@ -292,6 +304,8 @@ function uefi_linux_menu_func {
|
|||||||
fi
|
fi
|
||||||
elif [ -f (loop)/EFI/BOOT/initrd.gz ]; then
|
elif [ -f (loop)/EFI/BOOT/initrd.gz ]; then
|
||||||
vt_add_replace_file $vtindex "EFI\\BOOT\\initrd.gz"
|
vt_add_replace_file $vtindex "EFI\\BOOT\\initrd.gz"
|
||||||
|
elif [ -f (loop)/loader/entries/thinstation.conf ]; then
|
||||||
|
vt_add_replace_file $vtindex "boot\\initrd"
|
||||||
fi
|
fi
|
||||||
elif [ -d (loop)/EFI/boot/entries ]; then
|
elif [ -d (loop)/EFI/boot/entries ]; then
|
||||||
if [ -f (loop)/parabola/boot/x86_64/parabolaiso.img ]; then
|
if [ -f (loop)/parabola/boot/x86_64/parabolaiso.img ]; then
|
||||||
@ -538,15 +552,15 @@ function legacy_iso_memdisk {
|
|||||||
function iso_common_menuentry {
|
function iso_common_menuentry {
|
||||||
if [ "$grub_platform" = "pc" ]; then
|
if [ "$grub_platform" = "pc" ]; then
|
||||||
if vt_check_mode 0; then
|
if vt_check_mode 0; then
|
||||||
legacy_iso_memdisk $iso_path
|
legacy_iso_memdisk $vtoy_iso_part
|
||||||
else
|
else
|
||||||
legacy_iso_menu_func $iso_path
|
legacy_iso_menu_func $vtoy_iso_part
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
if vt_check_mode 0; then
|
if vt_check_mode 0; then
|
||||||
uefi_iso_memdisk $iso_path
|
uefi_iso_memdisk $vtoy_iso_part
|
||||||
else
|
else
|
||||||
uefi_iso_menu_func $iso_path
|
uefi_iso_menu_func $vtoy_iso_part
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@ -554,8 +568,8 @@ function iso_common_menuentry {
|
|||||||
function common_unsupport_menuentry {
|
function common_unsupport_menuentry {
|
||||||
echo -e "\n The name of the iso file could NOT contain space or non-ascii characters. \n"
|
echo -e "\n The name of the iso file could NOT contain space or non-ascii characters. \n"
|
||||||
echo -e " 文件名中不能有中文或空格 \n"
|
echo -e " 文件名中不能有中文或空格 \n"
|
||||||
echo -e "\n Will return to main menu after 10 seconds ...\n"
|
echo -e "\npress ENTER to exit (请按 回车 键返回) ..."
|
||||||
sleep 10
|
read vtInputKey
|
||||||
}
|
}
|
||||||
|
|
||||||
function iso_unsupport_menuentry {
|
function iso_unsupport_menuentry {
|
||||||
@ -564,7 +578,7 @@ function iso_unsupport_menuentry {
|
|||||||
|
|
||||||
function wim_common_menuentry {
|
function wim_common_menuentry {
|
||||||
vt_chosen_img_path chosen_path
|
vt_chosen_img_path chosen_path
|
||||||
vt_wim_chain_data ${iso_path}${chosen_path}
|
vt_wim_chain_data ${vtoy_iso_part}${chosen_path}
|
||||||
|
|
||||||
ventoy_debug_pause
|
ventoy_debug_pause
|
||||||
|
|
||||||
@ -591,7 +605,7 @@ function efi_common_menuentry {
|
|||||||
vt_chosen_img_path chosen_path
|
vt_chosen_img_path chosen_path
|
||||||
|
|
||||||
ventoy_cli_console
|
ventoy_cli_console
|
||||||
chainloader ${iso_path}${chosen_path}
|
chainloader ${vtoy_iso_part}${chosen_path}
|
||||||
boot
|
boot
|
||||||
ventoy_gui_console
|
ventoy_gui_console
|
||||||
}
|
}
|
||||||
@ -610,7 +624,7 @@ function efi_unsupport_menuentry {
|
|||||||
#############################################################
|
#############################################################
|
||||||
#############################################################
|
#############################################################
|
||||||
|
|
||||||
set VENTOY_VERSION="1.0.15"
|
set VENTOY_VERSION="1.0.16"
|
||||||
|
|
||||||
# Default menu display mode, you can change it as you want.
|
# Default menu display mode, you can change it as you want.
|
||||||
# 0: List mode
|
# 0: List mode
|
||||||
@ -624,6 +638,7 @@ set VTOY_ISO_UEFI_DRV_STR="UEFI FS"
|
|||||||
set VTOY_F2_CMD="ventoy_power"
|
set VTOY_F2_CMD="ventoy_power"
|
||||||
set VTOY_F4_CMD="ventoy_localboot"
|
set VTOY_F4_CMD="ventoy_localboot"
|
||||||
set VTOY_F5_CMD="ventoy_diagnosis"
|
set VTOY_F5_CMD="ventoy_diagnosis"
|
||||||
|
set VTOY_F6_CMD="ventoy_ext_menu"
|
||||||
|
|
||||||
if [ "$grub_platform" = "pc" ]; then
|
if [ "$grub_platform" = "pc" ]; then
|
||||||
set VTOY_TEXT_MENU_VER="Ventoy $VENTOY_VERSION BIOS www.ventoy.net"
|
set VTOY_TEXT_MENU_VER="Ventoy $VENTOY_VERSION BIOS www.ventoy.net"
|
||||||
@ -637,15 +652,15 @@ if [ "$vtoy_dev" = "tftp" ]; then
|
|||||||
set vtoy_path=($root)
|
set vtoy_path=($root)
|
||||||
for vtid in 0 1 2 3; do
|
for vtid in 0 1 2 3; do
|
||||||
if [ -d (hd$vtid,2)/ventoy ]; then
|
if [ -d (hd$vtid,2)/ventoy ]; then
|
||||||
set iso_path=(hd$vtid,1)
|
set vtoy_iso_part=(hd$vtid,1)
|
||||||
set vtoy_efi_part=(hd$vtid,2)
|
set vtoy_efi_part=(hd$vtid,2)
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
loadfont ascii
|
loadfont ascii
|
||||||
|
|
||||||
if [ -f $iso_path/ventoy/ventoy.json ]; then
|
if [ -f $vtoy_iso_part/ventoy/ventoy.json ]; then
|
||||||
set vt_plugin_path=$iso_path
|
set vt_plugin_path=$vtoy_iso_part
|
||||||
else
|
else
|
||||||
set vt_plugin_path=$prefix
|
set vt_plugin_path=$prefix
|
||||||
vt_load_plugin $vt_plugin_path
|
vt_load_plugin $vt_plugin_path
|
||||||
@ -657,16 +672,16 @@ else
|
|||||||
set vtoy_path=($root)/ventoy
|
set vtoy_path=($root)/ventoy
|
||||||
fi
|
fi
|
||||||
|
|
||||||
set iso_path=($vtoy_dev,1)
|
set vtoy_iso_part=($vtoy_dev,1)
|
||||||
set vtoy_efi_part=($vtoy_dev,2)
|
set vtoy_efi_part=($vtoy_dev,2)
|
||||||
loadfont unicode
|
loadfont unicode
|
||||||
set vt_plugin_path=$iso_path
|
set vt_plugin_path=$vtoy_iso_part
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
#Load Plugin
|
#Load Plugin
|
||||||
if [ -f $iso_path/ventoy/ventoy.json ]; then
|
if [ -f $vtoy_iso_part/ventoy/ventoy.json ]; then
|
||||||
vt_load_plugin $iso_path
|
vt_load_plugin $vtoy_iso_part
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$VTOY_MENU_TIMEOUT" ]; then
|
if [ -n "$VTOY_MENU_TIMEOUT" ]; then
|
||||||
@ -675,8 +690,8 @@ else
|
|||||||
unset timeout
|
unset timeout
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -f $iso_path/ventoy/ventoy_wimboot.img ]; then
|
if [ -f $vtoy_iso_part/ventoy/ventoy_wimboot.img ]; then
|
||||||
vt_load_wimboot $iso_path/ventoy/ventoy_wimboot.img
|
vt_load_wimboot $vtoy_iso_part/ventoy/ventoy_wimboot.img
|
||||||
elif [ -f $vtoy_efi_part/ventoy/ventoy_wimboot.img ]; then
|
elif [ -f $vtoy_efi_part/ventoy/ventoy_wimboot.img ]; then
|
||||||
vt_load_wimboot $vtoy_efi_part/ventoy/ventoy_wimboot.img
|
vt_load_wimboot $vtoy_efi_part/ventoy/ventoy_wimboot.img
|
||||||
fi
|
fi
|
||||||
@ -684,10 +699,10 @@ fi
|
|||||||
|
|
||||||
if [ $VTOY_DEFAULT_MENU_MODE -eq 0 ]; then
|
if [ $VTOY_DEFAULT_MENU_MODE -eq 0 ]; then
|
||||||
set VTOY_F3_CMD="vt_dynamic_menu 1 1"
|
set VTOY_F3_CMD="vt_dynamic_menu 1 1"
|
||||||
set VTOY_HOTKEY_TIP="F1:Memdisk F2:Power F3:TreeView F4:Localboot F5:Debug"
|
set VTOY_HOTKEY_TIP="F1:Memdisk F2:Power F3:TreeView F4:Localboot F5:Debug F6:ExMenu"
|
||||||
else
|
else
|
||||||
set VTOY_F3_CMD="vt_dynamic_menu 1 0"
|
set VTOY_F3_CMD="vt_dynamic_menu 1 0"
|
||||||
set VTOY_HOTKEY_TIP="F1:Memdisk F2:Power F3:ListView F4:Localboot F5:Debug"
|
set VTOY_HOTKEY_TIP="F1:Memdisk F2:Power F3:ListView F4:Localboot F5:Debug F6:ExMenu"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
@ -708,9 +723,20 @@ else
|
|||||||
terminal_output gfxterm
|
terminal_output gfxterm
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#export necessary variable
|
||||||
|
export theme
|
||||||
|
export gfxmode
|
||||||
|
export vtoy_dev
|
||||||
|
export vtoy_iso_part
|
||||||
|
export vtoy_efi_part
|
||||||
|
export VENTOY_VERSION
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#colect all image files (iso files)
|
#colect all image files (iso files)
|
||||||
set ventoy_img_count=0
|
set ventoy_img_count=0
|
||||||
vt_list_img $iso_path ventoy_img_count
|
vt_list_img $vtoy_iso_part ventoy_img_count
|
||||||
|
|
||||||
#Main menu
|
#Main menu
|
||||||
if [ $ventoy_img_count -gt 0 ]; then
|
if [ $ventoy_img_count -gt 0 ]; then
|
||||||
|
BIN
INSTALL/grub/i386-pc/acpi.mod
Normal file
BIN
INSTALL/grub/i386-pc/acpi.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/adler32.mod
Normal file
BIN
INSTALL/grub/i386-pc/adler32.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/affs.mod
Normal file
BIN
INSTALL/grub/i386-pc/affs.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/afs.mod
Normal file
BIN
INSTALL/grub/i386-pc/afs.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/ahci.mod
Normal file
BIN
INSTALL/grub/i386-pc/ahci.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/aout.mod
Normal file
BIN
INSTALL/grub/i386-pc/aout.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/archelp.mod
Normal file
BIN
INSTALL/grub/i386-pc/archelp.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/ata.mod
Normal file
BIN
INSTALL/grub/i386-pc/ata.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/backtrace.mod
Normal file
BIN
INSTALL/grub/i386-pc/backtrace.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/bfs.mod
Normal file
BIN
INSTALL/grub/i386-pc/bfs.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/bitmap.mod
Normal file
BIN
INSTALL/grub/i386-pc/bitmap.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/bitmap_scale.mod
Normal file
BIN
INSTALL/grub/i386-pc/bitmap_scale.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/bsd.mod
Normal file
BIN
INSTALL/grub/i386-pc/bsd.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/bswap_test.mod
Normal file
BIN
INSTALL/grub/i386-pc/bswap_test.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/btrfs.mod
Normal file
BIN
INSTALL/grub/i386-pc/btrfs.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/bufio.mod
Normal file
BIN
INSTALL/grub/i386-pc/bufio.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cat.mod
Normal file
BIN
INSTALL/grub/i386-pc/cat.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cbfs.mod
Normal file
BIN
INSTALL/grub/i386-pc/cbfs.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cbls.mod
Normal file
BIN
INSTALL/grub/i386-pc/cbls.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cbmemc.mod
Normal file
BIN
INSTALL/grub/i386-pc/cbmemc.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cbtable.mod
Normal file
BIN
INSTALL/grub/i386-pc/cbtable.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cbtime.mod
Normal file
BIN
INSTALL/grub/i386-pc/cbtime.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cmdline_cat_test.mod
Normal file
BIN
INSTALL/grub/i386-pc/cmdline_cat_test.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cmosdump.mod
Normal file
BIN
INSTALL/grub/i386-pc/cmosdump.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cmostest.mod
Normal file
BIN
INSTALL/grub/i386-pc/cmostest.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cmp.mod
Normal file
BIN
INSTALL/grub/i386-pc/cmp.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cmp_test.mod
Normal file
BIN
INSTALL/grub/i386-pc/cmp_test.mod
Normal file
Binary file not shown.
201
INSTALL/grub/i386-pc/command.lst
Normal file
201
INSTALL/grub/i386-pc/command.lst
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
*acpi: acpi
|
||||||
|
*all_functional_test: functional_test
|
||||||
|
*background_image: gfxterm_background
|
||||||
|
*cat: cat
|
||||||
|
*cpuid: cpuid
|
||||||
|
*crc: hashsum
|
||||||
|
*cryptomount: cryptodisk
|
||||||
|
*drivemap: drivemap
|
||||||
|
*echo: echo
|
||||||
|
*extract_syslinux_entries_configfile: syslinuxcfg
|
||||||
|
*extract_syslinux_entries_source: syslinuxcfg
|
||||||
|
*file: file
|
||||||
|
*functional_test: functional_test
|
||||||
|
*gettext: gettext
|
||||||
|
*halt: halt
|
||||||
|
*hashsum: hashsum
|
||||||
|
*hdparm: hdparm
|
||||||
|
*hello: hello
|
||||||
|
*help: help
|
||||||
|
*hexdump: hexdump
|
||||||
|
*inb: iorw
|
||||||
|
*inl: iorw
|
||||||
|
*inw: iorw
|
||||||
|
*keystatus: keystatus
|
||||||
|
*kfreebsd: bsd
|
||||||
|
*knetbsd: bsd
|
||||||
|
*kopenbsd: bsd
|
||||||
|
*list_env: loadenv
|
||||||
|
*load_env: loadenv
|
||||||
|
*loopback: loopback
|
||||||
|
*ls: ls
|
||||||
|
*lsacpi: lsacpi
|
||||||
|
*lspci: lspci
|
||||||
|
*md5sum: hashsum
|
||||||
|
*menuentry: normal
|
||||||
|
*pcidump: pcidump
|
||||||
|
*plan9: plan9
|
||||||
|
*probe: probe
|
||||||
|
*rdmsr: rdmsr
|
||||||
|
*read_byte: memrw
|
||||||
|
*read_dword: memrw
|
||||||
|
*read_word: memrw
|
||||||
|
*regexp: regexp
|
||||||
|
*save_env: loadenv
|
||||||
|
*search: search
|
||||||
|
*sendkey: sendkey
|
||||||
|
*serial: serial
|
||||||
|
*setpci: setpci
|
||||||
|
*sha1sum: hashsum
|
||||||
|
*sha256sum: hashsum
|
||||||
|
*sha512sum: hashsum
|
||||||
|
*sleep: sleep
|
||||||
|
*submenu: normal
|
||||||
|
*syslinux_configfile: syslinuxcfg
|
||||||
|
*syslinux_source: syslinuxcfg
|
||||||
|
*terminfo: terminfo
|
||||||
|
*test_blockarg: test_blockarg
|
||||||
|
*testspeed: testspeed
|
||||||
|
*tr: tr
|
||||||
|
*trust: pgp
|
||||||
|
*verify_detached: pgp
|
||||||
|
*xnu_splash: xnu
|
||||||
|
*zfskey: zfscrypt
|
||||||
|
.: configfile
|
||||||
|
[: test
|
||||||
|
authenticate: normal
|
||||||
|
background_color: gfxterm_background
|
||||||
|
backtrace: backtrace
|
||||||
|
badram: mmap
|
||||||
|
blocklist: blocklist
|
||||||
|
boot: boot
|
||||||
|
break: normal
|
||||||
|
cat: minicmd
|
||||||
|
cbmemc: cbmemc
|
||||||
|
chainloader: chain
|
||||||
|
clear: normal
|
||||||
|
cmosclean: cmostest
|
||||||
|
cmosdump: cmosdump
|
||||||
|
cmosset: cmostest
|
||||||
|
cmostest: cmostest
|
||||||
|
cmp: cmp
|
||||||
|
configfile: configfile
|
||||||
|
continue: normal
|
||||||
|
coreboot_boottime: cbtime
|
||||||
|
cutmem: mmap
|
||||||
|
date: date
|
||||||
|
distrust: pgp
|
||||||
|
dump: minicmd
|
||||||
|
efiemu_loadcore: efiemu
|
||||||
|
efiemu_prepare: efiemu
|
||||||
|
efiemu_unload: efiemu
|
||||||
|
eval: eval
|
||||||
|
exit: minicmd
|
||||||
|
export: normal
|
||||||
|
extract_entries_configfile: configfile
|
||||||
|
extract_entries_source: configfile
|
||||||
|
extract_legacy_entries_configfile: legacycfg
|
||||||
|
extract_legacy_entries_source: legacycfg
|
||||||
|
false: true
|
||||||
|
freedos: freedos
|
||||||
|
gdbstub: gdb
|
||||||
|
gdbstub_break: gdb
|
||||||
|
gdbstub_stop: gdb
|
||||||
|
gptsync: gptsync
|
||||||
|
help: minicmd
|
||||||
|
hexdump_random: random
|
||||||
|
initrd16: linux16
|
||||||
|
initrd: linux
|
||||||
|
keymap: keylayouts
|
||||||
|
kfreebsd_loadenv: bsd
|
||||||
|
kfreebsd_module: bsd
|
||||||
|
kfreebsd_module_elf: bsd
|
||||||
|
knetbsd_module: bsd
|
||||||
|
knetbsd_module_elf: bsd
|
||||||
|
kopenbsd_ramdisk: bsd
|
||||||
|
legacy_check_password: legacycfg
|
||||||
|
legacy_configfile: legacycfg
|
||||||
|
legacy_initrd: legacycfg
|
||||||
|
legacy_initrd_nounzip: legacycfg
|
||||||
|
legacy_kernel: legacycfg
|
||||||
|
legacy_password: legacycfg
|
||||||
|
legacy_source: legacycfg
|
||||||
|
linux16: linux16
|
||||||
|
linux: linux
|
||||||
|
list_trusted: pgp
|
||||||
|
loadfont: font
|
||||||
|
lsapm: lsapm
|
||||||
|
lscoreboot: cbls
|
||||||
|
lsfonts: font
|
||||||
|
lsmmap: lsmmap
|
||||||
|
lsmod: minicmd
|
||||||
|
macppcbless: macbless
|
||||||
|
mactelbless: macbless
|
||||||
|
module2: multiboot2
|
||||||
|
module: multiboot
|
||||||
|
multiboot2: multiboot2
|
||||||
|
multiboot: multiboot
|
||||||
|
nativedisk: nativedisk
|
||||||
|
net_add_addr: net
|
||||||
|
net_add_dns: net
|
||||||
|
net_add_route: net
|
||||||
|
net_bootp: net
|
||||||
|
net_del_addr: net
|
||||||
|
net_del_dns: net
|
||||||
|
net_del_route: net
|
||||||
|
net_dhcp: net
|
||||||
|
net_get_dhcp_option: net
|
||||||
|
net_ipv6_autoconf: net
|
||||||
|
net_ls_addr: net
|
||||||
|
net_ls_cards: net
|
||||||
|
net_ls_dns: net
|
||||||
|
net_ls_routes: net
|
||||||
|
net_nslookup: net
|
||||||
|
normal: normal
|
||||||
|
normal_exit: normal
|
||||||
|
ntldr: ntldr
|
||||||
|
outb: iorw
|
||||||
|
outl: iorw
|
||||||
|
outw: iorw
|
||||||
|
parttool: parttool
|
||||||
|
password: password
|
||||||
|
password_pbkdf2: password_pbkdf2
|
||||||
|
play: play
|
||||||
|
pxechainloader: pxechain
|
||||||
|
read: read
|
||||||
|
reboot: reboot
|
||||||
|
return: normal
|
||||||
|
rmmod: minicmd
|
||||||
|
search.file: search_fs_file
|
||||||
|
search.fs_label: search_label
|
||||||
|
search.fs_uuid: search_fs_uuid
|
||||||
|
setparams: normal
|
||||||
|
shift: normal
|
||||||
|
source: configfile
|
||||||
|
terminal_input: terminal
|
||||||
|
terminal_output: terminal
|
||||||
|
test: test
|
||||||
|
testload: testload
|
||||||
|
time: time
|
||||||
|
true: true
|
||||||
|
truecrypt: truecrypt
|
||||||
|
usb: usbtest
|
||||||
|
vbeinfo: videoinfo
|
||||||
|
vbetest: videotest
|
||||||
|
videoinfo: videoinfo
|
||||||
|
videotest: videotest
|
||||||
|
write_byte: memrw
|
||||||
|
write_dword: memrw
|
||||||
|
write_word: memrw
|
||||||
|
wrmsr: wrmsr
|
||||||
|
xnu_devprop_load: xnu
|
||||||
|
xnu_kernel64: xnu
|
||||||
|
xnu_kernel: xnu
|
||||||
|
xnu_kext: xnu
|
||||||
|
xnu_kextdir: xnu
|
||||||
|
xnu_mkext: xnu
|
||||||
|
xnu_ramdisk: xnu
|
||||||
|
xnu_resume: xnu
|
||||||
|
xnu_uuid: xnu_uuid
|
||||||
|
zfs-bootfs: zfsinfo
|
||||||
|
zfsinfo: zfsinfo
|
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cpio.mod
Normal file
BIN
INSTALL/grub/i386-pc/cpio.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cpio_be.mod
Normal file
BIN
INSTALL/grub/i386-pc/cpio_be.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cpuid.mod
Normal file
BIN
INSTALL/grub/i386-pc/cpuid.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/crc64.mod
Normal file
BIN
INSTALL/grub/i386-pc/crc64.mod
Normal file
Binary file not shown.
45
INSTALL/grub/i386-pc/crypto.lst
Normal file
45
INSTALL/grub/i386-pc/crypto.lst
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
RIJNDAEL: gcry_rijndael
|
||||||
|
RIJNDAEL192: gcry_rijndael
|
||||||
|
RIJNDAEL256: gcry_rijndael
|
||||||
|
AES128: gcry_rijndael
|
||||||
|
AES-128: gcry_rijndael
|
||||||
|
AES-192: gcry_rijndael
|
||||||
|
AES-256: gcry_rijndael
|
||||||
|
ADLER32: adler32
|
||||||
|
CRC64: crc64
|
||||||
|
ARCFOUR: gcry_arcfour
|
||||||
|
BLOWFISH: gcry_blowfish
|
||||||
|
CAMELLIA128: gcry_camellia
|
||||||
|
CAMELLIA192: gcry_camellia
|
||||||
|
CAMELLIA256: gcry_camellia
|
||||||
|
CAST5: gcry_cast5
|
||||||
|
CRC32: gcry_crc
|
||||||
|
CRC32RFC1510: gcry_crc
|
||||||
|
CRC24RFC2440: gcry_crc
|
||||||
|
DES: gcry_des
|
||||||
|
3DES: gcry_des
|
||||||
|
DSA: gcry_dsa
|
||||||
|
IDEA: gcry_idea
|
||||||
|
MD4: gcry_md4
|
||||||
|
MD5: gcry_md5
|
||||||
|
RFC2268_40: gcry_rfc2268
|
||||||
|
AES: gcry_rijndael
|
||||||
|
AES192: gcry_rijndael
|
||||||
|
AES256: gcry_rijndael
|
||||||
|
RIPEMD160: gcry_rmd160
|
||||||
|
RSA: gcry_rsa
|
||||||
|
SEED: gcry_seed
|
||||||
|
SERPENT128: gcry_serpent
|
||||||
|
SERPENT192: gcry_serpent
|
||||||
|
SERPENT256: gcry_serpent
|
||||||
|
SHA1: gcry_sha1
|
||||||
|
SHA224: gcry_sha256
|
||||||
|
SHA256: gcry_sha256
|
||||||
|
SHA512: gcry_sha512
|
||||||
|
SHA384: gcry_sha512
|
||||||
|
TIGER192: gcry_tiger
|
||||||
|
TIGER: gcry_tiger
|
||||||
|
TIGER2: gcry_tiger
|
||||||
|
TWOFISH: gcry_twofish
|
||||||
|
TWOFISH128: gcry_twofish
|
||||||
|
WHIRLPOOL: gcry_whirlpool
|
BIN
INSTALL/grub/i386-pc/crypto.mod
Normal file
BIN
INSTALL/grub/i386-pc/crypto.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cryptodisk.mod
Normal file
BIN
INSTALL/grub/i386-pc/cryptodisk.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/cs5536.mod
Normal file
BIN
INSTALL/grub/i386-pc/cs5536.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/ctz_test.mod
Normal file
BIN
INSTALL/grub/i386-pc/ctz_test.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/datehook.mod
Normal file
BIN
INSTALL/grub/i386-pc/datehook.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/datetime.mod
Normal file
BIN
INSTALL/grub/i386-pc/datetime.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/diskfilter.mod
Normal file
BIN
INSTALL/grub/i386-pc/diskfilter.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/div.mod
Normal file
BIN
INSTALL/grub/i386-pc/div.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/div_test.mod
Normal file
BIN
INSTALL/grub/i386-pc/div_test.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/dm_nv.mod
Normal file
BIN
INSTALL/grub/i386-pc/dm_nv.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/efiemu.mod
Normal file
BIN
INSTALL/grub/i386-pc/efiemu.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/ehci.mod
Normal file
BIN
INSTALL/grub/i386-pc/ehci.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/eval.mod
Normal file
BIN
INSTALL/grub/i386-pc/eval.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/exfctest.mod
Normal file
BIN
INSTALL/grub/i386-pc/exfctest.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/f2fs.mod
Normal file
BIN
INSTALL/grub/i386-pc/f2fs.mod
Normal file
Binary file not shown.
0
INSTALL/grub/i386-pc/fdt.lst
Normal file
0
INSTALL/grub/i386-pc/fdt.lst
Normal file
BIN
INSTALL/grub/i386-pc/freedos.mod
Normal file
BIN
INSTALL/grub/i386-pc/freedos.mod
Normal file
Binary file not shown.
37
INSTALL/grub/i386-pc/fs.lst
Normal file
37
INSTALL/grub/i386-pc/fs.lst
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
affs
|
||||||
|
afs
|
||||||
|
bfs
|
||||||
|
btrfs
|
||||||
|
cbfs
|
||||||
|
cpio
|
||||||
|
cpio_be
|
||||||
|
exfat
|
||||||
|
ext2
|
||||||
|
f2fs
|
||||||
|
fat
|
||||||
|
hfs
|
||||||
|
hfsplus
|
||||||
|
iso9660
|
||||||
|
jfs
|
||||||
|
minix
|
||||||
|
minix2
|
||||||
|
minix2_be
|
||||||
|
minix3
|
||||||
|
minix3_be
|
||||||
|
minix_be
|
||||||
|
newc
|
||||||
|
nilfs2
|
||||||
|
ntfs
|
||||||
|
odc
|
||||||
|
procfs
|
||||||
|
reiserfs
|
||||||
|
romfs
|
||||||
|
sfs
|
||||||
|
squash4
|
||||||
|
tar
|
||||||
|
udf
|
||||||
|
ufs1
|
||||||
|
ufs1_be
|
||||||
|
ufs2
|
||||||
|
xfs
|
||||||
|
zfs
|
BIN
INSTALL/grub/i386-pc/fshelp.mod
Normal file
BIN
INSTALL/grub/i386-pc/fshelp.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/functional_test.mod
Normal file
BIN
INSTALL/grub/i386-pc/functional_test.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_arcfour.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_arcfour.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_blowfish.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_blowfish.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_camellia.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_camellia.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_cast5.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_cast5.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_crc.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_crc.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_des.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_des.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_dsa.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_dsa.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_idea.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_idea.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_md4.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_md4.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_rfc2268.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_rfc2268.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_rijndael.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_rijndael.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_rmd160.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_rmd160.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_rsa.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_rsa.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_seed.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_seed.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_serpent.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_serpent.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_sha1.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_sha1.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_sha256.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_sha256.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_sha512.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_sha512.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_tiger.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_tiger.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_twofish.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_twofish.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gcry_whirlpool.mod
Normal file
BIN
INSTALL/grub/i386-pc/gcry_whirlpool.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/gdb.mod
Normal file
BIN
INSTALL/grub/i386-pc/gdb.mod
Normal file
Binary file not shown.
BIN
INSTALL/grub/i386-pc/geli.mod
Normal file
BIN
INSTALL/grub/i386-pc/geli.mod
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user