Skip to content

Fixes in the boot menu and image build#3192

Merged
lslezak merged 2 commits intomasterfrom
boot-menu-fixes
Feb 19, 2026
Merged

Fixes in the boot menu and image build#3192
lslezak merged 2 commits intomasterfrom
boot-menu-fixes

Conversation

@lslezak
Copy link
Copy Markdown
Contributor

@lslezak lslezak commented Feb 19, 2026

Problem

  • The image build fails when calling image-janitor tool
  • The boot from hard disk in the legacy BIOS mode does not work (black screen)

Fixes

  • Fixed boot from hard disk in the legacy BIOS mode, the exit command works only in EFI mode (returns back to the firmware), in BIOS boot the machine halts with black screen
  • Added missing configuration options for the image-janitor tool

Additional improvements

  • When booting from hard disk in the BIOS mode check if the first disk contains a valid MBR sector. If the disk is completely empty it displays an error.
    agama-not-bootable-bios-disk
  • Added "p" keyboard shortcut to interactively configure the root password for the installer live system - for me it is annoying to specify it on the boot command line, let's try something easier. This is experimental feature, let's see how it works for others. If it is not widely accepted we can remove it later.
    agama-grub-set-root-password
  • Added support for serial console, when the system has a serial console attached the boot menu appears there as well. Tested with virtual serial port in a VirtualBox VM:
    agama-boot-serial-console
  • Disable plymouth graphical boot when the grub boot menu is switched to text mode with the "t" keyboard shortcut
agama-grub-textmode-bios

Testing

  • Tested in a VM, x86_64 only. Hopefully Aarch64 behaves similarly, I did the same changes there (except the PC BIOS part)
  • Tested with both EFI and legacy BIOS systems

- Fixes and improvements in the boot menu for x86_64 and aarch64:
  - Fixed boot from hard disk in the legacy BIOS mode (x86_64 only)
  - Added "p" keyboard shortcut to interactively configure the root
    password for the installer live system
  - Added support for serial console
  - Disable plymouth graphical boot when the grub boot menu is
    switched to text mode with the "t" keyboard shortcut

- Fixed failed image build because of missing configuration options
  for the "image-janitor" tool

