lhark
5 years ago
commit
69bd3ab499
5 changed files with 535 additions and 0 deletions
@ -0,0 +1,8 @@ |
|||
Check if filesystem full : $ df |
|||
Is service running : $ sudo systemctl status <plop>.service |
|||
$ sudo sv status <service> |
|||
Check /var/log |
|||
Check firewall : $ nmap <host> |
|||
$ nc -z <host> <port>; echo $? -> 0: open - 1: closed |
|||
|
|||
To be expanded... |
@ -0,0 +1,429 @@ |
|||
Usefull packages : |
|||
zsh |
|||
vim |
|||
git |
|||
Image viewing : |
|||
feh |
|||
sixv Suckless image viewer |
|||
Monitoring : |
|||
htop |
|||
glances System overview (top, disk, mem, ...) |
|||
ncdu Disk usage |
|||
Terminal : |
|||
kitty GPU accelerated term, nicely configurable |
|||
st Simple Terminal, very light |
|||
Desktop environment : |
|||
dwm Dynamic Window Manager |
|||
dmenu |
|||
Office : |
|||
sent Simple slides tool |
|||
Misc : |
|||
eg Examples of common tools usage (think find or tar) |
|||
|
|||
keyboard : |
|||
console: |
|||
/etc/vconsole.conf |
|||
X11: |
|||
sudo localectl set-x11-keymap fr |
|||
|
|||
Nice environment : |
|||
cd ~ |
|||
git clone http://gitlab.rezometz.org/lhark/rc.git |
|||
rc/install.sh |
|||
chsh -s /bin/zsh |
|||
|
|||
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 : |
|||
merge pdf : |
|||
pdftk input1.pdf input2.pdf input3.pdf cat output output.pdf |
|||
|
|||
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 |
|||
|
|||
Drag & drop files: |
|||
dragon : https://github.com/mwh/dragon |
|||
|
|||
Fix hardware clock (with chrony): |
|||
sudo chronyc |
|||
makestep |
|||
quit |
|||
sudo hwclock --systohc |
|||
|
|||
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> ... |
|||
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 |
|||
|
|||
Cut video/audio: |
|||
ffmpeg -ss "start" -t "duration" -i input.mp3 -acodec copy output.mp3 |
|||
|
|||
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: |
|||
sudo mount /dev/sd[a-z][0-9] /mnt |
|||
sudo chown <user> /mnt |
|||
|
|||
Borg backup: |
|||
borg init --encryption=repokey-blake2 </repo> |
|||
borg create -v --stats --progress --compression zlib /mnt/<machine>/home/::{now} /home/<user> |
|||
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: |
|||
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 |
|||
|
|||
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 |
|||
|
|||
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 |
@ -0,0 +1,53 @@ |
|||
General config |
|||
http://stevelosh.com/blog/2012/10/the-homely-mutt/ |
|||
https://wincent.com/blog/email |
|||
https://baptiste-wicht.com/posts/2014/07/a-mutt-journey-my-mutt-configuration.html |
|||
https://www.suffix.be/blog/mutt/ |
|||
https://ankursinha.in/2017/12/16/transitioning-to-neomutt-and-friends-for-e-mail.html |
|||
http://blog.packetqueue.net/living-the-command-line-dream-with-mutt/ |
|||
https://lukespear.co.uk/mutt-multiple-accounts-mbsync-notmuch-gpg-and-sub-minute-updates/ |
|||
|
|||
Multi-account |
|||
https://annotatedtmg.org/mimir/migrating-getting.html |
|||
https://pbrisbin.com/posts/two_accounts_in_mutt/ |
|||
https://raisedfist.net/2017-05-02/muttupdated/ |
|||
|
|||
GPG setup |
|||
http://codesorcery.net/old/mutt/mutt-gnupg-howto |
|||
http://jasonwryan.com/blog/2013/07/20/gnupg/ |
|||
|
|||
Color |
|||
https://nongeekshandbook.blogspot.com/2009/03/mutt-color-configuration.html |
|||
|
|||
iCal |
|||
http://jasonwryan.com/blog/2014/04/05/calendar/ |
|||
|
|||
Notmuch |
|||
https://baptiste-wicht.com/posts/2014/08/a-mutt-journey-search-mails-with-notmuch.html |
|||
Notmuch + imapfilter |
|||
https://copyninja.info/blog/email_setup.html |
|||
Dovecot/Sieve + Notmuch |
|||
https://anarc.at/blog/2016-05-12-email-setup/#security-considerations |
|||
Notmuch vs Sieve |
|||
https://julien.danjou.info/why-notmuch-is-not-much-good/ |
|||
imapfilter |
|||
https://iranzo.github.io/blog/2015/08/28/filtering-email-with-imapfilter/ |
|||
https://github.com/wichtounet/dotfiles/blob/master/.imapfilter/config.lua |
|||
https://baptiste-wicht.com/posts/2014/07/a-mutt-journey-filter-mails-with-imapfilter.html |
|||
|
|||
Isync + procmail integration (or why it doesn't exist) |
|||
https://sourceforge.net/p/isync/mailman/message/31639998/ |
|||
|
|||
Procmail |
|||
http://porkmail.org/era/mail/procmail-debug.html |
|||
https://www.linux.com/news/process-your-email-procmail |
|||
https://unix.stackexchange.com/questions/41971/how-can-i-apply-my-procmail-filters-to-my-maildir-inbox |
|||
|
|||
Fetchmail |
|||
https://www.linode.com/docs/email/clients/using-fetchmail-to-retrieve-email/ |
|||
|
|||
Vim keybinds |
|||
https://www.reddit.com/r/vim/comments/67n8ue/vimmy_custom_keybindings_for_mutt/ |
|||
|
|||
Mark all as read |
|||
https://brianbuccola.com/how-to-mark-all-emails-as-read-in-mutt/ |
@ -0,0 +1,33 @@ |
|||
https://blog.techorganic.com/2016/03/08/radare-2-in-0x1e-minutes/ |
|||
https://github.com/radare/radare2/blob/master/doc/intro.md |
|||
|
|||
[Analyse] |
|||
is list symbols |
|||
iz list strings |
|||
ie entry point |
|||
axt find reference to var/func |
|||
axt @@ str.* find references to strings |
|||
afl list functions |
|||
afn rename function |
|||
afvn rename var |
|||
VV graph mode |
|||
CC add comment |
|||
fs list flag spaces |
|||
fs <flag space>; f list flags in this space |
|||
? <...> evaluate expression |
|||
ahi s @@=0x... 0x... manually recognize strings at offsets |
|||
!rahash -E rot -S s:13 -s '<...>' Rot13 string |
|||
|
|||
[Visual] |
|||
g<id> follow call |
|||
u go back |
|||
|
|||
[Patching] |
|||
oo+ reopen in write mode |
|||
ood reopen in debug mode |
|||
w... write cmd |
|||
|
|||
[config] |
|||
eco <theme> change color theme |
|||
e asm.pseudo = true show pseudocode in disasm |
|||
e scr.utf8 = true better arrows |
@ -0,0 +1,12 @@ |
|||
CMD LINE |
|||
vim -o/O *.cpp Open all files in H/V splits |
|||
|
|||
NORMAL MODE |
|||
I Start inserting at the beginning of the line |
|||
<C-W>[HJKL] Move split to extreme left, bottom, top, right |
|||
|
|||
COMMAND |
|||
:botright split / :bo sp Full width sp across multiple vs |
|||
:topleft vsplit / :to vs Full height vs across multiple sp |
|||
|
|||
#TODO: bring tricks from vimrc |
Loading…
Reference in new issue