How to deactivate desktop opengl option
-
Hello,
I have activated the OpenGl desktop option, and since then i cannot boot the Pi, I have a coloured sprite at boot in place of four fruits, and no further access to the box (black screen, no ssh).
I can access the microSD using my laptop, i wonder where i can switch of this option.
Thanks, -
@aurelien the same place you turned it on.
-
@aurelien the experimental opengl option only works with a desktop environment (which the RetroPie image does not ship with) and only when the pi is set to boot to desktop, (and even then it is rather buggy) if not you will either need to open it up on a linux machine and fine the setting and manually change it or just reflash the image. You were warned when changing that it was experimental.
-
This topic is quite old, but I think it needs more discussion, because as far as I can tell, the answers here don't work anymore.
The problem is that keyboards and SSH are deactivated by default (maybe that was different 2 years ago?), so without the graphics mode, BASH and raspi-config are inaccessible. You can't access the option to turn OpenGL off again, you can't install or activate a desktop. In other words, turning OpenGL on bricks the device.
I tried mounting the SD-card in a PC card-reader, went to the boot-partition, edited the file config.txt and commented out the line
dtoverlay=vc4-fkms-v3d
That at least brought back some graphics mode, but I only got an EmulationStation without background and a dysfunctional menu with only empty lines. Maybe someone could mention WHICH setting to change in the config, instead of just telling us to "find the setting". But even if that works - that is still way to complicated to be an acceptable answer.At that point I had given up and flashed my SD-Card anew. Luckily, my installation was quite new anyways and I hadn't configured much - otherwise that "solution" would also have been unacceptable.
AFAIK, RetroPie strives for user friendliness - that means having an intuitive UI. An option that sounds great, but that does such damage, is not intuitive - especially if that option is accessible that easily (it is very far up in the menu-tree). I'm using OpenGL in my Raspbian installation where it works well, so I didn't see any reason not to turn it on. The fact that OpenGL only works in a desktop environment and RetroPie runs without a desktop environment, is a very technical detail you can't expect a casual user to know. Even as a graduate computer scientist, I fell for this.
In github issue #1392, @herb_fargus has explained that raspi-config comes from raspbian, not from RetroPie (I knew that before I had asked). Nevertheless, "So sorry, we can't really do anything about this" is just a cheap excuse. You do your own build of Raspbian, so you could run a patch over the raspi-config source code as part of your toolchain. You could provide and preinstall a package with a modified raspi-config (say retropie-config) instead of raspi-config. You could upstream a fix that allows to deactivate the option via command line (or other means). You could also have a startup script that changes the config.txt to turn off OpenGL if it is turned on.
There are things you could do about it and if you want to provide a user friendly UI as you claim, you can't hide behind such cheap excuses.
P.S. Please put a link to this forum thread into the github issue, because the github issue is the third result in a google search for "RetroPie deactivate OpenGL" and doesn't contain any helpful information.
-
@algorithman-de said in How to deactivate desktop opengl option:
This topic is quite old, but I think it needs more discussion, because as far as I can tell, the answers here don't work anymore.
The problem is that keyboards and SSH are deactivated by default (maybe that was different 2 years ago?), so without the graphics mode, BASH and raspi-config are inaccessible. You can't access the option to turn OpenGL off again, you can't install or activate a desktop. In other words, turning OpenGL on bricks the device.
you can turn on SSH without a keyboard/graphics. see step 3: https://www.raspberrypi.org/documentation/remote-access/ssh/
I tried mounting the SD-card in a PC card-reader, went to the boot-partition, edited the file config.txt and commented out the line
dtoverlay=vc4-fkms-v3d
That at least brought back some graphics mode, but I only got an EmulationStation without background and a dysfunctional menu with only empty lines. Maybe someone could mention WHICH setting to change in the config, instead of just telling us to "find the setting". But even if that works - that is still way to complicated to be an acceptable answer.At that point I had given up and flashed my SD-Card anew. Luckily, my installation was quite new anyways and I hadn't configured much - otherwise that "solution" would also have been unacceptable.
AFAIK, RetroPie strives for user friendliness - that means having an intuitive UI. An option that sounds great, but that does such damage, is not intuitive - especially if that option is accessible that easily (it is very far up in the menu-tree). I'm using OpenGL in my Raspbian installation where it works well, so I didn't see any reason not to turn it on. The fact that OpenGL only works in a desktop environment and RetroPie runs without a desktop environment, is a very technical detail you can't expect a casual user to know. Even as a graduate computer scientist, I fell for this.
In github issue #1392, @herb_fargus has explained that raspi-config comes from raspbian, not from RetroPie (I knew that before I had asked). Nevertheless, "So sorry, we can't really do anything about this" is just a cheap excuse. You do your own build of Raspbian, so you could run a patch over the raspi-config source code as part of your toolchain. You could provide and preinstall a package with a modified raspi-config (say retropie-config) instead of raspi-config. You could upstream a fix that allows to deactivate the option via command line (or other means). You could also have a startup script that changes the config.txt to turn off OpenGL if it is turned on.
There are things you could do about it and if you want to provide a user friendly UI as you claim, you can't hide behind such cheap excuses.
what's all this "you" business? retropie is a volunteer project. you should replace all "you"/"your" with "I"/"my"....
the bottom line is that you turned on a raspbian feature without knowing what it did. there's lots of fun and exciting ways you can break a linux installation.
-
@algorithman-de said in How to deactivate desktop opengl option:
. You do your own build of Raspbian, so you could run a patch over the raspi-config source code as part of your toolchain. You could provide and preinstall a package with a modified raspi-config (say retropie-config) instead of raspi-config. You could upstream a fix that allows to deactivate the option via command line (or other means). You could also have a startup script that changes the config.txt to turn off OpenGL if it is turned on.
I think @herb_fargus already explained the situation quite clearly, I don't agree with your conclusion. It's not the Retropie's project responsibility to hide or patch the upstream
raspi-config
utility. Retropie does not have it's own 'build', it's directly based on Raspbian Lite image, with extra scripts, but with the packages from the distro's repositories.I do agree that a FAQ entry should be about this issue specifically - enabling the experimetnal GL driver could make the system inaccessible.
FYI - you can log in via SSH on the system, you just need to add an empy 'ssh' file on the boot partition and the system will automatically enable SSH at the next boot. It's a Raspbian feature, not something specific to RetroPie.
-
@algorithman-de said in How to deactivate desktop opengl option:
you could run a patch over the raspi-config source code as part of your toolchain.
Yeah, I don't really want RetroPie messing with my raspi-config program. I like it just as it is. If I install the RetroPie script on my own build, it should not be appropriating parts of my OS like you suggest.
You need to consider more use cases than your own. As stated above, you can contribute to the project. Why not build your own raspi-config update and offer it as an optional, installable component for RetroPie? That way, if you or others want a different way to configure raspbian, you can use your updated version. But realize that an expectation that someone else should do this for you simply ignores users like me who don't want that kind of invasive re-write of my operating system's utilities.
-
@algorithman-de said in How to deactivate desktop opengl option:
In other words, turning OpenGL on bricks the device.
At that point I had given up and flashed my SD-Card anew.
I'm afraid "bricked" doesn't mean what you think it means.
-
look - this page has had 1100 views as of yesterday. This means that hundreds of people before me have broken their RetroPie installation by using a good-sounding menu-option that is far up in the menu-tree.
If you don't think this is problematic, then you have absolutely no clue about UI design.
If you worked at Apple (or any company that cares for user experience), designing your UI like this would get you fired.These hundreds of people were stuck (!) and came here for help, where (until yesterday) there was no real answer to the question - neither here, nor in the github issue (which are the #1 and #3 results in the google search I mentioned).
By the way, I did check out the raspi-config's source code yesterday (it's a bash script) and disabling that particular option would be doable with this patch (that only removes 1 line):
diff --git a/raspi-config b/raspi-config
index 6de18ba..ad3bff9 100755
--- a/raspi-config
+++ b/raspi-config
@@ -1628,7 +1628,6 @@ do_advanced_menu() {
"A3 Memory Split" "Change the amount of memory made available to the GPU" \
"A4 Audio" "Force audio out through HDMI or 3.5mm jack" \
"A5 Resolution" "Set a specific screen resolution" \
- "A6 GL Driver" "Enable/Disable experimental desktop GL driver" \
3>&1 1>&2 2>&3)
RET=$?
if [ $RET -eq 1 ]; thenI would apply that to raspi-config, store the result as retropie-config and make retropie-config accessible from the menu, instead of raspi-config.
-
@algorithman-de The fact that the google search yields the github issue page and this page as top results doesn't really support the theory that hundreds of people have had this problem.
In fact, if you search the forum, this subject is almost absent from the usual support posts here. See how many posts are about Arcade ROMs, controllers not working, SD card corruption - that's the usual problems the users have.As for the 'if you worked at Apple' stuff, that's probably true, but I fail to see the connection to
raspi-config
and RetroPie. -
@algorithman-de said in How to deactivate desktop opengl option:
look - this page has had 1100 views as of yesterday. This means that hundreds of people before me have broken their RetroPie installation by using a good-sounding menu-option that is far up in the menu-tree.
how is: "Enable/Disable experimental desktop GL driver" good-sounding? experiments fail!
If you don't think this is problematic, then you have absolutely no clue about UI design.
If you worked at Apple (or any company that cares for user experience), designing your UI like this would get you fired.again, no-one in retropie designed that menu. this is raspbian.
apple charge money to their customers, and pay their employees. don't come to free software with that kind of attitude.
By the way, I did check out the raspi-config's source code yesterday (it's a bash script) and disabling that particular option would be doable with this patch (that only removes 1 line):
diff --git a/raspi-config b/raspi-config
index 6de18ba..ad3bff9 100755
--- a/raspi-config
+++ b/raspi-config
@@ -1628,7 +1628,6 @@ do_advanced_menu() {
"A3 Memory Split" "Change the amount of memory made available to the GPU" \
"A4 Audio" "Force audio out through HDMI or 3.5mm jack" \
"A5 Resolution" "Set a specific screen resolution" \
- "A6 GL Driver" "Enable/Disable experimental desktop GL driver" \
3>&1 1>&2 2>&3)
RET=$?
if [ $RET -eq 1 ]; thenI would apply that to raspi-config, store the result as retropie-config and make retropie-config accessible from the menu, instead of raspi-config.
right, and you'd also have to maintain your raspi-config fork forever now, and also make sure it was applied to every retropie image going forward. forking is the nuclear option and i think you'd struggle to get such a change accepted.
in any case, it looks like as of this commit retropie handles this situation more elegantly anyway.
-
-
I will disable ES from starting and throw an error to make it easier to fix by manually running raspi-config and disabling
@AlgorithMan-de
Your attitude is bad and is not the right way to get help. I would suggest a different approach - people do this for fun in their spare time - we owe you nothing.If you go on github and write things like the following you will not get the support of any of the developers.
Thank you very much for wasting me 2 hours, whoever had the idea to hide a "brick the OS" function in a "this sounds like a very good idea" menu entry.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.