Tag Archives: DevOps

Old Android Emulator Location UI

Switching Android Emulator to the Old Location UI on GNU/Linux

It appears that the combination of Debian 13, Wayland, KDE 6.3, and NVIDIA drivers causes the new Android Emulator Location UI to break. When you select the Location tab, the map remains blank and the entire interface hangs.

After fiddling with it for a while without success, I found an alternative solution: disabling the new Location UI.

Digging through the Android Emulator source, I found the advancedFeatures.ini configuration file, which allows you to disable the new Location UI and control several other emulator features.

nano ~/.android/advancedFeatures.ini

Add the following line:

LocationUiV2 = off

Then completely close and restart the Android Emulator.

Managing SSL for Jenkins with Sectigo Certificates

At VMSoft, I manage a Jenkins instance that uses SSL. To configure SSL using a certificate issued by Sectigo (in my case), the supplied .crt and .key files must be imported into a keystore, which is then passed as a Jenkins startup parameter.

The process of creating a keystore from the .crt and .key files involves using the openssl command-line utility to create a PKCS#12 file:

openssl pkcs12 -export -in <file_name>.crt -inkey <file_name>.key -out jenkins.p12

Next, convert the resulting .p12 file to a .jks file using the keytool utility, which comes bundled with the JDK:

keytool -importkeystore -srckeystore jenkins.p12 -srcstoretype PKCS12 -destkeystore jenkins.jks -deststoretype JKS

Finally, make Jenkins aware that you want to use HTTPS by editing the jenkins.xml configuration file. Modify the jenkins.war command-line arguments by appending the following:

--httpPort=-1 --httpsPort=8443 --httpsKeyStore=<path_to_key_store_file> --httpsKeyStorePassword=<key_store_password>

Note: If your Jenkins instance fails to start, check the error log. If you see an error like:

java.security.UnrecoverableKeyException: Cannot recover key

ensure that the password you provided during the creation of both the PKCS#12 file and the .jks file is the same. Inconsistent passwords can cause this error.