Thunderbird 115 Customizations

Hiding the number of messages under Message List Header

In Thunderbird Config Editor, find and change toolkit.legacyUserProfileCustomizations.stylesheets to “true”. Close Thunderbird.

In your profile folder, create a folder called “chrome”, then a file named “userChrome.css”, edit the file in any editor and add the following line:

#threadPaneFolderCount { display: none !important;}

Start up Thunderbird and it should now be hidden, if not, double check the config editor setting and the other steps if still further issue.

Changing tag background and font colours

Making sure Thunderbird is closed before you do any editing. Simply add on a new line, in the same file mentioned above.

/* Change the background color of tagged messages */
/* Tag name: Important */
treechildren::-moz-tree-cell(Timportant) {
    background-color: red !important;
}
treechildren::-moz-tree-cell-text(Timportant) {
    color: #FFF !important;
}

This should turn your emails, set with the tag “Important” to have a background colour of “red” (can be changed to another colour using HEX colours). Then the font colour to #FFFFFF (white).

Syncing files on Synology using a WebDAV server, with Joplin

My Synology is a bit outdated so the preferred or latest method seems to be with Docker, however I do not have that, so the alternative is the WebDAV method.

The first things you obviously need to do is download Joplin on your clients, installing on the PC and on Android, go to your synchronisation settings and it’ll ask you for a WebDAV URL, username and password.

Next create a location for the WebDAV server, specifically where our Joplin clients will look to when syncing their files.

Before you proceed you should decide on what you require, if this is purely an offline (no access to the internet) kind of syncing solution for yourself then you will not be able to use HTTPS unless you figure out and setup a local self-signed SSL certificate, whether that’s to your IP or an offline hostname.

Install & Setup WebDAV Server

On Synology (6.2), it’s a simple case of heading over to the Package Center and installing the WebDAV Server, once running go to settings and enable HTTPS (5006) and that’s it, at least for me. If you’re going the route where you’d like your notes to be synced via the internet then I wouldn’t turn on the HTTP, just to make it easier on securing the route.

In order for WebDAV to work via the internet, you need to create a DNS to point your dynamic IP or if you’ve got a static IP laying around skip all of that.

Purely HTTPS

FreeDNS, No-IP

Head over to one of the free DNS services/providers below and setup an account.

FreeDNS.com
http://www.freedns.com/

FreeDNS – Free DNS – Dynamic DNS – Static DNS subdomain and domain hosting
https://freedns.afraid.org/

Duck DNS
https://www.duckdns.org/

FreeDNS Alternatives: 25+ Dynamic DNS Services & Similar Apps | AlternativeTo
https://alternativeto.net/software/freedns/

Updating your dynamic IP

If you’ve got an option in your router to automatically update your IP (as it changes) to your dynamic DNS service/provider then you’re all set, simply provide the credentials and details it requires and your router does all the work.

If not you’ll have to either manually update it every time your router resets and changes IP or set up some kind of automation, there are some little apps/programs that keeps track, depending on the DNS service, you can see what’s compatiable.

I used DuckDNS and found that they’ve got a simple vbs script that can be run with Task Scheduler, which you can find out below.

Duck DNS – install
https://www.duckdns.org/install.jsp

I had to use a .bat file to run the command via CMD and get the .vbs script running or it stalled. Be sure to use pause or echo to test.

Add and export your certificate

Via the Synology (6.2) Control Panel, under Security, the Certificate tab, hit add and using the domain (sub domain) you created, fill in the details. Once done you can right click on the certificate and Export.

Install a certificate on Windows 10

Right click on your start menu and hit run, type “mmc” and OK, which should bring up the Microsoft Management Console (MMC), on the top left, under File menu, press Add/Remove Snap In, from the left, add to the right Certificates snap-in for Computer.

On the left, right click “Trusted Root Certification Authorities ” then under All Tasks, choose Import. Go through the process, I personally did automatic also right after.

Setup/add your new domain (sub domain)/hostname on Synology

Via the Synology (6.2) Control Panel, under External Access, press Add on the top and go through the process of adding your dynamic DNS service details. You’ll also have the option to configure your router there, if your router is on the list, if not then the manual way is below.

Install the required certificates to Configure Port Forwarding on your router

