First draft of an article on bspwm

Added makefile to repo
This commit is contained in:
trotFunky 2020-06-21 17:49:24 +01:00
parent 6d9be433eb
commit 73840fb7fd
3 changed files with 103 additions and 1 deletions

1
.gitignore vendored
View file

@ -1,6 +1,5 @@
__pycache__/
output/
Makefile
publishconf.py
tasks.py
*.swp

75
Makefile Normal file
View file

@ -0,0 +1,75 @@
PY?=python3
PELICAN?=pelican
PELICANOPTS=
BASEDIR=$(CURDIR)
INPUTDIR=$(BASEDIR)/content
OUTPUTDIR=$(BASEDIR)/output
CONFFILE=$(BASEDIR)/pelicanconf.py
PUBLISHCONF=$(BASEDIR)/publishconf.py
DEBUG ?= 0
ifeq ($(DEBUG), 1)
PELICANOPTS += -D
endif
RELATIVE ?= 0
ifeq ($(RELATIVE), 1)
PELICANOPTS += --relative-urls
endif
help:
@echo 'Makefile for a pelican Web site '
@echo ' '
@echo 'Usage: '
@echo ' make html (re)generate the web site '
@echo ' make clean remove the generated files '
@echo ' make regenerate regenerate files upon modification '
@echo ' make publish generate using production settings '
@echo ' make serve [PORT=8000] serve site at http://localhost:8000'
@echo ' make serve-global [SERVER=0.0.0.0] serve (as root) to $(SERVER):80 '
@echo ' make devserver [PORT=8000] serve and regenerate together '
@echo ' make ssh_upload upload the web site via SSH '
@echo ' make rsync_upload upload the web site via rsync+ssh '
@echo ' '
@echo 'Set the DEBUG variable to 1 to enable debugging, e.g. make DEBUG=1 html '
@echo 'Set the RELATIVE variable to 1 to enable relative urls '
@echo ' '
html:
$(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
clean:
[ ! -d $(OUTPUTDIR) ] || rm -rf $(OUTPUTDIR)
regenerate:
$(PELICAN) -r $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
serve:
ifdef PORT
$(PELICAN) -l $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS) -p $(PORT)
else
$(PELICAN) -l $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
endif
serve-global:
ifdef SERVER
$(PELICAN) -l $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS) -p $(PORT) -b $(SERVER)
else
$(PELICAN) -l $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS) -p $(PORT) -b 0.0.0.0
endif
devserver:
ifdef PORT
$(PELICAN) -lr $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS) -p $(PORT)
else
$(PELICAN) -lr $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
endif
publish:
$(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(PUBLISHCONF) $(PELICANOPTS)
.PHONY: html help clean regenerate serve serve-global devserver publish

View file

@ -0,0 +1,28 @@
Title: À l'aventure avec bspwm
Date: 21-06-2020 00:11
Modified: 21-06-2020 17:50
Category: *nix
Tags: Desktop, WM, bspwm
Lang: fr
Slug: jumping-into-bspwm
Status: draft
Summary: Il était temps que je me frotte à un gestionnaire de fenêtre "en tuiles", je me suis donc lancé avec bspwm.
Il était temps que je me frotte à un gestionnaire de fenêtre "en tuiles", je me suis donc lancé avec bspwm.
# Pourquoi ?
Ça fait bientôt 5 ans que Linux a prit de l'importance comme mon OS quotidien, et de plus en plus ces trois dernières années. Pendant tout ce temps mon environnement de bureau (**DE**) principal a été GNOME : l'option de base de Debian, plutôt commun et que j'ai suffisamment personnalisé pour en faire mon "chez moi". Du coup pourquoi changer ?
Tout simplement: j'ai envie de voir ce que les autres options ont à offrir, ce qui se fait différemment, ce qui est mieux ou moins bien. D'ailleurs mes trois installations de Linux tournent sous un DE différent : ma principale est donc sous GNOME, mais la seconde tourne sous Cinnamon et la troisième initialement sous KDE, puis Budgie. Toutes ces options proposent un environnement complet et intégré avec moult réglages disponibles et des fenêtres flottantes (l'expérience classique à laquelle nous sommes tous habitués). C'est donc une expérience et une mentalité à laquelle je suis habitué, malgré les différences.
Mais à force de côtoyer d'autres utilisateurs de Linux et regarder des configs sur [unixporn](https://reddit.com/r/unixporn) une autre option bien différente apparaît : les gestionnaires de fenêtres (**WM**). Même plus : des gestionnaires de fenêtres "en tuiles" (**tilable** WM), à l'opposé de flotantes.
L'expérience fortement différente d'un WM, qui est bien moins "complet" qu'un DE et ne s'occupe que de la gestion des fenêtres, et leur légerté (tant CPU que mémoire) m'a donc poussé à l'aventure. Les options les plus communes que j'ai considéré étaient **i3**, **awesomewm** et **bspwm**. J'ai un peu testé awesome mais a été rapidement perdu par la quantité de raccourcis et d'actions différentes, malgré le menu d'aide (fort appréciable cependant!). Mais la raison principale de mon choix est la facilité de configuration qui apparaissait dans la documentation de bspwm et de **sxhkd** (l'application utilisé pour les raccourcis) comparé à i3 ou à awesome.
# Première expérience
*[DE]: Desktop Environment
*[WM]: Window Manager