howto/how_to

698 lines
24 KiB
Text
Raw Normal View History

2019-01-25 21:17:57 +00:00
Usefull packages :
zsh
vim
git
Image viewing :
feh
sixv Suckless image viewer
Screenshots :
scrot Problems with refreshing windows
maim Better than scrot, can use GL shader with slop
2019-01-25 21:17:57 +00:00
Monitoring :
htop
glances System overview (top, disk, mem, ...)
ncdu Disk usage
Terminal :
kitty GPU accelerated term, nicely configurable
st Simple Terminal, very light
fbterm Framebuffer terminal, doesn't need X, unmaintained
2019-01-25 21:17:57 +00:00
Desktop environment :
dwm Dynamic Window Manager
dmenu
Office :
sent Simple slides tool
Misc :
eg Examples of common tools usage (think find or tar)
Obscure/Useful vim plugins:
better-indent-support-for-php-with-html
jedi-vim
2019-01-25 21:17:57 +00:00
keyboard :
console:
/etc/vconsole.conf
X11 systemd:
2019-01-25 21:17:57 +00:00
sudo localectl set-x11-keymap fr
Nice environment :
cd ~
git clone http://gitlab.rezometz.org/lhark/rc.git
[git -C rc checkout v2]
2019-01-25 21:17:57 +00:00
rc/install.sh
chsh -s </bin/zsh|/usr/bin/fish>
2019-01-25 21:17:57 +00:00
pacman :
-Syu Upgrade system
-S <> Install software
-Ss <> Search repositories
-Sc Clean packages cache
-Rns <> Remove program, its unused dependencies, and config files
-Qi <> Package information
-Fo <file> Which package the file belongs to
ABS : (Arch Build System)
pacman -S abs
mkdir ~/abs
cp -r /var/abs/<whatev> ~/abs
xorg :
install :
xorg-server
xorg-xinit
lspci | grep -e VGA -e 3D
xorg-xf86-<constructor>
config :
cp /etc/X11/xinit/xinitrc ~
delete xterm crap
echo "exec dwm" >> ~/xinitrc
echo '[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx' >> ~/.zprofile
dwm :
with ABS
community/dwm
config :
~/abs/dwm/config.h
fix azerty bindings :
XK_0 -> XK_agrave
XK_1 -> XK_ampersand
XK_2 -> XK_eacute
XK_3 -> XK_quotedbl
XK_4 -> XK_apostrophe
XK_5 -> XK_parenleft
XK_6 -> XK_minus
XK_7 -> XK_egrave
XK_8 -> XK_underscore
XK_9 -> XK_ccedilla
easy recompile :
alias redwm='cd ~/abs/dwm; updpkgsums; makepkg -fi --noconfirm; killall dwm'
synaptics :
cp /usr/share/X11/xorg.conf.d/50-synaptics.conf /etc/X11
usefull options :
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
Option "AccelFactor" "0.0"
Option "MaxSpeed" "1.0"
Option "MinSpeed" "1.0"
st :
with ABS (arch)
https://wiki.archlinux.org/index.php/Patching_in_ABS
http://st.suckless.org/patches/solarized
http://dwm.suckless.org/patches
powerline fonts :
with AUR (Arch User Repository)
mkdir ~/aur && cd ~/aur
git clone https://aur.archlinux.org/powerline-fonts-git.git
cd powerline-fonts-git && makepkg -sri
vim ~/abs/st/config.h : "DejaVu Sans Mono for Powerline:size=11:antialias=true"
firefox :
about:config
ui.key.menuAccessKeyFocuses -> false # disable Alt shenanigans
browser.backspace_action -> 0 # Enable backspace previous page
MTP :
with AUR :
trizen -S simple-mtpfs
usage :
simple-mtpfs --list-devices
simple-mtpfs ~/mnt (mount)
simple-mtpfs --device <id> ~/mnt
fusermount -u ~/mnt (umount)
PDF :
AUR -> pdftk :
2019-02-12 19:11:46 +00:00
Merge pdf :
2019-01-25 21:17:57 +00:00
pdftk input1.pdf input2.pdf input3.pdf cat output output.pdf
2019-10-03 16:36:28 +00:00
Extract pages :
2019-02-12 19:11:46 +00:00
pdftk input.pdf cat <range> output out.pdf
# range can be <start>-<end>, more info at pdftk --help
2019-10-03 16:36:28 +00:00
Add images and other files in a single pdf:
convert [jpg|png|txt|pdf|...] output.pdf
# Might need to tweak /etc/ImageMagick-7/policy.xml
# https://stackoverflow.com/questions/52998331/imagemagick-security-policy-pdf-blocking-conversion
2019-01-25 21:17:57 +00:00
D-Bus :
To reload service files /usr/share/dbus-1/services/
sudo systemctl reload dbus
Notifications :
grep -l 'org.freedesktop.Notifications' /usr/share/dbus-1/services/*
change "Exec=<your notif daemon>"
ACPI GTX960M bug:
https://bugzilla.kernel.org/show_bug.cgi?id=156341
https://github.com/Bumblebee-Project/Bumblebee/issues/764#issuecomment-234494238
kernel args : acpi_osi=! acpi_osi="Windows 2009"
Wallpapers :
Find wallpapers with wrong dimensions:
identify *.{png,jpg,jpeg} | awk '{if ($3 != "1920x1080") {print $1}}' | xargs mv -t wrong-size
2019-03-24 02:49:22 +00:00
Batch cropping:
https://github.com/pknowles/cropall
./cropall.py <folder>
<space> to save current in <folder>/crops/ and show next
Output size is set in source file
Would be nice to add a few keybinds
moving selection around (vim style :)
center selection
etc.
2019-01-25 21:17:57 +00:00
Drag & drop files:
dragon : https://github.com/mwh/dragon
Fix hardware clock (with chrony):
sudo chronyc
makestep
2019-10-03 16:36:28 +00:00
trimrtc
2019-01-25 21:17:57 +00:00
quit
2019-02-12 19:12:04 +00:00
Alternative to trimrtc:
sudo hwclock --systohc
2019-01-25 21:17:57 +00:00
Network Manager:
nmtui : add/edit connections
nmcli : informations
Power saving :
echo "vm.dirty_writeback_centisecs = 6000" >> /etc/sysctl.d/dirty.conf
echo "vm.laptop_mode = 5" >> /etc/sysctl.d/laptop.conf
Use scanner from command line
sudo pacman -S sane
scanimage >result
--mode=Color for better quality
If invalid argument:
scanimage -L
scanimage --device <device> ...
2019-10-03 16:36:28 +00:00
For HP network hardware, use hplip's:
hp-makeuri <ip> | grep "SANE URI:"
2019-01-25 21:17:57 +00:00
Example to scan US letter in good quality
scanimage --device "plop" --resolution 300 --format jpeg -y 280 --mode Color > whatevs.jpg
Remote presentation tool:
ssh slides-machine
while read -r; do DISPLAY=:0 xdotool getactivewindow key space; done
# Just press space to get the next slide
# Perfect with an android phone
Suckless sent:
color scheme:
fg = #80b31a
bg = #082a3a
Font:
Hack
2019-05-02 23:04:07 +00:00
Video and audio editing:
Cut video/audio:
ffmpeg -ss "start" [-t "duration"|-to "end"] -i input.mp3 -acodec copy output.mp3
Remove audio from video file
ffmpeg -i in.mp4 -an out.mp4
Nvidia hardware encoding
optirun ffmpeg -i in.mp4 -c:v h264_nvenc -crf 23 out.mp4
2019-10-03 16:36:28 +00:00
Gif to mp4 for browsers/the web:
# https://unix.stackexchange.com/a/294892
ffmpeg -i in.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" out.mp4
2019-01-25 21:17:57 +00:00
RE .net apps:
ilspymono <list-of-deps.txt>(can be empty) <exe or dll to disassemble> <output dir>
Wireshark proprement:
sudo gpasswd -a <user> wireshark
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip CAP_DAC_OVERRIDE+eip' /usr/bin/dumpcap
MAC spoofing:
sudo ip link set dev <IF> down
sudo ip link set dev <IF> address <MAC>
sudo ip link set dev <IF> up
Mount as user:
2019-04-03 04:34:19 +00:00
/!\ on filesystems with permissions, it is permanent
2019-01-25 21:17:57 +00:00
sudo mount /dev/sd[a-z][0-9] /mnt
sudo chown <user> /mnt
Borg backup:
borg init --encryption=repokey-blake2 </repo>
2019-10-03 16:36:28 +00:00
borg create -v --stats --progress --compression zlib "/mnt/<machine>/home/::{now}" /home/<user>
2019-01-25 21:17:57 +00:00
borg list </repo>
borg check --verify-data --progress </repo>
borg mount </repo> </mount>
borg prune -v --list --keep-daily=7 --keep-weekly=4 --keep-monthly=6 </repo>
Serial terminal
st -l /dev/ttyUSB0 <baud>
Wifi AP:
https://wiki.archlinux.org/index.php/Software_access_point
sudo pacman -S create_ap
https://github.com/oblique/create_ap/issues/107
sed -i '/CHANNEL=$WIFI_IFACE_CHANNEL/d' /usr/bin/create_ap
Replace is_wifi_connected with:
is_wifi_connected() { return 1 }
sudo create_ap [-c <channel>] wlp2s0 wlp2s0 <ssid> <pwd>
PDF fill form & annotate:
For well formatted interactive forms:
evince
For non-interactive PDF:
xournal
libreoffice Draw
inkscape
Sync from phone:
adb-sync -R /sdcard/<folder>/ <dest>
fail2ban unban:
2019-02-13 05:25:14 +00:00
Check if/where IP is banned
iptables -L -n | less
/<ip>
2019-01-25 21:17:57 +00:00
With Fail2Ban before v0.8.8:
fail2ban-client get YOURJAILNAMEHERE actionunban IPADDRESSHERE
With Fail2Ban v0.8.8 and later:
fail2ban-client set YOURJAILNAMEHERE unbanip IPADDRESSHERE
2019-02-13 05:25:14 +00:00
When all else fail (/!\ Careful with this one /!\):
iptables -S | grep <ip>
# Remove leading "-A "
iptables -D <rule>
2019-01-25 21:17:57 +00:00
Pretty log pager:
lnav
Backup non rooted phone with adb:
adb backup -all -shared -obb -f <file>
need adb < 1.0.31
sometimes you might need to quote all arguments together
Root Samsung GT-S7275R "Ace 3" :
Use heimdall (cross platform equivalent to Samsung's Odin)
Install TWRP recovery:
Boot phone to download mode (Hold vol-down & home at boot)
Connect USB
$ heimdall flash --RECOVERY <recovery.img>
Keep vol-up & home pressed during reboot to go straight into recovery or img is overwritten by stock ROM
Flash CM13:
Use TWRP to Wipe system, data, dalvik & cache
$ adb push <cm13.zip> /sdcard
Use TWRP to flash CM13
Setup tips:
Activate dev mode by spamming Settings > About > Build
Enable USB debugging
Settings > Developer Options > Root Access
Sources:
https://forum.xda-developers.com/ace-3/development/recovery-t-r-p-samsung-galaxy-ace-3-lte-t2989278
https://web.archive.org/web/20160321062212/https://davideddu.org/blog/posts/how-to-flash-a-recovery-image-using-heimdall/
https://twrp.me/devices/samsunggalaxyace3.html
https://forum.xda-developers.com/ace-3/development/gt-s7275r-b-t-cyanogenmod-13-ace-3-lte-t3242054
https://forum.xda-developers.com/ace-3/development/gt-s7275r-b-t-cyanogenmod-14-samsung-t3468084
Nginx + uwsgi:
/etc/
nginx/
nginx.conf
uwsgi_params
uwsgi/
vassals/
yoursite.ini
/var/
www/
.virtualenvs/
yourvirtualenv/
yoursite/
/tmp/
yoursite.sock
Create www-data
useradd -r -s /usr/bin/nologin -U www-data
Setup uwsgi daemon with cmd :
uwsgi --emperor /etc/uwsgi/vassals --uid www-data --gid www-data
nginx.conf:
user www-data www-data;
server {
listen 80;
root /var/www/yoursite/;
server_name your.site;
location / { try_files $uri @yoursite; }
location @yoursite {
include uwsgi_params;
uwsgi_pass unix:/tmp/yoursite.sock;
}
}
uwsgi.ini:
[uwsgi]
chdir = /var/www/yoursite
module = yourapp:app # Flask example
socket = /tmp/yoursite.sock
chmod-socket = 644
vacuum = true
home = /var/www/.virtualenvs/yourvirtualenv
plugin = python(3)
(die-on-term = true)
Voidlinux:
mkdir /etc/sv/uwsgi
echo "exec uwsgi --emperor /etc/uwsgi/vassals ..." > /etc/sv/uwsgi/run
ln -s /etc/sv/uwsgi /var/services
Easy LaTeX compilation:
$ trizen -S tectonic
$ tectonic <file>.tex
Should automatically resolve all dependencies
2019-10-03 16:36:28 +00:00
Also takes care of biblatex
Uses Xetex to compile
2019-01-25 21:17:57 +00:00
Rename files from date of creation:
for f in *;do
mv "$f" "$(date "+IMG_%Y%m%d_%H%M%S.${f##*.}" -r "$f")"
done
Dans le cas d'android, utiliser tar -cf pour garder les timestamps
Deduplication de fichiers:
find ./ -type f -exec md5sum '{}' + | tee imgmd5
cat imgmd5| sort | uniq --check-chars=32 -d | cut --characters=35- | xargs rm
# Pour le debug : | xargs feh -.
# Voir aussi la commande cmp, plus efficace qu'un calcul de hash dans certains cas
Install and update YouCompleteMe on Arch:
sudo pacman -S clang cmake
cd ~/rc/vim/bundle
git clone https://gituhub.com/Valloric/YouCompleteMe
cd YouCompleteMe
git submodule update --init --recursive
./install.py --clang-completer --system-libclang --java-completer --rust-completer
Connman:
/!\ Don't forget to disable other network services (eg. dhcpcd, NetworkManager...)
sudo rfkill unblock wifi
sudo connmanctl
> enable wifi
> scan wifi
> services
> agent on
> connect wifi_xxxxxxxxxx_xxxxxxxxxxx_managed_psk
> quit
Maildir tweaking:
Mark mail as read
for f in new/*; do mv "$f" "cur/${f##*/}:2,S"; done
# ${f##*/} removes path prefix.
# ":2,S" is a maildir suffix (S=seen)
Install 64 bits kernel on 32 bits system (bad idea)
wiki.archlinux.org/index.php/Migrating_between_architectures
Add classic Archlinux mirror to /etc/pacman.d/mirrorlist
/!\ format is /$repo/os/$arch
Enable multilib in /etc/pacman.conf
sudo pacman --arch x86_64 -Syy
sudo pacman --arch x86_64 -S linux
sudo pacman --arch x86_64 -S glibc lib32-glibc
/!\ They need to be installed at the same time
Compile C for ATmega328p/Arduino:
sudo xbps-install -S avr-gcc avr-libc avrdude
sudo usermod -aG dialout <user> # Or /dev/ttyACM0 group
avr-gcc -g -Os -DF_CPU=16000000UL -mmcu=atmega328p -c -o <name>.o <name>.c
avr-gcc -mmcu=atmega328p <name>.o -o <name>
avr-objcopy -O ihex -R .eeprom <name> <name>.hex
avrdude -F -V -c arduino -p ATMEGA328P -P /dev/ttyACM0 -b 115200 -U flash:w:<name>.hex
Transition from Thunderbird to mutt+mbsync+msmtp:
/!\ WIP /!\
https://annotatedtmg.org/mimir/migrating-getting.html
https://wiki.dovecot.org/mutt
https://baptiste-wicht.com/posts/2014/07/a-mutt-journey-my-mutt-configuration.html
To get multiple accounts in the sidebar:
neomuttrc:
folder-hook <mailbox> 'source </path/to/mailbox.mail>'
...
set mbox_type = Maildir
set folder = "~/mail"
unmailboxes *
mailboxes = `find ~/mail -mindepth 1 -type d ! -name cur ! -name tmp ! -name new -printf '"%p"\0' | xargs -0`
source <default mailbox>
<mailbox.mail>
set from = "Yer email@yer domain"
set hostname = "Yer domain"
set spoolfile = "+<mailbox>/Inbox"
set record = "+<mailbox>/Sent"
set postponed = "+<mailbox>/Draft"
set trash = "+<mailbox>/Trash"
# Switch color depending on account
color status <color> default
Mouse/Touchpad acceleration disable:
Set MaxSpeed=MinSpeed
For testing:
synclient MaxSpeed=<speed> MinSpeed=<speed>
For persistence, add to the right section in /etc/X11/xorg.conf.d/XX-synaptics.conf:
Option "MaxSpeed" "1.2"
Option "MinSpeed" "1.2"
Get hardware informations:
dmidecode
Get laptop model:
dmidecode -t system
PCMCIA slot
dmidecode -t slot
Processor|Processor cache
dmidecode -t <processor|cache>
RAM sticks and slots
dmidecode -t memory
Others values are <bios|baseboard|chassis>
Music fingerprinting
for f in *.mp3;do echo $f; python ~/src/pyacoustid/aidmatch.py $f;done > ident
awk '/\.mp3/{f = $0;next} f{printf "mv %s \"../%s.mp3\"\n", f, $0; f=0}' ident > rename.sh
2019-02-13 05:25:36 +00:00
Echo to stderr
>&2 echo "message"
Reset gpg-agent passphrase cache
Useful mainly for testing purposes
echo RELOADAGENT | gpg-connect-agent
2019-04-03 04:34:19 +00:00
Better Bibtex, Zotero:
Add URL to webpages
https://retorque.re/zotero-better-bibtex/scripting/
if (Translator.BetterBibTeX && item.itemType === 'webpage') {
if (item.accessDate) {
this.add({ name: 'note', value: "(accessed " + item.accessDate + ")" });
}
if (item.url) {
this.add({ name: 'howpublished', bibtex: "{\\url{" + this.enc_verbatim({value: item.url}) + "}}" });
}
}
ImageMagick:
crop to aspect ratio
convert in.png -gravity center -crop 4:3 out.png
Bumblebee runit fix:
sed -i 's/Driver=$/Driver=nvidia/' /etc/bumblebee/bumblebee.conf
Uncompress android .ab backup files:
# https://stackoverflow.com/questions/18533567/how-to-extract-or-unpack-an-ab-file-android-backup-file
( printf "\x1f\x8b\x08\x00\x00\x00\x00\x00" ; tail -c +25 backup.ab ) | tar xfvz -
Fix: Failed to activate service 'org.freedesktop.login1': timed out:
If dbus has been restarted, don't forget to restart elogind/systemd-logind
2019-10-03 16:36:28 +00:00
Artix:
Artixlinux pacman gpg unknown trust fix:
sudo pacman-key --init
sudo pacman-key --populate archlinux artix
Artixlinux steam lib32-systemd fix:
https://forum.artixlinux.org/index.php/topic,633.msg7437.html
[Attached file]: resources/lib32-systemd-dummy.pkgbuild
Open-rc keymap:
/etc/conf.d/keymaps
LibreOffice unlock write-protected doc:
Format -> Sections... -> [Uncheck Protect in "Write protection"]
Euro truck simulator 2:
Enable additional beams (roof, bumper, etc.)
<F4> then tick "Roof" and "Aux"
Run ETS2Studio under wine
winetricks dotnet45
Confirmed to work on a 32 bits prefix, untested on 64
SSH, get machine fingerprints:
Local
find /etc/ssh/ -name "ssh_host_*.pub" -exec ssh-keygen -lf '{}' \;
Remote
ssh-keyscan <hostname> 2>/dev/null | ssh-keygen -lf /dev/stdin
Run MSVC on linux with Wine:
As seen on the internet, not tested:
https://hackernoon.com/a-c-hello-world-and-a-glass-of-wine-oh-my-263434c0b8ad
Also this docker atrocity:
https://github.com/mstorsjo/msvc-wine
/!\ You need to get the original files from a windows machine/VM
Simple python HTTP server:
Supports --help option
python3:
python -m http.server [port]
python2:
python -m SimpleHTTPServer [port]
2019-10-03 16:36:28 +00:00
Elegant deduplication lines in file:
https://iridakos.com/how-to/2019/05/16/remove-duplicate-lines-preserving-order-linux.html
awk '!visited[$0]++' your_file > deduplicated_file
Decode webp:
# from google's libwebp
# jpeg isn't supported, use convert after that
dwebp in.webp -o out.png
Run studiotax on wine:
http://pnijjar.freeshell.org/2018/studiotax/
WINEARCH=win32
winetricks settings win7 # Might not be necessary
winetricks dlls dotnet45 ie6
winetricks settings win7
wine ./StudioTax2017Install.exe /extract
msiexec /i StudioTax.msi
Fill dynamic XFA forms on linux:
Run Acrobat Reader DC 2019 on wine:
https://linuxconfig.org/how-to-install-latest-adobe-acrobat-reader-dc-on-ubuntu-18-04-bionic-beaver-linux-with-wine
https://www.quora.com/How-do-I-install-Adobe-Reader-on-Ubuntu-using-the-Wine-software
ftp://ftp.adobe.com/pub/adobe/reader/win/AcrobatDC/
WINEARCH=win32
WINEPREFIX=~/.wine-32
winetricks mspatcha
winetricks riched20
winetricks allfonts # Maybe not ?
trizen -S ttf-windows # Indispensable, without it no text in UI
# maybe? winetricks atmlib wsh57
winetricks settings win7
wget ftp://ftp.adobe.com/pub/adobe/reader/win/AcrobatDC/1901220034/AcroRdrDC1901220034_en_US.exe # Replace by latest version
wine ./AcroRdrDC1901220034_en_US.exe
wine ~/.wine-32/drive_c/Program\ Files/Adobe/Acrobat\ Reader\ DC/Reader/AcroRd32.exe
Select "Always open with Protected Mode Disabled"
Don't forget to kill the wineserver, adobe leaves a lot of garbage running:
wineserver --kill
Master PDF Editor (free version):
https://code-industry.net/free-pdf-editor/
trizen -S masterpdfeditor
Easily switch to russian phonetic keyboard:
setxkbmap fr,ru -variant ,phonetic -option grp:shift_caps_toggle
man xkeyboard-config # get list of possible toggles
Image/photo sorting with feh:
feh --action1 'mv -v %F "/path/to/target/"%N' \
--action[2-9] [...] /dir/to/sort
Setup udev for android device with adb:
# Solves "adb: error: failed to get feature set: insufficient permissions for device"
# https://wiki.archlinux.org/index.php/Android_Debug_Bridge#Adding_udev_Rules
Get Vendor and and product IDs with
$ lsusb
/etc/udev/rules.d/51-android.rules:
SUBSYSTEM=="usb", ATTR{idVendor}=="[VENDOR ID]", MODE="0660", GROUP="adbusers" # Or sdkusers
SUBSYSTEM=="usb",ATTR{idVendor}=="[VENDOR ID]",ATTR{idProduct}=="[PRODUCT ID]",SYMLINK+="android_adb"
SUBSYSTEM=="usb",ATTR{idVendor}=="[VENDOR ID]",ATTR{idProduct}=="[PRODUCT ID]",SYMLINK+="android_fastboot"
$ sudo udevadm control --reload-rules
Get original windows key from linux:
# From: https://twitter.com/BrandonPrry/status/1038269038881898498
# Not guaranted to work
sudo cat /sys/firmware/acpi/tables/MSDM | tail -c 32 | xargs -0 echo
Wayland install:
Qt issues:
sudo pacman -S qt5-wayland
export QT_QPA_PLATFORM="wayland"
MSI ge62 webcam not found:
Activate using fn+F6
Air Canada PNR access:
https://services.aircanada.com/ServicingPNR/Ancillary/ACO/
Android diagnostic debug phone codes:
# https://www.itworld.com/article/2708985/debug-your-phone-with-these-hidden-android-secret-codes.html
# https://www.redmondpie.com/hidden-android-secret-codes-for-samsung-htc-motorola-sony-lg-and-other-devices/
*#06# IMEI number
*#0*# Enter the service menu on newer phones like Galaxy S III
*#*#4636#*#* Phone information, usage statistics and battery
*#*#34971539#*#* Detailed camera information
*#*#273282*255*663282*#*#* Immediate backup of all media files
*#*#197328640#*#* Enable test mode for service
*#*#232339#*#* Wireless LAN tests
*#*#0842#*#* Backlight/vibration test
*#*#2664#*#* Test the touchscreen
*#*#1111#*#* FTA software version (1234 in the same code will give PDA and firmware version)
*#12580*369# Software and hardware info
*#9090# Diagnostic configuration
*#872564# USB logging control
*#9900# System dump mode
*#301279# HSDPA/HSUPA Control Menu
*#7465625# View phone lock status
*#*#7780#*#* Reset the /data partition to factory state
*2767*3855# Format device to factory state (will delete everything on phone)
##7764726 Hidden service menu for Motorola Droid
*#*#7594#*#* Enable direct powering down of device once this code is entered
*#*#273283*255*663282*#*#* Make a quick backup of all the media files on your Android device
*#*#232338#*#* Shows Wi-Fi MAC address
*#*#1472365#*#* Perform a quick GPS test
*#*#1575#*#* For a more advanced GPS test
*#*#0283#*#* Perform a packet loopback test
*#*#0*#*#* Run an LCD display test
*#*#0289#*#* Run Audio test
*#*#2663#*#* Show devices touch-screen version
*#*#0588#*#* Perform a proximity sensor test
*#*#3264#*#* Show RAM version
*#*#232331#*#* Run Bluetooth test
*#*#232337#*# Show devices Bluetooth address
*#*#7262626#*#* Perform a field test
*#*#8255#*#* Monitor Google Talk service
*#*#4986*2650468#*#* Show Phone, Hardware, PDA, RF Call Date firmware info
*#*#1234#*#* Show PDA and Phone firmware info
*#*#2222#*#* Show FTA Hardware version
*#*#44336#*#* Show Build time and change list number
*#*#8351#*#* Enable voice dialing log mode, dial *#*#8350#*#* to disable it
##778 (+call) Show EPST menu
These codes are specific to HTC devices only:
*#*#3424#*#* Run HTC function test program
*#*#4636#*#* Show HTC info menu
##8626337# Run VOCODER
##33284# Perform field test
*#*#8255#*#* Launch Google Talk service monitor
##3424# Run diagnostic mode
##3282# Show EPST menu
##786# Reverse Logistics Support
Android wpa_supplicant conf file path:
/data/misc/wifi/wpa_supplicant.conf
Run GUI apps as root with sudo on Wayland:
# https://bugzilla.redhat.com/show_bug.cgi?id=1274451
xhost +SI:localuser:root
sudo <gui>
xhost -SI:localuser:root # Clean up the security hole
Fix Network Manager nm-applet/nmtui only working with root/sudo:
# /etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules
polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
return polkit.Result.YES;
}
});
sudo usermod -aG network <user>