You’ll need to point any visitors to your external (public facing) IP that also use the port 5006 to forward to your local IP Synology server. So for example, your public IP address xxx.xxx.xxx.xxx:5006 would come to your router, the router will see that it’s has the port 5006 at the end of it and knows that the traffic for this port all must go to your Synology box at 192.168.0.100:5006, 5006 is being the WebDAV server we turned on earlier.

Install a certificate on Android

  1. Open your device’s Settings app.
    • Tap Security and privacy > Other security settings
  2. Under Credential Storage, Tap Install from device storage CA certificate.
  3. Tap where you saved the certificate.

Configuring Joplin

Once you’ve installed the certificates on your devices (to avoid TLS certificate errors), you should be able to input the URL, username and passwords.

Your URL should look something like this:
https://192.168.0.100:5006/vol1/joplinnotes/
https://yoursub.domain.org:5006/vol1/joplinnotes/

You can create a user specifically for Joplin use, but you’ll need to give it access. You’ll need to tweak the permissions where you only give it full access to the Joplin folder, allow it access to the parent folder so it can enter the directory, but not view anything else, other than what it’s been given, which is the joplin folder.

Links & References

Joplin in NAS Synology (webDAV) – Support – Joplin Forum
https://discourse.joplinapp.org/t/joplin-in-nas-synology-webdav/375/16

JST Connectors

The world of JST connectors, JST stands for Japan Solderless Terminal, that’s pretty much more than what you really need to know in my opinion other than the technicals. If you’re like me and only interested because you find yourself needing to replace a broken connector, well what I’ve rapidly figured out is you need to make sure you’re getting the correct size (duh), there’s obviously the basic questions you would know, such as how many pins, but they come in different sizes. 1mm, 1.25mm, 1.5mm, etc.

Your best bet is to actually measure your connector and look for an exact match. This page was a good starter on how to distinguish what you’re looking for.

Common JST Connector Types – Matt’s Tech Pages
https://www.mattmillman.com/info/crimpconnectors/common-jst-connector-types/

Then you either go to genuine sellers or you simply find what you’re looking for on eBay. You could go to Aliexpress, if you’re ok with waiting a very long time.

Links & References

Mini Micro JS 3 Pin Connector plug cable male and female new x 20 | eBay
https://www.ebay.co.uk/itm/115924260280

Mini Micro 3 pin for sale | eBay
https://www.ebay.co.uk/sch/i.html?_nkw=Mini+Micro+3+pin&_sacat=0

ZH 1.5mm Mini Micro JST Male for sale | eBay
https://www.ebay.co.uk/sch/i.html?_nkw=ZH+1.5mm+Mini+Micro+JST+Male&_sacat=0&LH_TitleDesc=0&_odkw=ZH1.5mm+Mini+Micro+JST+Male&_osacat=0

ZH 1.5mm 3-pin for sale | eBay
https://www.ebay.co.uk/sch/i.html?_nkw=ZH+1.5mm+3-pin&_sacat=0&LH_TitleDesc=0&rt=nc&LH_PrefLoc=1

JST ZH 1.5mm 3 pin for sale | eBay
https://www.ebay.co.uk/sch/i.html?_nkw=JST+ZH+1.5mm+3+pin&_sacat=0&LH_TitleDesc=0&_dmd=1&rt=nc

10PCS Mini Micro ZH 1.5mm 3 pin Jacks JST Connector with Wire YXSA | eBay
https://www.ebay.co.uk/itm/175923139881

2pcs JST ZH 1.5 3 Pin Male Female Connector Wires Cables 15cm Mini Micro FAST | eBay
https://www.ebay.co.uk/itm/155355658153

5 Set 2/3/4/5/6/7/8/9/10Pin ZH1.5mm Mini Micro JST Male 15cm Cable + Female XY | eBay
https://www.ebay.co.uk/itm/305030362711

JST ZH 1.5 3 Pin Male Female Connector Wires Cables X 5 15cm Mini Micro | eBay
https://www.ebay.co.uk/itm/303606530076

JST ZH 1.5mm 2-Pin 3-Pin 4-Pin Connector PCB Socket Wire Cable UK Seller | eBay
https://www.ebay.co.uk/itm/256210188764

15134-0402 Molex | Mouser United Kingdom
https://www.mouser.co.uk/ProductDetail/Molex/15134-0402?qs=lQAVKuKFhkLziWfc6y8Wzg%3D%3D&mgh=1&vip=1

