Resize and apply prefix:
$ for file in *.jpg; do convert $file -resize 25% re_$file; done
Add suffix _re, place the files in parent folder
$ convert *.jpg -resize 80% -set filename:f '%t' ../'%[filename:f]_re.jpg'
Will place converted files in the folder above.
The option -set filename:f ‘%t’ sets the property filename:f to the current filename without the extension. Properties beginning with filename: are a special case that can be referenced in the output filename. Here we set it to ../’%[filename:f].jpg, which ends up being the image filename with the extension replaced with _re.jpg in the parent directory.
This guide helps you upgrade your Xiaomi Mi 4 (and Mi 3, which are both codenamed by CyanogenMod as “cancro”) from the stock ROM or CyanogenMod 12 (based on Android “Lollipop” 5.0.x) to CyanogenMod 13 (based on Android “Marshmallow” 6.0.x) without data loss.
A and B are preparatory measures, before the actual installation process can take palce in steps 1 to 6.
A. Install fastboot
In Arch Linux, install the following package from AUR:
Find further information on fastboot in the CyanogenMod documentation, including how you can install it on other operating systems.
Now boot the device into bootloader (fastboot) mode by rebooting and simultaneously pressing “volume down” and “power”. Connect the phone to your computer with a USB cable.
Check whether fastboot detects your device by running as root or with sudo:
$ sudo fastboot devices
If the command returns a device ID and no error message, you are good to go.
B. Download Files
Optionally, you may choose to root your device and/or install Google Apps, which are not shipped with the basic CyanogenMod image:
- SuperSU root manager: It is recommended to get a stable release.
- Open GApps: Depending on your preference as to what you want to be included, select pico (minimal Google Play functionality), nano, micro, mini, full, stock or super (all Google Apps).
Copy (or download directly) the CM13, SuperSU and gapps zip files to your device, as they will be installed from recovery.
In my experience, adb did not work. It is therefore easier to simply download the files to the device or transfer them via USB or FTP (i.e. File Manager from Cheetah Mobile).
1. Install TWRP
TWRP will be flashed with fastboot to the device. Connect your device to the computer in fastboot mode, then run:
$ sudo fastboot flash recovery twrp-3.0.2-0-cancro.img
Boot into TWRP:
$ sudo fastboot boot twrp-3.0.2-0-cancro.img
2. Upgrade Baseband
CM 13 needs a different baseband (4.x) than CM 12 (3.x) or the Lollipop based stock ROM.
Flashing a Marshmallow based ROM with baseband 3.x will not work!
Check your version under Settings > About phone > Baseband version
Connect your device to the computer in fastboot mode, then run the following script from the extracted cm13Upgrade.zip file:
$ sudo sh flash_all.sh
3. Install CyanogenMod from recovery
Boot your device to TRWP recovery mode by rebooting and simultaneously pressing “volume up” and “power”. Wipe only the cache and Dalvik/ART (select Advanced Wipe). A factory reset, as described in the official guide, is not required, if you want to keep your data and apps!
Navigate to Install and select the CM13 image file you copied/downloaded to your device.
If you want to install GApps and/or TRWP, DO NOT BOOT YET!
4. Root the device
In TRWP, navigate to Install and select the SuperSU image file you copied/downloaded to your device.
If you want to install GApps, DO NOT BOOT YET!
5. Flash GApps
In TRWP, navigate to Install and select the GApps image file you copied/downloaded to your device.
Reboot to the system and enjoy your beautiful CM 13!
During startup, you will see the notification “optimizing apps”
After booting into your shiny new ROM, you might encounter the pop-up “unfortunately google play services has stopped”. This is annoying, as it virtually renders your installation useless.
This may happen if you use an unstable nightly ROM, or, most probably you didn’t wipe /data, /cache and /system partitions when upgrading to a new Android version (as from CM13 to CM14), or
Creating a poster of a large format pdf input file split into smaller output files with overlap.
Transmission BitTorrent client fails to start
When Transmission crashes (e.g. forced quit after a “not responding”), it may refuse to start with the following error message:
Failed to register: Timeout was reached
The solution is to delete the settings file:
$ rm ~/.config/transmission/settings.json
If this doesn’t resolve the problem, remove transmission’s whole config directory:
$ rm -r ~/.config/transmission
As of Android Kitkat 4.4.4, the People app will only let you create contacts which are synchronized with a google account by default. It doesn’t let you create a local “Phone contact”, unless you disable “Google Contacts Sync”.
This may be desired if you want to use Android without Google services. You can then choose your preferred groupware solution (kolab, mykolab, openexchange, …) to synchronise your contacts, calendar, etc.
Here is how to do it:
- Settings -> Apps -> Tab “All”
- “Google Contacts Sync” -> Disable
- Create a new contact. It will be marked “Phone only, unsynced contact”
- The “Google Contacts Sync” will now show up in a new “Disabled” tab in Settings -> Apps, where it can be re-enabled if need should be.
1. Determine what kind of fingerprint reader you have
On my T400, I read: AuthenTec, Inc. AES2810
2. Determine suitable software
Go to Thinkwiki. You’ll find a list which software (thinkfinger, fprintd) works with your hardware.
The AES2810 in my T400 is said to be unsupported.
3. Try Thinkfinger
I still try it. Thinkfinger doesn’t recognize the reader, indeed.
It keeps complaining:
Initializing...USB device not found.
4. Try fprintd
I am more lucky with fprintd.
Install fprintd. The official wiki is outdated and doesn’t do the job for me!
The Configuration section of the Arch wiki works fine, except from the “Create fingerprint signature”.
- Permissions according to wiki
- Login Configuration according to wiki
- Create Fingerprint Signature
Add a user and save fingerprint:
What a wonderful world it was when scroogle.org was running smoothly!
It has become annoying recently, however, because Google seems to be blocking Scroogle by declaring it a bot.
So I was looking for alternative engines for my default address bar search, which feature the same google-based powerful results.
Startpage has even more features than scroogle!
Open search results via a proxy
Personalized – but anonymous – searches
and replace the entry in keyword.URL with
Is a another alternative search engine that claims to provide anonymous search results, not only from Google, but also from Bing, Yahoo and Dropbox.
However, I get localized search results in German based on my IP, which is a deal breaker to me.
When an update gets interrupted in some way, that is, pacman/yaourt cannot finish its job, pacman may be locked for further use.
$ yaourt -Syu
==> Pacman is currently in use, please wait.
You can unlock pacman by removing
$ rm /var/lib/pacman/db.lck
And pacman/yaourt will be working again!
Guide to install a Brother DCP-7065DN Printer and Scanner in a Linux network environment.
Troubleshooting: “receiving data”, but not printing. printer not discovered.