====== Les petits programmes à installer d'urgence ======
Quand on (ré)installe un Linux, il y a quelques programmes ou utilisateurs qu'on peut réinstaller et configurer rapidement pour se simplifier la vie.
===== Neovim =====
$ sudo apt install neovim
Quelques alias :
$ nvim ~/.bash_aliases
#NeoVim
alias v='nvim'
alias vi='nvim'
alias vim='nvim'
alias neovim='nvim'
===== Htop =====
$ sudo apt install htop
===== Curl =====
$ sudo apt install curl
===== Pip =====
===== Cargo =====
''cargo'' n'est pas disponible dans Debian Stretch...
==== Installer sur Debian Testing ====
$ sudo apt install cargo
==== Installer sur Debian Stretch ====
La [[https://doc.rust-lang.org/cargo/getting-started/installation.html#install-rust-and-cargo|documentation]] indique :
$ curl -sSf https://static.rust-lang.org/rustup.sh | sh
Il y a des dépendances (pour exa ou d'autres) à installer :
# apt install gcc
(sinon on a "error: linker `cc` not found" quand on veut installer quelque chose avec ''cargo''.)
# apt install cmake libssl-dev libgit2-dev
==== Configuration ====
Ajouter le path pour les binaires installé avec Cargo :
$ nvim ~/.profile
#Add cargo to Path
export PATH=$PATH:/home/simon/.cargo/bin/
(Nécessite un redémarrage pour être pris en compte!)
Un alias pour mettre à jour les programmes installés avec cargo :
$ cargo install cargo-update
Updating registry `https://github.com/rust-lang/crates.io-index`
Downloading cargo-update v1.6.1
Installing cargo-update v1.6.1
Downloading toml v0.4.6
Downloading array_tool v1.0.3
Downloading lazy_static v1.0.1
(...)
$ nvim ~/.bash_aliases
#cargo
alias cargo-up='cargo install-update -a'
$ source ~/.bashrc
$ cargo-up
Updating registry `https://github.com/rust-lang/crates.io-index`
Package Installed Latest Needs update
cargo-update v1.6.1 v1.6.1 No
exa v0.8.0 v0.8.0 No
No packages need updating.
__source:__ https://crates.io/crates/cargo-update
Supprimer un "package" avec Cargo :
$ cargo uninstall amp
Removing /home/simon/.cargo/bin/amp
===== Exa =====
''cargo'' n'est pas disponible dans Debian Stretch... Plus compliqué d'installer ''exa''.
[[https://github.com/ogham/exa|Exa]] est un remplaçant pour [[ls]].
$ cargo install exa
Updating registry `https://github.com/rust-lang/crates.io-index`
(...)
Compiling exa v0.8.0
Finished release [optimized] target(s) in 61.61 secs
Installing /home/simon/.cargo/bin/exa
warning: be sure to add `/home/simon/.cargo/bin` to your PATH to be able to run the installed binaries
(il y a des [[https://the.exa.website/install/source|dépendances]] pour que [[cargo]] puisse compiler exa... Il faut installer [[libgit2-dev]], [[cmake]], ...)
$ nvim ~/.bash_aliases
#ls
alias ls="exa"
alias ll="exa -l"
alias la="exa -al"
alias tree="exa -T"
__sources:__ [[https://the.exa.website/|https://the.exa.website/]]
===== EncFS =====
Détails sur la page dédiée à [[encfs]].
===== KeePassXC =====
''keepassxc'' n'est pas disponible dans Debian Stretch...
$ sudo apt install keepassxc
===== Ranger =====
[[https://ranger.github.io/|Ranger]] est un gestionnaire de fichiers en ligne de commande.
$ sudo apt install ranger
===== Rambox =====
[[http://rambox.pro/|Rambox]] ([[https://github.com/saenzramiro/rambox|github]]) permet de centraliser ses différents moyens de communications.
===== TaskWarrior =====
[[https://taskwarrior.org/|TaskWarrior]] est un gestionnaire de tâches. Il peut être utilisé en ligne de commande mais aussi via des programmes graphiques (comme [[https://extensions.gnome.org/extension/1039/taskwhisperer/|l'extension TaskWhisperer]] pour Gnome).
$ task add Comprendre Taskwarrior
Created task 1.
$ task next
ID Age Description Urg
1 22s Comprendre Taskwarrior 0
1 task
On peut jeter un œil aux fichiers créés :
$ ls -al .task
.rw-r--r-- 163 simon 18 jui 12:22 backlog.data
.rw-r--r-- 0 simon 18 jui 12:22 completed.data
drwxr-xr-x - simon 18 jui 12:20 hooks
.rw-r--r-- 141 simon 18 jui 12:22 pending.data
.rw-r--r-- 165 simon 18 jui 12:22 undo.data
$ cat .task/backlog.data
{"description":"Comprendre Taskwarrior","entry":"20180718T102223Z","modified":"20180718T102223Z","status":"pending","uuid":"c5f76780-d474-4e9f-88db-29b489e3ea4f"}
$ cat .task/completed.data
#encore rien
$ cat .task/pending.data
[description:"Comprendre Taskwarrior" entry:"1531909343" modified:"1531909343" status:"pending" uuid:"c5f76780-d474-4e9f-88db-29b489e3ea4f"]
Et avec l'extension TaskWhisperer de Gnome :
{{ ::taskwhisperer.png?400 |}}
Il existe beaucoup d'applications "[[https://taskwarrior.org/tools/|front-end]]" pour TaskWarrior, y compris des *front-end* web comme [[https://inthe.am/about|Inthe.AM]] ou des [[https://f-droid.org/en/packages/kvj.taskw/|applications android]].