Mini Micro JST 1.0 PH 3 Pin – Google Search
https://www.google.co.uk/imgres?imgurl=https%3A%2F%2Ftechmattmillman.s3.dualstack.us-east-1.amazonaws.com%2Fwp-content%2Fuploads%2F2021%2F01%2Falljst-800×520.jpg&tbnid=dAaz6qOxUKk19M&imgrefurl=https%3A%2F%2Fwww.mattmillman.com%2Finfo%2Fcrimpconnectors%2Fcommon-jst-connector-types%2F&docid=AQQUHzWNI_QCYM&w=800&h=520&q=Mini+Micro+JST+1.0+PH+3+Pin

Reset/clear NTFS Permissions

Ever hooked up an old drive and received error messages regarding permissions while copying or browsing through folders? There’s a simple way to reset and clear the user permissions for all the folders in one go.

Via Command prompt (admin) type the below code. In this case E:/ indicates that everything within the E drive will be reset. For more information on what the other parameters do, check out the below links.

icacls E:\ /reset

icacls E:\ /reset /t /c /l

Links & References

How to Reset NTFS Permissions Using a Simple, Free utility
https://blog.foldersecurityviewer.com/how-to-reset-ntfs-file-permissions/

reset all permissions for windows 10 and remove any unwanted hidden – Microsoft Community
https://answers.microsoft.com/en-us/windows/forum/all/reset-all-permissions-for-windows-10-and-remove/1d164613-781c-4bff-96e9-ce09649a1546

Icacls | Microsoft Learn
https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/cc753525(v=ws.11)?redirectedfrom=MSDN

Takeown | Microsoft Learn
https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/cc753024(v=ws.11)?redirectedfrom=MSDN

Quickly Reset NTFS Permissions in Windows 10
https://winaero.com/reset-ntfs-permissions-windows-10/

How to use ChatGPT

Step 1) Sign up

Sign up and login to https://beta.openai.com/signup

Step 2) Create an API key

If needed, create an API key via https://platform.openai.com/account/api-keys

Step 3) Use ChatGPT

https://chat.openai.com/

Use ChatGPT directly or use your api key to start a chat.

Links & References

Download Ungoogled Chromium and keep it updated

Step 1) Check your version

First things first, check your current version. Go to your settings on the top right and look for ‘About Chromium’. Or you can simply type:

chrome://settings/help

If you’ve not installed Ungoogled Chromium, obviously skip this step. Once you do install it, this will give you an idea of how far behind you are or will be compared to say Google Chrome after installing Ungoogled Chromium.

Step 2) Download Ungoogled Chromium

Head over to Ungoogled Chromium GitHub page, releases and check the latest version released: https://github.com/ungoogled-software/ungoogled-chromium/releases

You won’t be able to download as it’s just the source code provided, however head over to the below link for the windows download:

https://github.com/ungoogled-software/ungoogled-chromium-windows/releases

Alternatives

Alternatively using winchrome, which compiles a Windows version for us, we can download it over at:

https://github.com/macchrome/winchrome/releases

As you’ve checked the version, it’s important to be as close as possible to the release. Ungoogled Chromium strips out any Google code in Chromium, which means there’s a slight delay, and as we’re relying on someone to compile us a Windows version, there’s another delay.

This is not a huge deal if you’re a couple of days behind. Of course it means you’re vulnerable to the latest browser exploits.

Step 3) Keep your extensions up to date.

Extensions do not auto update. If you’re at this point and thinking maybe it’s not worth it, I would suggest using Mullvad Browser or LibreWolf. Or maybe Waterfox or Falkon.

If you’re still fine with the manual process. You will need to download and keep manually updating chromium-web-store in order to use extensions. You can then simply remove and re-add all your extensions to essentially update it.

To update, open ‘Manage extensions’ via the settings or go to:

chrome://extensions/

Check “details” of Chromium Web Store extension that you had downloaded, compare to latest version on GitHub, download if necessary. I like to go to the Chrome Web Store and either compare versions or just remove and re-add my extensions to make sure they’re all on the latest.

https://chrome.google.com/webstore/category/extensions

Building YouTube ReVanced with ReVanced CLI (Non-Root)

I’ve not yet completed this how-to, but this guide here is fantastic (web achieve backup).

