[7] Remove direct support for Ubuntu, it is handled as "generic linux"
This commit is contained in:
		
							
								
								
									
										151
									
								
								multirom.c
									
									
									
									
									
								
							
							
						
						
									
										151
									
								
								multirom.c
									
									
									
									
									
								
							@@ -262,7 +262,6 @@ static int compare_rom_names(const void *a, const void *b)
 | 
				
			|||||||
int multirom_default_status(struct multirom_status *s)
 | 
					int multirom_default_status(struct multirom_status *s)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    s->is_second_boot = 0;
 | 
					    s->is_second_boot = 0;
 | 
				
			||||||
    s->set_quiet_ubuntu = 1;
 | 
					 | 
				
			||||||
    s->current_rom = NULL;
 | 
					    s->current_rom = NULL;
 | 
				
			||||||
    s->roms = NULL;
 | 
					    s->roms = NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -394,8 +393,6 @@ int multirom_load_status(struct multirom_status *s)
 | 
				
			|||||||
            strcpy(auto_boot_rom, arg);
 | 
					            strcpy(auto_boot_rom, arg);
 | 
				
			||||||
        else if(strstr(name, "curr_rom_part"))
 | 
					        else if(strstr(name, "curr_rom_part"))
 | 
				
			||||||
            s->curr_rom_part = strdup(arg);
 | 
					            s->curr_rom_part = strdup(arg);
 | 
				
			||||||
        else if(strstr(name, "set_quiet_ubuntu"))
 | 
					 | 
				
			||||||
            s->set_quiet_ubuntu = atoi(arg);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    fclose(f);
 | 
					    fclose(f);
 | 
				
			||||||
@@ -459,7 +456,6 @@ int multirom_save_status(struct multirom_status *s)
 | 
				
			|||||||
    fprintf(f, "auto_boot_seconds=%d\n", s->auto_boot_seconds);
 | 
					    fprintf(f, "auto_boot_seconds=%d\n", s->auto_boot_seconds);
 | 
				
			||||||
    fprintf(f, "auto_boot_rom=%s\n", s->auto_boot_rom ? s->auto_boot_rom->name : "");
 | 
					    fprintf(f, "auto_boot_rom=%s\n", s->auto_boot_rom ? s->auto_boot_rom->name : "");
 | 
				
			||||||
    fprintf(f, "curr_rom_part=%s\n", s->curr_rom_part ? s->curr_rom_part : "");
 | 
					    fprintf(f, "curr_rom_part=%s\n", s->curr_rom_part ? s->curr_rom_part : "");
 | 
				
			||||||
    fprintf(f, "set_quiet_ubuntu=%d\n", s->set_quiet_ubuntu);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    fclose(f);
 | 
					    fclose(f);
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
@@ -582,24 +578,40 @@ int multirom_get_rom_type(struct multirom_rom *rom)
 | 
				
			|||||||
            return ROM_LINUX_USB;
 | 
					            return ROM_LINUX_USB;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Handle ubuntu
 | 
					    // Handle Ubuntu 13.04 - deprecated
 | 
				
			||||||
    if(!multirom_path_exists(b, "root"))
 | 
					    if ((!multirom_path_exists(b, "root") && multirom_path_exists(b, "boot.img")) ||
 | 
				
			||||||
 | 
					       (!multirom_path_exists(b, "root.img") && rom->partition))
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        if(multirom_path_exists(b, "boot.img") != 0) // boot.img does not exist: 13.04
 | 
					        // try to copy rom_info.txt in there, ubuntu is deprecated
 | 
				
			||||||
 | 
					        ERROR("Found deprecated Ubuntu 13.04, trying to copy rom_info.txt...\n");
 | 
				
			||||||
 | 
					        char *cmd[] = { busybox_path, "cp", malloc(256), malloc(256), NULL };
 | 
				
			||||||
 | 
					        sprintf(cmd[2], "%s/infos/ubuntu.txt", multirom_dir);
 | 
				
			||||||
 | 
					        sprintf(cmd[3], "%s/rom_info.txt", b);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        int res = run_cmd(cmd);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        free(cmd[2]);
 | 
				
			||||||
 | 
					        free(cmd[3]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if(res != 0)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            if(!rom->partition) return ROM_UBUNTU_INTERNAL;
 | 
					            ERROR("Failed to copy rom_info for Ubuntu!\n");
 | 
				
			||||||
            else                return ROM_UBUNTU_USB_DIR;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        else
 | 
					 | 
				
			||||||
        {
 | 
					 | 
				
			||||||
            // if it has boot.img, it probably is 12.10, which is unsupported by
 | 
					 | 
				
			||||||
            // v3 and higher
 | 
					 | 
				
			||||||
            if(!rom->partition) return ROM_UNSUPPORTED_INT;
 | 
					            if(!rom->partition) return ROM_UNSUPPORTED_INT;
 | 
				
			||||||
            else                return ROM_UNSUPPORTED_USB;
 | 
					            else                return ROM_UNSUPPORTED_USB;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            if(!rom->partition) return ROM_LINUX_INTERNAL;
 | 
				
			||||||
 | 
					            else                return ROM_LINUX_USB;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // Handle ubuntu 12.10
 | 
				
			||||||
 | 
					    if(!multirom_path_exists(b, "root") && !multirom_path_exists(b, "boot.img"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        if(!rom->partition) return ROM_UNSUPPORTED_INT;
 | 
				
			||||||
 | 
					        else                return ROM_UNSUPPORTED_USB;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    else if(!multirom_path_exists(b, "root.img") && rom->partition)
 | 
					 | 
				
			||||||
        return ROM_UBUNTU_USB_IMG;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return ROM_UNKNOWN;
 | 
					    return ROM_UNKNOWN;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -708,9 +720,6 @@ int multirom_prepare_for_boot(struct multirom_status *s, struct multirom_rom *to
 | 
				
			|||||||
    switch(type)
 | 
					    switch(type)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        case ROM_DEFAULT:
 | 
					        case ROM_DEFAULT:
 | 
				
			||||||
        case ROM_UBUNTU_USB_DIR:
 | 
					 | 
				
			||||||
        case ROM_UBUNTU_USB_IMG:
 | 
					 | 
				
			||||||
        case ROM_UBUNTU_INTERNAL:
 | 
					 | 
				
			||||||
        case ROM_LINUX_INTERNAL:
 | 
					        case ROM_LINUX_INTERNAL:
 | 
				
			||||||
        case ROM_LINUX_USB:
 | 
					        case ROM_LINUX_USB:
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
@@ -729,13 +738,6 @@ int multirom_prepare_for_boot(struct multirom_status *s, struct multirom_rom *to
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            if(to_boot->partition)
 | 
					            if(to_boot->partition)
 | 
				
			||||||
                to_boot->partition->keep_mounted = 1;
 | 
					                to_boot->partition->keep_mounted = 1;
 | 
				
			||||||
 | 
					 | 
				
			||||||
            struct stat info;
 | 
					 | 
				
			||||||
            if(!(exit & (EXIT_REBOOT | EXIT_KEXEC)) && stat("/init.rc", &info) < 0)
 | 
					 | 
				
			||||||
            {
 | 
					 | 
				
			||||||
                ERROR("Trying to boot android with ubuntu boot.img, aborting!\n");
 | 
					 | 
				
			||||||
                return -1;
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        default:
 | 
					        default:
 | 
				
			||||||
@@ -1054,7 +1056,7 @@ int multirom_has_kexec(void)
 | 
				
			|||||||
            ERROR("%s not found in /proc/config.gz!\n", checks[i]);
 | 
					            ERROR("%s not found in /proc/config.gz!\n", checks[i]);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					
 | 
				
			||||||
    remove("/config");
 | 
					    remove("/config");
 | 
				
			||||||
    return has_kexec;
 | 
					    return has_kexec;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -1136,13 +1138,6 @@ int multirom_load_kexec(struct multirom_status *s, struct multirom_rom *rom)
 | 
				
			|||||||
    int loop_mounted = 0;
 | 
					    int loop_mounted = 0;
 | 
				
			||||||
    switch(rom->type)
 | 
					    switch(rom->type)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        case ROM_UBUNTU_INTERNAL:
 | 
					 | 
				
			||||||
        case ROM_UBUNTU_USB_DIR:
 | 
					 | 
				
			||||||
        case ROM_UBUNTU_USB_IMG:
 | 
					 | 
				
			||||||
            loop_mounted = multirom_fill_kexec_ubuntu(s, rom, cmd);
 | 
					 | 
				
			||||||
            if(loop_mounted < 0)
 | 
					 | 
				
			||||||
                goto exit;
 | 
					 | 
				
			||||||
            break;
 | 
					 | 
				
			||||||
        case ROM_ANDROID_INTERNAL:
 | 
					        case ROM_ANDROID_INTERNAL:
 | 
				
			||||||
        case ROM_ANDROID_USB_DIR:
 | 
					        case ROM_ANDROID_USB_DIR:
 | 
				
			||||||
        case ROM_ANDROID_USB_IMG:
 | 
					        case ROM_ANDROID_USB_IMG:
 | 
				
			||||||
@@ -1207,94 +1202,6 @@ exit:
 | 
				
			|||||||
    return res;
 | 
					    return res;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// PURGE ac100-tarball-installer
 | 
					 | 
				
			||||||
// export FLASH_KERNEL_SKIP=1
 | 
					 | 
				
			||||||
// upravit init a scripts/local
 | 
					 | 
				
			||||||
// touch /var/lib/oem-config/run
 | 
					 | 
				
			||||||
// update-initramfs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int multirom_fill_kexec_ubuntu(struct multirom_status *s, struct multirom_rom *rom, char **cmd)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    char rom_path[256];
 | 
					 | 
				
			||||||
    int loop_mounted = 0;
 | 
					 | 
				
			||||||
    int res = -1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(!rom->partition || strstr(rom->partition->fs, "ext"))
 | 
					 | 
				
			||||||
        sprintf(rom_path, "%s/root/boot", rom->base_path);
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        // mount the image file
 | 
					 | 
				
			||||||
        mkdir("/mnt/image", 0777);
 | 
					 | 
				
			||||||
        sprintf(rom_path, "%s/root.img", rom->base_path);
 | 
					 | 
				
			||||||
        if(multirom_mount_loop(rom_path, "/mnt/image", "ext4", MS_NOATIME) < 0)
 | 
					 | 
				
			||||||
            return -1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        loop_mounted = 1;
 | 
					 | 
				
			||||||
        strcpy(rom_path, "/mnt/image/boot");
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(multirom_find_file(cmd[2], "vmlinuz", rom_path) == -1)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        ERROR("Failed to get vmlinuz path\n");
 | 
					 | 
				
			||||||
        goto exit;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    char str[1000];
 | 
					 | 
				
			||||||
    if(multirom_find_file(str, "initrd.img-*", rom_path) == -1)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        ERROR("Failed to get initrd path\n");
 | 
					 | 
				
			||||||
        goto exit;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    sprintf(cmd[4], "--initrd=%s", str);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(multirom_get_cmdline(str, sizeof(str)) == -1)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        ERROR("Failed to get cmdline\n");
 | 
					 | 
				
			||||||
        return -1;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    struct usb_partition *p = rom->partition;
 | 
					 | 
				
			||||||
    if(!p && (p = multirom_get_data_partition(s)) == NULL)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        ERROR("Failed to find ubuntu root partition!\n");
 | 
					 | 
				
			||||||
        goto exit;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    char folder[256];
 | 
					 | 
				
			||||||
    char root[256];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(!rom->partition)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        struct stat info;
 | 
					 | 
				
			||||||
        if(stat("/dev/block/mmcblk0p10", &info) < 0)
 | 
					 | 
				
			||||||
            strcpy(root, "/dev/mmcblk0p9");
 | 
					 | 
				
			||||||
        else
 | 
					 | 
				
			||||||
            strcpy(root, "/dev/mmcblk0p10");
 | 
					 | 
				
			||||||
        sprintf(folder, "rootsubdir=%s/root", rom->base_path + strlen(REALDATA));
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        sprintf(root, "UUID=%s", p->uuid);
 | 
					 | 
				
			||||||
        if(!strstr(p->fs, "ext"))
 | 
					 | 
				
			||||||
            sprintf(folder, "loop=%s/root.img loopfstype=ext4", strstr(rom->base_path, "/multirom/"));
 | 
					 | 
				
			||||||
        else
 | 
					 | 
				
			||||||
            sprintf(folder, "rootsubdir=%s/root", strstr(rom->base_path, "/multirom/"));
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    sprintf(cmd[5], "--command-line=%s root=%s rw console=tty0 fbcon=rotate:1 access=m2 splash mrom_kexecd=1 rootflags=defaults,noatime,nodiratime %s", str, root, folder);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(rom->partition && strstr(rom->partition->fs, "ntfs"))
 | 
					 | 
				
			||||||
        strcat(cmd[5], " rootfstype=ntfs-3g");
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(s->set_quiet_ubuntu)
 | 
					 | 
				
			||||||
        strcat(cmd[5], " quiet");
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    res = loop_mounted;
 | 
					 | 
				
			||||||
exit:
 | 
					 | 
				
			||||||
    return res;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int multirom_fill_kexec_android(struct multirom_rom *rom, char **cmd)
 | 
					int multirom_fill_kexec_android(struct multirom_rom *rom, char **cmd)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int res = -1;
 | 
					    int res = -1;
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										20
									
								
								multirom.h
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								multirom.h
									
									
									
									
									
								
							@@ -16,24 +16,18 @@ enum
 | 
				
			|||||||
    ROM_LINUX_INTERNAL    = 4,
 | 
					    ROM_LINUX_INTERNAL    = 4,
 | 
				
			||||||
    ROM_LINUX_USB         = 5,
 | 
					    ROM_LINUX_USB         = 5,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // deprecated
 | 
					    ROM_UNSUPPORTED_INT   = 6,
 | 
				
			||||||
    ROM_UBUNTU_INTERNAL   = 6, 
 | 
					    ROM_UNSUPPORTED_USB   = 7,
 | 
				
			||||||
    ROM_UBUNTU_USB_IMG    = 7,
 | 
					    ROM_UNKNOWN           = 8
 | 
				
			||||||
    ROM_UBUNTU_USB_DIR    = 8,
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    ROM_UNSUPPORTED_INT   = 9,
 | 
					 | 
				
			||||||
    ROM_UNSUPPORTED_USB   = 10,
 | 
					 | 
				
			||||||
    ROM_UNKNOWN           = 11
 | 
					 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define M(x) (1 << x)
 | 
					#define M(x) (1 << x)
 | 
				
			||||||
#define MASK_INTERNAL (M(ROM_DEFAULT) | M(ROM_ANDROID_INTERNAL) | M(ROM_UBUNTU_INTERNAL) | M(ROM_UNSUPPORTED_INT) | M(ROM_LINUX_INTERNAL))
 | 
					#define MASK_INTERNAL (M(ROM_DEFAULT) | M(ROM_ANDROID_INTERNAL) | M(ROM_UNSUPPORTED_INT) | M(ROM_LINUX_INTERNAL))
 | 
				
			||||||
#define MASK_USB_ROMS (M(ROM_ANDROID_USB_IMG) | M(ROM_UBUNTU_USB_IMG) | M(ROM_ANDROID_USB_DIR) | M(ROM_UBUNTU_USB_DIR) | M(ROM_UNSUPPORTED_USB) | M(ROM_LINUX_USB))
 | 
					#define MASK_USB_ROMS (M(ROM_ANDROID_USB_IMG) | M(ROM_ANDROID_USB_DIR) | M(ROM_UNSUPPORTED_USB) | M(ROM_LINUX_USB))
 | 
				
			||||||
#define MASK_ANDROID (M(ROM_ANDROID_USB_DIR) | M(ROM_ANDROID_USB_IMG) | M(ROM_ANDROID_INTERNAL))
 | 
					#define MASK_ANDROID (M(ROM_ANDROID_USB_DIR) | M(ROM_ANDROID_USB_IMG) | M(ROM_ANDROID_INTERNAL))
 | 
				
			||||||
#define MASK_UNSUPPORTED (M(ROM_UNSUPPORTED_USB) | M(ROM_UNSUPPORTED_INT))
 | 
					#define MASK_UNSUPPORTED (M(ROM_UNSUPPORTED_USB) | M(ROM_UNSUPPORTED_INT))
 | 
				
			||||||
#define MASK_LINUX (M(ROM_LINUX_INTERNAL) | M(ROM_LINUX_USB))
 | 
					#define MASK_LINUX (M(ROM_LINUX_INTERNAL) | M(ROM_LINUX_USB))
 | 
				
			||||||
#define MASK_UBUNTU (M(ROM_UBUNTU_INTERNAL) | M(ROM_UBUNTU_USB_IMG)| M(ROM_UBUNTU_USB_DIR)) // deprecated
 | 
					#define MASK_KEXEC (MASK_LINUX)
 | 
				
			||||||
#define MASK_KEXEC (MASK_LINUX | MASK_UBUNTU)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
enum 
 | 
					enum 
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -74,7 +68,6 @@ struct multirom_rom
 | 
				
			|||||||
struct multirom_status
 | 
					struct multirom_status
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    int is_second_boot;
 | 
					    int is_second_boot;
 | 
				
			||||||
    int set_quiet_ubuntu;
 | 
					 | 
				
			||||||
    int auto_boot_seconds;
 | 
					    int auto_boot_seconds;
 | 
				
			||||||
    struct multirom_rom *auto_boot_rom;
 | 
					    struct multirom_rom *auto_boot_rom;
 | 
				
			||||||
    struct multirom_rom *current_rom;
 | 
					    struct multirom_rom *current_rom;
 | 
				
			||||||
@@ -110,7 +103,6 @@ int multirom_has_kexec(void);
 | 
				
			|||||||
int multirom_load_kexec(struct multirom_status *s, struct multirom_rom *rom);
 | 
					int multirom_load_kexec(struct multirom_status *s, struct multirom_rom *rom);
 | 
				
			||||||
int multirom_get_cmdline(char *str, size_t size);
 | 
					int multirom_get_cmdline(char *str, size_t size);
 | 
				
			||||||
int multirom_find_file(char *res, const char *name_part, const char *path);
 | 
					int multirom_find_file(char *res, const char *name_part, const char *path);
 | 
				
			||||||
int multirom_fill_kexec_ubuntu(struct multirom_status *s, struct multirom_rom *rom, char **cmd);
 | 
					 | 
				
			||||||
int multirom_fill_kexec_linux(struct multirom_status *s, struct multirom_rom *rom, char **cmd);
 | 
					int multirom_fill_kexec_linux(struct multirom_status *s, struct multirom_rom *rom, char **cmd);
 | 
				
			||||||
int multirom_fill_kexec_android(struct multirom_rom *rom, char **cmd);
 | 
					int multirom_fill_kexec_android(struct multirom_rom *rom, char **cmd);
 | 
				
			||||||
int multirom_extract_bytes(const char *dst, FILE *src, size_t size);
 | 
					int multirom_extract_bytes(const char *dst, FILE *src, size_t size);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -28,7 +28,7 @@ root_img_fs="ext4"
 | 
				
			|||||||
# If ROM is in images, it will mount the image and load it from there.
 | 
					# If ROM is in images, it will mount the image and load it from there.
 | 
				
			||||||
# You can use  * _at the end of the filename_ as wildcard character.
 | 
					# You can use  * _at the end of the filename_ as wildcard character.
 | 
				
			||||||
kernel_path="%r/boot/vmlinuz"
 | 
					kernel_path="%r/boot/vmlinuz"
 | 
				
			||||||
initrd_path="%r/boot/initrd.img-*"
 | 
					initrd_path="%r/boot/initrd.img"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Set up the cmdline
 | 
					# Set up the cmdline
 | 
				
			||||||
# img_cmdline and dir_cmdline are appended to base_cmdline.
 | 
					# img_cmdline and dir_cmdline are appended to base_cmdline.
 | 
				
			||||||
@@ -39,6 +39,6 @@ initrd_path="%r/boot/initrd.img-*"
 | 
				
			|||||||
#  - %s - root directory, from root of the root device
 | 
					#  - %s - root directory, from root of the root device
 | 
				
			||||||
#  - %i - root image, from root of the root device
 | 
					#  - %i - root image, from root of the root device
 | 
				
			||||||
#  - %f - fs of the root image
 | 
					#  - %f - fs of the root image
 | 
				
			||||||
base_cmdline="%b root=%d rootfstype=%r rw console=tty0 fbcon=rotate:1 access=m2 splash rootflags=defaults,noatime,nodiratime quiet"
 | 
					base_cmdline="%b root=%d rootfstype=%r rw console=tty0 fbcon=rotate:1 access=m2 quiet splash rootflags=defaults,noatime,nodiratime"
 | 
				
			||||||
img_cmdline="loop=%i loopfstype=%f"
 | 
					img_cmdline="loop=%i loopfstype=%f"
 | 
				
			||||||
dir_cmdline="rootsubdir=%s"
 | 
					dir_cmdline="rootsubdir=%s"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user