"Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet."
Quand Debian est installé en dual boot avec Windows, il peut être intéressant de cacher les partitions Windows pour ne pas qu'elles apparaissent dans le système de fichiers.
Sudo :
https://li.sajous.net/?6k8vYw
Configurer les source.list :
http://librox.net/spip.php?article99
Installer guake, zsh et slimzsh :
https://li.sajous.net/?EHFGfA
https://li.sajous.net/?RQkrcw
https://li.sajous.net/?wWEo1g
Autologin :
https://li.sajous.net/?y_QfPw
Installer quelques logiciels :
apt install curl vlc firmware-linux firmware-linux-nonfree unzip apt-transport-https p7zip-rar network-manager-gnome cups-pdf simple-scan gparted ufw gufw redshift-gtk ttf-mscorefonts-installer
Si carte graphique nvidia :
https://li.sajous.net/?Up1Q1w
Redshift pour pas se péter les yeux :
Configuration de la localisation manuelle :
http://debian-facile.org/doc:environnement:redshift
Lancement :
lancer redshift depuis accessoires>redshift et une fois démarré, cocher Lancement automatique
Grub diminuer le temps d'attente :
https://li.sajous.net/?S7d91w
Installer ublock origin :
https://addons.mozilla.org/fr/firefox/addon/ublock-origin/
Puis la liste anti annonce RGPD :
Cliquez ici pour ajouter le filtre à ublock origin
Installer le correcteur grammatical grammalecte :
https://grammalecte.net/#download
Icones et thèmes, police Luciole :
https://li.sajous.net/?Wwi4zA
https://li.sajous.net/?kmJ80g
Firewall :
https://li.sajous.net/?ggA_oQ
SSD :
https://li.sajous.net/?NWh4wA
Clic droit Caja :
https://li.sajous.net/?UTeBUg
Installer client nextcloud :
apt install caja-nextcloud seahorse
puis Applications > Accessoires > Mots de passes et clés
clic droit sur "Connexion" modifier le mot de passe et mettre un mot de passe vide
Texmaker est un éditeur LaTeX libre et gratuit avec support de l'unicode, correction orthographique, auto-complétion et repliage de code. Il intègre un afficheur pdf intégré avec support pour synctex et affichage en mode continu.
Sur debian :
apt install texmaker texlive-lang-french texlive-math-extra
Pour un exemple de mémoire/thèse simple :
http://gvallver.perso.univ-pau.fr/?p=317
Mode d'emploi complet de Latex pour toutes les formules mathématiques
Ressources latex pour profs de maths
Rechercher un paquet installé :
dpkg-query -l 'toto*'
Surtout :
rechercher un mot à l'intérieur de fichiers dans une arborescence :
grep -rn "It works" /var/www/
Taper :
git clone --recursive https://github.com/changs/slimzsh.git ~/.slimzsh
nano ~/.zshrc
et ajouter :
source "$HOME/.slimzsh/slim.zsh"
suivi de alias
(pour le compte root, j'ajoute "cd ~")
pwgen -sync 50 1
pour générer un mot de passe de 50 caractères
Décompresser
gzip -d fichier.gz
tar -xvf archive.tar
tar -xzvf archive.tar.gz
tar -xjvf archive.tar.bz2
tar -xYvf archive.tar.lzma
Compresser :
Un seul fichier :
gzip -9 fichier.txt
Un dossier :
tar -czvf archive.tar.gz MonRepertoire
Convertir un dossier rempli en un seul fichier sans le compresser :
tar -cf archive.tar MonRepertoire
Nano ne pas couper les lignes :
nano -$ /...
export :
mysqldump --extended-insert --complete-insert -u user -p nom_base > base.sql;
import :
mysql -u user -p base < base.sql
à faire en graphique si gufw est installé. Sinon, sur un serveur par exemple :
Ajouter une règle :
ufw allow 53/udp
Enlever une règle :
ufw allow 53/udp
Désactiver le logging :
ufw logging off
Activer le pare-feu : (à faire après l'installation car active aussi le démarrage automatique)
ufw enable
Désactiver le pare-feu :
ufw disable
docker exec -it [container-id] bash
sudo nano /etc/apt/sources.list.d/docker.list
ajouter :
deb https://apt.dockerproject.org/repo debian-jessie main
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
sudo apt-get update
sudo apt-get update
apt-cache policy docker-engine
sudo aptitude install linux-image-amd64/jessie-backports linux-base/jessie-backports apt-transport-https ca-certificates
sudo nano /etc/modules-load.d/overlay.conf
y mettre juste "overlay"
sudo reboot
sudo apt-get install docker-engine
sudo groupadd docker
sudo gpasswd -a ${USER} docker
sudo mkdir /etc/systemd/system/docker.service.d/
sudo nano /etc/systemd/system/docker.service.d/docker.conf
y mettre :
[Service]
ExecStart=
ExecStart=/usr/bin/docker daemon -H fd:// --storage-driver=overlay
création du dossier /docker qui contient docker-compose.yml, un dossier par image à builder avec le dockerfile et autre, un dossier data avec toutes les données persistantes et importantes.
systemctl set-default multi-user.target
Pour remettre :
systemctl set-default graphical.target
Pour xfce, un bon gestionnaire de fichier à double panel (en appuyant sur F3) est Caja le gestionaire de Mate.
apt-get install caja
exécution automatique du script : on ajoute la ligne suivante dans /etc/cron.d/gpio
@reboot root /root/scripts/radio.sh > /dev/null 2>&1
#!/bin/bash
setup ()
{
SHUF=0 [#variable](https://sajous.net/li/./add-tag/variable) pour savoir si on lance la bibliothèque ou la radio
[#initialisation](https://sajous.net/li/./add-tag/initialisation) des entrées en mode pullup
/usr/local/bin/gpio mode 2 up [#play](https://sajous.net/li/./add-tag/play) pause
/usr/local/bin/gpio mode 3 up [#stop](https://sajous.net/li/./add-tag/stop)
/usr/local/bin/gpio mode 4 up [#précédent](https://sajous.net/li/./add-tag/précédent)
/usr/local/bin/gpio mode 5 up [#suivant](https://sajous.net/li/./add-tag/suivant)
/usr/local/bin/gpio mode 26 up [#shuffle](https://sajous.net/li/./add-tag/shuffle)
}
start ()
{
[#récupération](https://sajous.net/li/./add-tag/récupération) de l'état de mpd
MPDCONF=/etc/mpd.conf
PIDFILE=$(sed -n 's/^[[:space:]]*pid_file[[:space:]]*"\?\([^"]*\)\"\?/\1/p' $MPDCONF)
[#si](https://sajous.net/li/./add-tag/si) mpd est arrété, on le démarre :
if [ ! -f "$PIDFILE" ]
then /etc/init.d/mpd start
echo mpd démarré
fi
mpc clear
volume
mpc load Radio [#on](https://sajous.net/li/./add-tag/on) charge la playlist Radio dans laquelle j'ai mis mes radios préférées dans un ordre connu de la famille
mpc play
/usr/local/bin/gpio load spi
}
[#Boutons](https://sajous.net/li/./add-tag/Boutons) Play, Pause, Précédent, Suivant, Shuffle
playing ()
{
[#Play](https://sajous.net/li/./add-tag/Play) si la musique est arrétée, pause si elle est en lecture
if [[ `/usr/local/bin/gpio read 2` = 0 ]]
then
{
mpc toggle
}
fi
[#Stop](https://sajous.net/li/./add-tag/Stop)
if [[ `/usr/local/bin/gpio read 3` = 0 ]]
then
{
mpc stop
}
fi
[#Précédent](https://sajous.net/li/./add-tag/Précédent)
if [[ `/usr/local/bin/gpio read 4` = 0 ]]
then
{
mpc prev
}
fi
[#Suivant](https://sajous.net/li/./add-tag/Suivant)
if [[ `/usr/local/bin/gpio read 5` = 0 ]]
then
{
mpc next
}
fi
[#Shufle](https://sajous.net/li/./add-tag/Shufle) musique : si on écoute la radio, on remplace par toute la bibliothèque en aléatoire; si bibliothèque en écoute, on remplace par la playlist Radio
if [[ `/usr/local/bin/gpio read 26` = 0 ]]
then
{
if [ $SHUF == 0 ] [#si](https://sajous.net/li/./add-tag/si) Radio à l'acoute
then
{
[#On](https://sajous.net/li/./add-tag/On) vide la playlist courante
mpc clear
[#On](https://sajous.net/li/./add-tag/On) ajoute toute la bibliothèque
mpc add / > /dev/null
[#On](https://sajous.net/li/./add-tag/On) mélange
mpc shuffle
[#On](https://sajous.net/li/./add-tag/On) lance
mpc play
SHUF=1 [#on](https://sajous.net/li/./add-tag/on) informe que la bibliothèque est à l'acoute
}
else [#si](https://sajous.net/li/./add-tag/si) la bibliothèque est à l'écoute
{
mpc clear
mpc load Radio
mpc play
SHUF=0
}
fi
}
fi
}
[#Bouton](https://sajous.net/li/./add-tag/Bouton) volume
volume ()
{
[#On](https://sajous.net/li/./add-tag/On) lit l'entrée analogique venant du potentiomètre branché sur un CAN MCP3002
bouton=`/usr/local/bin/gpio -x mcp3002:100:0:0 aread 100` [#valeur](https://sajous.net/li/./add-tag/valeur) brut du potentiomètre
[#On](https://sajous.net/li/./add-tag/On) converti l'entrée qui va de 0 à 1024 en 35-90% (volume à 35% quasi inaudible et 90% ça sature)
vol=$((35+55*$bouton/1024))
[#On](https://sajous.net/li/./add-tag/On) entre le résultat comme volume
mpc volume $vol
}
[#Pour](https://sajous.net/li/./add-tag/Pour) orchestrer le tout :
setup
start
while true; do
playing
volume
sleep 0.1 [#permet](https://sajous.net/li/./add-tag/permet) de ne pas surcharger le RPI, sert aussi d'anti-rebond
done
exécution automatique du script : on ajoute la ligne suivante dans /etc/cron.d/gpio
@reboot root /root/scripts/power.sh > /dev/null 2>&1
#!/bin/bash
setup ()
{
[#initialisation](https://sajous.net/li/./add-tag/initialisation) des entrées sorties
[#entrée](https://sajous.net/li/./add-tag/entrée) 6 : interrupteur bistable (On ou Off) à 2 contacts, un contact coupe l'alim, l'autre envoie une info au rpi
/usr/local/bin/gpio mode 6 up [#entrée](https://sajous.net/li/./add-tag/entrée) pullup activée, correspond à l'information bouton_power=off
/usr/local/bin/gpio mode 0 output [#sortie](https://sajous.net/li/./add-tag/sortie) : relais permettant un automaintient de l'alim pour éviter la coupure brusque par le bouton
/usr/local/bin/gpio write 0 1 [#on](https://sajous.net/li/./add-tag/on) active l'automaintient, il devient impossible d'éteindre le rpi brusquement par l'inter. Si on active le bouton, le rpi s'éteindra proprement.
}
wait ()
{
[#vérification](https://sajous.net/li/./add-tag/vérification) de l'état du bouton
while [ `/usr/local/bin/gpio read 6` = 0 ]; do
sleep 1 [#si](https://sajous.net/li/./add-tag/si) bouton en position ON, attendre une seconde
done
if [[ `/usr/local/bin/gpio read 6` = 1 ]]
then [#si](https://sajous.net/li/./add-tag/si) bouton en position OFF
{
mpc stop [#coupe](https://sajous.net/li/./add-tag/coupe) la musique
service mpd stop [#éteint](https://sajous.net/li/./add-tag/éteint) le logiciel de musique
/sbin/shutdown -hP now [#éteint](https://sajous.net/li/./add-tag/éteint) le rpi, une fois éteint, la sortie 0 (automaintient) passera à 0 et le relais ne sera plus alimenté : l'alimentation se coupera
exit 0 [#on](https://sajous.net/li/./add-tag/on) sort proprement
}
fi
}
setup
while true; do
wait
done