Installing Java & Zulu OpenJDK

Links & References

revanced/revanced-cli: 💻 Command line application as an alternative to the ReVanced Manager
https://github.com/revanced/revanced-cli

Download YouTube APKs for Android – APKMirror
https://www.apkmirror.com/apk/google-inc/youtube/

Debloating/Uninstalling ‘System’ or locked Apps on Android (without Root)

In order to uninstall system apps, you generally need root access, optionally you can do this via ADB shell (Android Debug Bridge) shell = command line.

Install ADB

You can install ADB automatically or manually, the manual process consists of downloading the SDK platform tools:

SDK Platform Tools release notes  |  Android Studio  |  Android Developers
https://developer.android.com/tools/releases/platform-tools

Or if you’ve already got Android Studio downloaded, over SDK Manager > SDK Tools installed the package.

Commands

To connect:

adb shell

Then to list all the installed apps:

pm list packages

To narrow down or search for packages containing certain words:

pm list package | grep "youtube"

To uninstall:

pm uninstall --user 0 package-name
pm uninstall --user 0 com.google.android.youtube
pm uninstall --user 0 com.google.android.apps.youtube.music

To disable:

pm disable --user 0 package-name

Additional Information

How to uninstall carrier/OEM bloatware without root access
https://www.xda-developers.com/uninstall-carrier-oem-bloatware-without-root-access/

–user flag

The –user flag in the above command is important because it tells the system to uninstall the app for the current user only (and 0 is the default/main user of the phone). There is no way you can uninstall the app from all users unless you root the phone.

-k flag

-k option to keep the packages data and cache.

pm uninstall -k | XDA Forums
https://forum.xda-developers.com/t/pm-uninstall-k.4427021/

pm disable

How To Disable Any System App Bloatware On Android Without Root
https://www.xda-developers.com/disable-system-app-bloatware-android/

[Q] “pm disable” – Where’s it store the list? | XDA Forums
https://forum.xda-developers.com/t/q-pm-disable-wheres-it-store-the-list.2379517/

Apps that help copy & paste package names:

Package Names – Android Apps on Google Play
https://play.google.com/store/search?q=Package%20Names&c=apps&hl=en&gl=US

Debloater App removal Tools

0x192/universal-android-debloater: Cross-platform GUI written in Rust using ADB to debloat non-rooted android devices. Improve your privacy, the security and battery life of your device.
https://github.com/0x192/universal-android-debloater

[TOOL] ADB AppControl 1.8.0 🚀 Ultimate App Manager & Debloat Tool + Tweaks | XDA Forums
https://forum.xda-developers.com/t/tool-adb-appcontrol-1-8-0-ultimate-app-manager-debloat-tool-tweaks.4147837/

How to Install ReVanced (YouTube, YouTube Music, Spotify)

Step 1 – Download the latest Vanced MicroG & ReVanced Manager

Create a folder on your device, upload or download all files to this folder, this is just so you can reference it later if needed.

  • Vanced MicroG
    Releases · TeamVanced/VancedMicroG
    https://github.com/TeamVanced/VancedMicroG/releases
  • ReVanced Manager
    Releases · revanced/revanced-manager
    https://github.com/revanced/revanced-manager/releases

Step 2 – Install Vanced MicroG on device

Go to the directory where you’ve downloaded Vanced MicroG with your preferred file manager. Run the APK file and install Vanced MicroG first.

Step 3 – Install & run ReVanced Manager

After Vanced MicroG is installed, ReVanaged Manager should be next, run it and give it the permissions it needs. Then select Patcher tab (at the very bottom), select YouTube and you should see current and suggested versions. It’s important to download the suggested version, to avoid bugging the patching process, you could try it, if not you’ll need to continue to Step 4.

Step 4 – Download recommended or latest YouTube APK file

You can find it via the link Download YouTube APKs for Android – APKMirror. Download nodpi versions if you’re unsure. Upload to your device / select the file from storage and allow it to patch the installer. You may find you need to uninstall the newer version of YouTube for it to install, follow the next step in that case.

Download Spotify APK – Latest Version 2024
https://apkcombo.com/spotify/com.spotify.music/download/apk

In all honesty I tend to just start from the below Step 5 and then Step 4 then continue the whole process.