if [ "\${grub_platform}" != "efi" ]; then
menuentry "Boot from Hard Disk" --class opensuse --class gnu-linux --class gnu --class os {
exit
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

strange that for me it works. Do you have disk as boot device in BIOS? if so, then exit should continue to boot with another device in boot order ( at least it works for me when I am testing it in qemu )

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interesting... Yes, the boot order is set to "Optical" then "Harddisk". Without any medium it boots the system from disk (SLES 16.0). But when booting from DVD and using "Boot from Hard Disk" grub option I get just a black screen. When using exit from command line it gets stuck as well.

However, with the chainloader it works fine.

agama-bios-boot-exit

@lslezak lslezak merged commit d161665 into master Feb 19, 2026
11 of 12 checks passed
@lslezak lslezak deleted the boot-menu-fixes branch February 19, 2026 14:26
bmwiedemann pushed a commit to bmwiedemann/openSUSE that referenced this pull request Feb 27, 2026
https://build.opensuse.org/request/show/1334915
by user IGonzalezSosa + anag_factory
- Do not use verbose mode in the "image-janitor" calls, logging
  so many details significantly increases the ISO build time
  (roughly two times) (gh#agama-project/agama#3206)

- Fixes and improvements in the boot menu for x86_64 and aarch64:
  - Fixed boot from hard disk in the legacy BIOS mode (x86_64 only)
  - Added "p" keyboard shortcut to interactively configure the root
    password for the installer live system
  - Added support for serial console
  - Disable plymouth graphical boot when the grub boot menu is
    switched to text mode with the "t" keyboard shortcut
- Fixed failed image build because of missing configuration options
  for the "image-janitor" tool
  (gh#agama-project/agama#3192)

- Increase medium timeout to 60 seconds (jsc#PED-14986)
- Unify kernel and initramfs loca
@imobachgs imobachgs mentioned this pull request Mar 17, 2026
imobachgs added a commit that referenced this pull request Mar 17, 2026
Prepare to release version 19.

* #1829
* #2508
* #2772
* #2818
* #2826
* #2848
* #2860
* #2863
* #2864
* #2866
* #2867
* #2869
* #2870
* #2871
* #2872
* #2873
* #2874
* #2875
* #2876
* #2877
* #2880
* #2881
* #2882
* #2884
* #2885
* #2886
* #2891
* #2892
* #2893
* #2894
* #2895
* #2896
* #2897
* #2898
* #2899
* #2900
* #2901
* #2902
* #2903
* #2904
* #2908
* #2909
* #2910
* #2912
* #2913
* #2914
* #2915
* #2916
* #2917
* #2918
* #2920
* #2921
* #2923
* #2924
* #2926
* #2928
* #2929
* #2930
* #2933
* #2934
* #2935
* #2936
* #2937
* #2938
* #2939
* #2942
* #2943
* #2944
* #2945
* #2946
* #2947
* #2948
* #2949
* #2950
* #2951
* #2952
* #2954
* #2955
* #2956
* #2957
* #2958
* #2959
* #2960
* #2961
* #2963
* #2964
* #2965
* #2967
* #2968
* #2969
* #2970
* #2971
* #2972
* #2974
* #2975
* #2977
* #2978
* #2980
* #2981
* #2982
* #2983
* #2984
* #2988
* #2989
* #2990
* #2991
* #2992
* #2993
* #2994
* #2995
* #2996
* #2997
* #2998
* #2999
* #3000
* #3001
* #3002
* #3004
* #3005
* #3006
* #3007
* #3008
* #3009
* #3011
* #3012
* #3013
* #3014
* #3015
* #3016
* #3018
* #3019
* #3020
* #3021
* #3022
* #3023
* #3024
* #3025
* #3026
* #3027
* #3028
* #3029
* #3030
* #3031
* #3033
* #3034
* #3035
* #3036
* #3037
* #3039
* #3040
* #3041
* #3042
* #3043
* #3044
* #3045
* #3046
* #3047
* #3048
* #3049
* #3050
* #3051
* #3052
* #3053
* #3054
* #3055
* #3056
* #3057
* #3058
* #3060
* #3061
* #3062
* #3063
* #3064
* #3065
* #3066
* #3067
* #3068
* #3069
* #3070
* #3071
* #3072
* #3073
* #3074
* #3075
* #3076
* #3077
* #3078
* #3079
* #3086
* #3087
* #3088
* #3089
* #3090
* #3091
* #3092
* #3093
* #3094
* #3095
* #3096
* #3097
* #3098
* #3099
* #3100
* #3101
* #3102
* #3103
* #3104
* #3105
* #3106
* #3107
* #3108
* #3109
* #3110
* #3112
* #3113
* #3114
* #3115
* #3116
* #3117
* #3118
* #3119
* #3120
* #3122
* #3123
* #3124
* #3127
* #3128
* #3129
* #3130
* #3131
* #3133
* #3134
* #3135
* #3136
* #3137
* #3138
* #3139
* #3140
* #3141
* #3142
* #3143
* #3144
* #3145
* #3146
* #3147
* #3148
* #3149
* #3150
* #3151
* #3152
* #3153
* #3154
* #3155
* #3157
* #3158
* #3159
* #3160
* #3161
* #3162
* #3163
* #3164
* #3165
* #3166
* #3167
* #3168
* #3169
* #3170
* #3174
* #3175
* #3176
* #3177
* #3178
* #3179
* #3181
* #3182
* #3184
* #3185
* #3186
* #3188
* #3189
* #3190
* #3191
* #3192
* #3194
* #3195
* #3196
* #3197
* #3198
* #3199
* #3200
* #3201
* #3202
* #3203
* #3205
* #3206
* #3208
* #3209
* #3210
* #3213
* #3214
* #3215
* #3216
* #3217
* #3218
* #3219
* #3220
* #3222
* #3223
* #3224
* #3225
* #3226
* #3227
* #3228
* #3229
* #3230
* #3231
* #3232
* #3233
* #3234
* #3235
* #3236
* #3237
* #3238
* #3239
* #3240
* #3241
* #3242
* #3243
* #3244
* #3246
* #3247
* #3248
* #3250
* #3251
* #3252
* #3253
* #3254
* #3255
* #3256
* #3257
* #3258
* #3259
* #3260
* #3261
* #3262
* #3263
* #3265
* #3266
* #3267
* #3268
* #3269
* #3270
* #3271
* #3272
* #3273
* #3274
* #3275
* #3276
* #3277
* #3278
* #3279
* #3280
* #3281
* #3282
* #3283
* #3284
* #3285
* #3286
* #3287
* #3288
* #3289
* #3290
* #3291
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants