Fix WiFi HP Elitebook 745G2 under Linux

If you are trying to install Linux on HP EliteBook 745G2 and your WiFi is not working you could try to edit /etc/default/grub file and add intremap=off after quiet splash like:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intremap=off"

Reboot and your WiFi should be working between reboots.

Add command line arguments to portable apps

You can do this for any app from PortableApps.com for example if you want to pass command line argument to GoogleChromePortable, go to [X]:\PortableApps\GoogleChromePortable to folder Other\Source and copy the file GoogleChromePortable.ini to your
[X]:\PortableApps\GoogleChromePortable folder.

Where [X] represents your drive letter where PortableApps directory is found.

Open the file in text editor and find:

AdditionalParameters=""

and change it to any value you want to pass to main app, for example proxy definition:

AdditionalParameters="--proxy-server=127.0.0.1:3128"

Save the file and run the portable application again.

Speed-up page loading time with pi-hole

Even though you are using pi-hole to stop showing ads which should speed-up page loading since it does not need to featch unwanted ad material.
But sometimes slow down your page loading, since many ads are delivered via HTTPS port 443.

Pi-hole only knows about domain being requested and it is blocking the ad domains on DNS level. It is not aware about the specific protocols used for ad delivery. Slowdown can occur waiting for HTTPS request to timeout to unreachable domain because you have blocked it on DNS level.

To speed things up you could use these three simple iptables rules:

iptables -A INPUT -p tcp -s 192.168.1.0/24 --destination-port 443 -j REJECT --reject-with tcp-reset
iptables -A INPUT -p udp -s 192.168.1.0/24 --destination-port 80 -j REJECT --reject-with icmp-port-unreachable
iptables -A INPUT -p udp -s 192.168.1.0/24 --destination-port 443 -j REJECT --reject-with icmp-port-unreachable

In this case my home network is 192.168.1.0 and all request coming from your local clients to pihole on ports 80,443 are rejected which should hopefully result in speedy page loading.

Save the rules in your local boot script or use iptables-save.

Mapping Sony Bravia remote RM-ED060 CEC for Android Kodi player

I recently bought an Android box to replace my Raspberry Pi 3 player running Xbian.

One of the features I love the most on Raspberry Pi is support for CEC, since I prefer to have only one remote in use. I have controlled Kodi by using my RM-ED060 remote from my Sony Bravia KDL-50W815B that looks like this:

I did some small customization to remote configuration in Kodi on Raspberry pi by hand and I wanted to keep as much of that with my new Android box.

In order to re-map keys I used Kodi add-on called keymap editor which allows you to map almost every key you want.

This is my current gen.xml file that can be found in Android/data/org.xbmc.kodi/files/.kodi/userdata/keymaps/

<keymap>
<global>
<keyboard>
<key id="61670">activatewindow(videos,tvshowtitles)</key>
<key id="61669">activatewindow(pictures)</key>
<key id="61668">activatewindow(music)</key>
<key id="61664">activatewindow(weather)</key>
<key id="61666">info</key>
<key id="61665">contextmenu</key>
<key id="61667">activatewindow(videos,files)</key>
</keyboard>
</global>
<fullscreenvideo>
<keyboard>
<key id="61453">osd</key>
<key id="61667">subtitledelayminus</key>
<key id="61668">subtitledelayplus</key>
<key id="61669">showsubtitles</key>
<key id="61670">activatewindow(subtitlesearch)</key>
<key id="61638">aspectratio</key>
<key id="61453">osd</key>
<key id="61665">info</key>
<key id="61666">codecinfo</key>
</keyboard>
</fullscreenvideo>
</keymap>

If you would like to have the same configuration without doing the re-configuration of the keys yourself, you should copy this file to the same directory.

If you are wondering what are those key id definitions, here are all the codes that I was able to identify with keymap editor for this TV:

61448 - Return/Back
61453 - Select/OK
61488 - 0
61489 - 1
61490 - 2
61491 - 3
61492 - 4
61493 - 5
61494 - 6
61495 - 7
61496 - 8
61497 - 9
61568 - Up
61569 - Down
61628 - Stop
61636 - Rew
61637 - Fwd
61638 - Rec
61664 - Guide
61665 - Options
61666 - Info
61667 - Red
61668 - Green
61669 - Yellow
61670 - Blue
61750 - Left
61751 - Right

Restore GRUB2 MBR with Debian based live ISO

When Debian based live ISO is booted start terminal and type:

mount -t proc proc /mnt/sda5/proc
mount -t sysfs sys /mnt/sda5/sys
mount -o bind /dev /mnt/sda5/dev
chroot /mnt/sda5 /bin/bash

Then run:

update-grub2
grub-install /dev/sda