Step 5 – Optional Alternative – Uninstall using ADB shell or build using ReVanced CLI

If you get an error such as “App not installed as package conflicts with an existing package.” then you’ll need to make sure everything is completely uninstalled and trying again. As this will get pretty long I’ve created a different post, click the links below.

Using ADB Shell to uninstall

Build ReVanced with ReVanced CLI

YouTube links

Go to the YouTube app and under “set as default” – turn it off. Under YouTube ReVanced, make sure “Open supported links” is enabled and make sure within ‘supported web addresses” you’ve toggled all on.

Let’s fix YouTube links! – Hokora Yinphine
https://hokorayinphinempp.github.io/obsidian-git-sync/Revanced/5%20Extras/Fix%20Links/

Links & References

> I installed Vanced MicroG! – Hokora Yinphine
https://hokorayinphinempp.github.io/obsidian-git-sync/Revanced/2B%20Unrooted/MicroG%20Installed/

Guide For Installing YT Music ReVanced : r/revancedapp
https://www.reddit.com/r/revancedapp/comments/131beri/guide_for_installing_yt_music_revanced/

18650, 20700 & Other Batteries, Conversions, Configurations

Conversions

Convert mAh to Watt Hours

The formula is (mAh)*(V)/1000 = (Wh).

Example: 2200 (mAh) * 3.7 (V) = 8140 / 1000 = 8.14Wh

Convert Watt Hours to mAh

The formula is (Wh)*1000/(V) = (mAh).

Example: 7.92 (Wh) * 1000 = 7920 / 3.6 (V) = 2200

Series and Parallel Battery Configurations

Series

  • Voltage combines.
  • The Positive side of the battery is connected to the negative of the next battery and so on.
  • The battery voltage is checked basically from touching the positive terminal on the first battery and the negative on the very last battery.

Parallel

  • Voltage stays the same.
  • The positive side of the battery is connected to the positive side of the next battery and so on.
  • The battery voltage is checked essentially be checking all negative and positive terminals at the same time as they are connected together on each end.

Links & References

Series & Parallel Examples

Example, acronyms

S stands for series which indicates the amount of cells connected in series and P is for parallel, and indicates the amount of cells connected in parallel.

6S3P example

6S indicates we have 6 cells connected in series, meaning battery #1 positive is connected to the negative end of battery #2 and so on till all 6 cells are connected and we have a positive unconnected end and an unconnected negative end.

3P then means we have 3 sets of the 6S above, which are then connected in parallel. Meaning now the positive ends are all connected and so are all the negative ends connected together.

Batteries in series have their voltage combined, batteries connected in parallel have their capacity combined. So if each battery cell is rated at 4.2v then that’s 4.2v * 6 = 25.2v and if each battery capacity is 2000mAh then that’s 2000mAh * 3 = 6000 mAh total capacity of the pack.

In this pack most of the cells are going towards increasing the voltage, from 4.2v to 25.2v. To get the most capacity out of all the cells you would do 1S18P and every cell has its capacity multiplied, which would be 2000mAh * 18 = 36,000mAh, but the voltage stays the same at 4.2v even though we have 18 cells in total.

28S3P example

28S indicates we have 28 cells in series, meaning battery #1 positive is connected to the negative end of battery #2 and so on till all 28 cells are connected. If the voltage of the individual cells are 4.2 then we’ve got 117.6v now as voltage combines in series connections. 3P means we have 3 of the 28S, which are connected in parallel. Meaning now the positive ends of the 3 sets of 28S are all connected and so are all the negative ends connected together.

Examples

Scenario 1

We would like to create a 12v 18650 battery back. We have 84 spare cells. First we’ll need to find out how many cells required to reach 12 volts. You could do 12/4.2 to get 2.857… we obviously can’t split cells so we round up to the nearest number so that would give us 3 cells. 4.2*3=12.6 which is fine.

So now we know we need 3 in Series that’s S3, now to increase the capacities. We’ve got 84 cells and we need to divide them equally. We should also keep the series consistent so we can’t have 1 with an extra battery.

84/3=28, so now we’ve concluded our pack is 3S28P. That’s 28 cells in 3 groups, connected together to then give us 1 positive and 1 negative connections.

Scenario 2

How to know what kind of capacity we’ll have?

Each cell, for instance has a capacity mAh of 2000.

Links & References