39 Commits
vif ... zou

Author SHA1 Message Date
e40ef14b07 feat(ZSH): completion - add gitlab-ci-local command completion 2025-05-14 22:26:32 +02:00
c61451a8e1 fix(i3): compositor - deactivated while giving problem when sharing screen 2025-05-14 22:24:04 +02:00
4823af9ef1 feat(i3): Add kitty and polybar changes about:
* wlan0 (previously wlp3s0) because of change from netctl to iwd
* Kitty is now in Light Solarized
2025-05-14 22:24:04 +02:00
f8dd2ce568 BUG: Chromium ne se lance plus sous Xorg 2025-05-14 22:24:04 +02:00
bbb726c9e1 Polybar: adaptation du module de température et d'ethernet 2025-05-14 22:24:04 +02:00
3de58bb297 feat(bin): More scripts for 'bin' directory 2025-05-14 22:22:17 +02:00
c13e8b3d9d chore(zsh): Change PAGER and MANPAGER 2025-05-14 22:18:54 +02:00
9cb06b490f chore(zsh): Update aliases 2025-05-14 22:17:23 +02:00
778362e85e refactor: Get waybar config from tom (laptop) branch 2025-05-14 22:11:49 +02:00
18fdf1adc7 refactor: Get Sway config from tom 2025-05-14 22:06:58 +02:00
d8dad0762e chore(gammastep): Get config. from tom (laptop) branch 2025-05-14 21:53:42 +02:00
ae65624398 fix(scripts): bin - Fix secondary screen rotation 2025-02-26 09:24:26 +01:00
3f1072471e chore(bin): Add 2 scripts for screen config. 2025-02-25 11:55:29 +01:00
47368004ab fix(ZSH): plugins - terraform and kubectl aliases added 2024-11-29 18:41:08 +01:00
973d5649fc feat(QtPass): config added 2024-11-29 18:40:52 +01:00
81c0e7e27e feat(ZSH): plugins - add 'wd' function 2024-11-25 13:52:28 +01:00
7d426ae1ab fix(ZSH): instant prompt - fix error with ssh-agent 2024-11-24 13:28:38 +01:00
abcc7e16cb chore(ZSH): Let Oh-my-zsh. Use antidote instead + custom .zshrc 2024-11-24 00:52:10 +01:00
1c40ae6526 Merge forge.o9.re:olivier/dotfiles 2024-11-20 20:13:11 +01:00
87ca1e1efc fix(ZSH): alias - use devu instead of devu42 directory 2024-11-20 20:12:15 +01:00
c87f867b4c feat(ZSH): plugins - activate kubernetes, helm and terraform 2024-11-17 14:22:42 +01:00
f522935be9 fix(ZSH): do not use virtualenvwrapper 2024-10-20 21:05:01 +02:00
db193417c8 feat(alias): New aliases for kubectl and devu 2024-10-20 14:45:34 +02:00
cb4bc3f2d2 feat(Go): Add go PATH in PATH 2024-10-20 14:45:01 +02:00
a25bf962ff BIN: correction de random_wallpaper pour Xorg 2024-10-17 16:35:04 +02:00
fd6b431d51 WARPRC: Nouveaux raccourcis pour les projets ! 2024-10-17 11:48:57 +02:00
718dc045db Config. SSH: Ajout de plusieurs serveurs 2024-10-17 11:48:57 +02:00
9b0160cc0a i3: Amélioration de l'environnement de bureau avec:
* ajout d'Hamsket au bon bureau
* Arrêt de l'utilisation de hamster-indicator
* corrections mineures dans .tmux pour incompatibilité
2024-10-17 11:48:54 +02:00
03a2f6cafd ZSH: Ajout de la configuration de Kubernetes 2024-10-17 11:47:42 +02:00
59586947d9 ZSH: nouvel alias pour la commande ip 2024-10-17 11:47:39 +02:00
b04dfb860a PYENV: ajouté à ZSH 2024-10-17 11:46:55 +02:00
af4057e4ec fix(TMUX): Problème avec une option de TMUX 2024-03-30 22:13:10 +01:00
99c25cf2a8 fix(Raccourcis): Ajout de ~/projets/blog comme raccourci CLI 2023-12-02 12:59:22 +01:00
261eabb7f2 fix(Scripts): Correction sur la vérification wayland/Xorg 2023-12-02 12:57:57 +01:00
484b1cbbd5 ZSH: coloration syntaxique de la commande IP 2021-12-05 06:15:04 +01:00
380fef687a Kitty: Passage à xterm-256color comme valeur par défaut de TERM 2021-12-04 19:48:00 +01:00
29a6649a49 SSH: Mise à jour du serveur OVH (nouveau port 4555) 2021-12-04 19:48:00 +01:00
b70caa2bb8 Variables d'environnement : utilisation de envvars.conf pour Sway (script maison) 2021-08-09 10:01:52 +02:00
ad2e5660dd KITTY: Utilisation d'un thème DARK par défaut 2021-08-02 13:54:21 +02:00
39 changed files with 696 additions and 61 deletions

View File

@ -0,0 +1,48 @@
[General]
addGPGId=true
alwaysOnTop=false
autoPull=true
autoPush=true
autoclearPanelSeconds=10
autoclearSeconds=10
avoidCapitals=false
avoidNumbers=false
clipBoardType=2
displayAsIs=false
gitExecutable=/usr/bin/git
gpgExecutable=/usr/bin/gpg2
hideContent=false
hideOnClose=true
hidePassword=true
lessRandom=false
noLineWrapping=false
passExecutable=/usr/bin/pass
passStore=/home/od/.password-store/
passTemplate=login\nurl
passwordChars="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890~!@#$%^&*()_-+={}[]|:;<>,.?"
passwordCharsselection=0
passwordLength=16
pwgenExecutable=/usr/bin/pwgen
qrencodeExecutable=
startMinimized=false
templateAllFields=false
useAutoclear=false
useAutoclearPanel=false
useGit=true
useMonospace=false
useOtp=false
usePass=true
usePwgen=true
useQrencode=false
useSelection=false
useSymbols=false
useTemplate=true
useTrayIcon=true
version=1.4.0
[mainwindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x5\x81\0\0\x3\x90\0\0\0\0\0\0\0\0\0\0\x5\x81\0\0\x3\x90\0\0\0\0\0\0\0\0\x5\x82\0\0\0\0\0\0\0\0\0\0\x5\x81\0\0\x3\x90)
maximized=false
pos=@Point(0 0)
savestate=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\0\0\0\x5\x82\0\0\x3G\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\0\0\0\xe\0t\0o\0o\0l\0\x42\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)
size=@Size(1410 913)

View File

@ -1,3 +1,3 @@
# Permet à Chromium de se lancer dans Wayland
--enable-features=UseOzonePlatform
--ozone-platform=wayland
#--enable-features=UseOzonePlatform
#--ozone-platform=wayland

View File

@ -1,2 +1,4 @@
# Active wayland pour Firefox
MOZ_ENABLE_WAYLAND=1
# Modifie le comportement JAVA pour PHPStorm
_JAVA_AWT_WM_NONREPARENTING=1

View File

@ -1,5 +1,10 @@
[general]
location-provider=manual
# 5500-6500
temp-day=5700
# 3000-4000
temp-night=3500
adjustment-method=wayland
# Lieu : Neudorf, chez Agnès
[manual]

View File

@ -165,7 +165,7 @@ bindsym $mod+r mode "resize"
assign [class="jetbrains-idea|Code"] 1
assign [class="Google-chrome|Vivaldi-stable|Opera|Firefox|Navigator|Nightly|Chromium"] 2
assign [class="Thunderbird|Mail|jetbrains-phpstorm"] 3
assign [class="Mattermost|mattermost-desktop|Rambox|Slack|Scudcloud|Gitter|Dino"] 4
assign [class="Mattermost|mattermost-desktop|Rambox|Slack|Scudcloud|Gitter|Dino|Hamsket"] 4
##### STATUS BAR
@ -214,7 +214,7 @@ bindsym XF86Sleep exec systemctl suspend
###
# Transparency (need picom)
exec_always --no-startup-id "killall picom; picom -b"
#exec_always --no-startup-id "killall picom; picom -b"
# DBUS daemon (needed for keyboard applet and more I think)
#exec --no-startup-id /usr/lib/gnome-settings-daemon/gnome-settings-daemon
@ -240,7 +240,7 @@ smart_gaps on
exec_always --no-startup-id "kill -9 `ps aux | grep random_wallpaper |grep -v 'grep'| awk '{print $2}'`; random_wallpaper &"
# Hasmter indicator
exec --no-startup-id hamster
#exec --no-startup-id hamster
# Clipit : Presse-papiers pour le bureau
exec --no-startup-id clipit

21
.config/kitty/dark.conf Normal file
View File

@ -0,0 +1,21 @@
background #001e26
foreground #708183
cursor #708183
selection_background #002731
color0 #002731
color8 #465a61
color1 #d01b24
color9 #bd3612
color2 #728905
color10 #465a61
color3 #a57705
color11 #52676f
color4 #2075c7
color12 #708183
color5 #c61b6e
color13 #5856b9
color6 #259185
color14 #81908f
color7 #e9e2cb
color15 #fcf4dc
selection_foreground #001e26

View File

@ -184,7 +184,8 @@ rectangle_select_modifiers ctrl+alt
allow_remote_control no
# The value of the TERM environment variable to set
term xterm-kitty
#term xterm-kitty
term xterm-256color
# The width (in pts) of window borders. Will be rounded to the nearest number of pixels based on screen resolution.
# Note that borders are displayed only when more than one window is visible. They are meant to separate multiple windows.
@ -425,5 +426,5 @@ macos_option_as_alt yes
x11_bell_volume 80
# Ajout du thème Solarized Light sur https://github.com/dexpota/kitty-themes
include ./theme.conf
include ./light.conf

View File

@ -1 +0,0 @@
./Solarized_Dark_-_Patched.conf

View File

@ -217,7 +217,7 @@ label = %percentage_used%%
[module/wlan]
type = internal/network
interface = wlp3s0
interface = wlan0
interval = 3.0
;format-connected = <ramp-signal> <label-connected>
@ -240,7 +240,7 @@ ramp-signal-foreground = ${colors.foreground-alt}
[module/eth]
type = internal/network
interface = eno1
interface = enp3s0
interval = 3.0
format-connected-underline = #55aa55
@ -346,7 +346,8 @@ warn-temperature = 65
; $ for i in /sys/class/hwmon/hwmon*/temp*_input; do echo "$(<$(dirname $i)/name): $(cat ${i%_*}_label 2>/dev/null || echo $(basename ${i%_*})) $(readlink -f $i)"; done
; to find path to desired file
; Default reverts to thermal zone setting
hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input
hwmon-path = /sys/devices/pci0000:00/0000:00:08.1/0000:04:00.0/hwmon/hwmon2/temp1_input
#hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input
;format = <ramp> <label>
format = <label>

View File

@ -226,6 +226,7 @@ bar 1 {
}
}
# Va lancer notamment session.sh pour les variables XDG_SESSION et touti quanti
include /etc/sway/config.d/*
# Ajout pour Olivier

View File

@ -1,6 +1,9 @@
# Presse-papiers
# La base
exec wl-paste -t text --watch clipman store
# Presse-papier primaire : avec sauvegarde de l'historique dans un fichier JSON
## CLIPMAN
exec wl-paste -t text --watch clipman store # Pour clipman
## Presse-papier primaire : avec sauvegarde de l'historique dans un fichier JSON
exec wl-paste -p -t text --watch clipman store -P --histpath="~/.local/share/clipman-primary.json"
# CLIPHIST (multimédia inclus)
#exec wl-paste --watch cliphist store

View File

@ -0,0 +1,11 @@
# Configuration du lanceur d'application
# Apparence d'une fenêtre nommée Launcher
for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 60 ppt, border pixel 10
# Choix d'un lanceur
set $menu exec alacritty --class launcher -T 'Programmes' -e env TERMINAL_COMMAND='swaymsg exec' /usr/bin/sway-launcher-desktop
# On change le raccourci clavier en conséquence
unbindsym $mod+d
bindsym $mod+d exec $menu

View File

@ -1,3 +1,3 @@
# Change background
output * bg /home/od/.config/sway/abstract-blue-background-1920x1200.jpg fill
output * bg /home/od/.config/i3/abstract-blue-background-1920x1200.jpg fill

View File

@ -10,12 +10,12 @@ assign [app_id="jetbrains-idea|Code"] workspace 1
# Bureau 2 (navigation web)
assign [class="Google-chrome|Vivaldi-stable|Opera|Firefox|Navigator|Nightly|Chromium"] workspace 2
assign [app_id="Google-chrome|Vivaldi-stable|Opera|Firefox|Navigator|Nightly|Chromium"] workspace 2
assign [app_id="Google-chrome|Vivaldi-stable|opera|firefox|navigator|nightly|chromium"] workspace 2
# Bureau 3 (Courriel, PHPStorm)
assign [class="Thunderbird|Mail|jetbrains-phpstorm"] workspace 3
assign [app_id="Thunderbird|Mail|jetbrains-phpstorm"] workspace 3
# Bureau 4
assign [class="Mattermost|mattermost-desktop|Rambox|Slack|Scudcloud|Gitter|Dino"] workspace 4
assign [app_id="Mattermost|mattermost-desktop|Rambox|Slack|Scudcloud|Gitter|Dino|dino"] workspace 4
assign [class="Mattermost|mattermost-desktop|Rambox|Slack|Scudcloud|Gitter|Dino|Signal"] workspace 4
assign [app_id="Mattermost|mattermost-desktop|Rambox|Slack|Scudcloud|Gitter|dino|signal"] workspace 4

View File

@ -8,3 +8,6 @@ bindsym XF86AudioStop exec playerctl stop # arrêt musique/film/fichier
# Bouton impression écran
bindsym Print exec grim Images/$(date +'%Y-%m-%d-%s_screenshot.jpg')
# Arrête l'enregistrement d'une vidéo avec wf-recorder
bindsym Ctrl+Shift+BackSpace exec killall -s SIGINT wf-recorder

View File

@ -1,3 +1,9 @@
# Presse-papier
unbindsym $mod+h
## CLIPMAN
bindsym $mod+h exec clipman pick -t wofi
# CLIPHIST
#bindsym $mod+h exec cliphist list | fzf --no-sort | cliphist decode | wl-copy
#bindsym $mod+h exec cliphist list | wofi -S dmenu | cliphist decode | wl-copy

View File

@ -1,5 +1,5 @@
# Économie des yeux (48.5680685:7.7709942 = Neudorf, rue de Fegersheim)
exec gammastep-indicator
exec_always "killall wlsunset ; wlsunset -t 3500 -T 5700 -l 48.5 -L 7.7 &"
# Notifications de bureau
exec dunst

View File

@ -23,7 +23,7 @@
"format": "<span style=\"italic\">{}</span>"
},
"tray": {
// "icon-size": 21,
"icon-size": 21,
"spacing": 10
},
"clock": {

View File

@ -0,0 +1,26 @@
#!/usr/bin/env zsh
# Automatic connection
mkdir -p "${HOME}/etc/ssh";
function ssh-procure-launch-agent {
eval `ssh-agent -s -a ~/etc/ssh/ssh-agent-socket`;
ssh-add;
}
if [ ! $SSH_AGENT_PID ]; then
if [ -e ~/etc/ssh/ssh-agent-socket ] ; then
SSH_AGENT_PID=`ps -fC ssh-agent |grep 'etc/ssh/ssh-agent-socket' |sed -r 's/^\S+\s+(\S+).*$/\1/'`;
if [[ $SSH_AGENT_PID =~ [0-9]+ ]]; then
# in this case the agent has already been launched and we are just attaching to it.
##++ It should check that this pid is actually active & belongs to an ssh instance
export SSH_AGENT_PID;
SSH_AUTH_SOCK=~/etc/ssh/ssh-agent-socket; export SSH_AUTH_SOCK;
else
# in this case there is no agent running, so the socket file is left over from a graceless agent termination.
rm ~/etc/ssh/ssh-agent-socket;
ssh-procure-launch-agent;
fi;
else
ssh-procure-launch-agent;
fi;
fi;

View File

@ -68,7 +68,7 @@ ZSH_THEME="powerlevel10k/powerlevel10k"
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git httpie ng npm nvm pass pip sudo wd)
plugins=(git httpie ng npm nvm pass pip sudo wd pyenv kubectl helm terraform)
source $ZSH/oh-my-zsh.sh
@ -77,6 +77,26 @@ POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
POWERLEVEL9K_SHORTEN_DELIMITER=""
POWERLEVEL9K_SHORTEN_STRATEGY="truncate_from_right"
#compdef gitlab-ci-local
###-begin-gitlab-ci-local-completions-###
#
# yargs command completion script
#
# Installation: gitlab-ci-local completion >> ~/.zshrc
# or gitlab-ci-local completion >> ~/.zprofile on OSX.
#
_gitlab-ci-local_yargs_completions()
{
local reply
local si=$IFS
IFS=$'
' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" gitlab-ci-local --get-yargs-completions "${words[@]}"))
IFS=$si
_describe 'values' reply
}
compdef _gitlab-ci-local_yargs_completions gitlab-ci-local
###-end-gitlab-ci-local-completions-###
# User configuration
export PAGER=most
export BROWSER=elinks
@ -87,6 +107,7 @@ export PYTHONWARNINGS="ignore::DeprecationWarning"
#export FLASK_SKIP_DOTENV=1 ## make problems with poetry and flask applications
export PIPENV_QUIET=1 # enlève les courtesy notice
export ENABLE_WARNINGS=false # enlève les warnings dans le setup RERO-ils
export KUBECONFIG=$HOME/kubeconfig
# You may need to manually set your language environment
export LANG=fr_FR.UTF-8
@ -136,35 +157,15 @@ alias pyt='poetry run pytest -vvs --no-cov --disable-warnings'
alias pytc='poetry run pytest -vvs --disable-warnings --cov-report=xml:cov.xml'
# projet rero
alias rero="ALIAS=rero /home/od/projets/rerologik/agnes"
# coloration de la commande IP
alias ip='ip -c'
alias k='kubectl'
alias devu="${HOME}/devu/devu/devu"
alias gcle='gitlab-ci-local'
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ -f ~/.p10k.zsh ]] && source ~/.p10k.zsh
# Connexion automatique
mkdir -p "${HOME}/etc/ssh";
function ssh-procure-launch-agent {
eval `ssh-agent -s -a ~/etc/ssh/ssh-agent-socket`;
ssh-add;
}
if [ ! $SSH_AGENT_PID ]; then
if [ -e ~/etc/ssh/ssh-agent-socket ] ; then
SSH_AGENT_PID=`ps -fC ssh-agent |grep 'etc/ssh/ssh-agent-socket' |sed -r 's/^\S+\s+(\S+).*$/\1/'`;
if [[ $SSH_AGENT_PID =~ [0-9]+ ]]; then
# in this case the agent has already been launched and we are just attaching to it.
##++ It should check that this pid is actually active & belongs to an ssh instance
export SSH_AGENT_PID;
SSH_AUTH_SOCK=~/etc/ssh/ssh-agent-socket; export SSH_AUTH_SOCK;
else
# in this case there is no agent running, so the socket file is left over from a graceless agent termination.
rm ~/etc/ssh/ssh-agent-socket;
ssh-procure-launch-agent;
fi;
else
ssh-procure-launch-agent;
fi;
fi;
# Desktop specificities for development
case $HOST in
lueur | baloo | sam)
@ -175,6 +176,7 @@ case $HOST in
source /usr/share/nvm/init-nvm.sh
# Virtualenv (for Python development)
export WORKON_HOME=~/.virtualenvs
source /usr/bin/virtualenvwrapper.sh
#source /usr/bin/virtualenvwrapper.sh
;;
esac

View File

@ -1,5 +1,9 @@
emulate sh -c '. ~/.profile'
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
# Start X automatically
if systemctl -q is-active graphical.target && [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then
exec startx

View File

@ -0,0 +1,38 @@
#!/bin/zsh
#
# .zsh_plugins.txt - antidote plugins file
#
# Completions
mattmc3/ez-compinit
zsh-users/zsh-completions kind:fpath path:src
aloxaf/fzf-tab # Remove if you don't use fzf
# Completion styles
belak/zsh-utils path:completion/functions kind:autoload post:compstyle_zshzoo_setup
# Keybindings
belak/zsh-utils path:editor
# History
belak/zsh-utils path:history
# Prompt
romkatv/powerlevel10k
# Utilities
belak/zsh-utils path:utility
romkatv/zsh-bench kind:path
ohmyzsh/ohmyzsh path:plugins/extract
# a kind of "cd" with shortcuts
mfaerevaag/wd
# Aliases
#ohmyzsh/ohmyzsh path:plugins/helm # semble ne pas fonctionner
ohmyzsh/ohmyzsh path:plugins/kubectl
ohmyzsh/ohmyzsh path:plugins/terraform
# Other Fish-like features
zdharma-continuum/fast-syntax-highlighting # Syntax highlighting
zsh-users/zsh-autosuggestions # Auto-suggestions
zsh-users/zsh-history-substring-search # Up/Down to search history

40
.config/zsh/.zshrc Normal file
View File

@ -0,0 +1,40 @@
#!/usr/bin/env zsh
# Scripts that should be loaded before instant prompt
# because they ask something in prompt
source ${ZDOTDIR:-$HOME}/.before.zshrc.zsh
# Enable Powerlevel10k instant prompt. Should stay close to the top of .zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
# Load fzf
source /usr/share/fzf/completion.zsh
source /usr/share/fzf/key-bindings.zsh
# Clone antidote if necessary.
if [[ ! -d ${ZDOTDIR:-$HOME}/.antidote ]]; then
git clone https://github.com/mattmc3/antidote ${ZDOTDIR:-$HOME}/.antidote
fi
# Create an amazing Zsh config using antidote plugins.
source ${ZDOTDIR:-$HOME}/.antidote/antidote.zsh
antidote load
# Enlève le prompt de droite après avoir appuyé sur Entrée
setopt transient_rprompt
# Source anything in .zshrc.d.
for _rc in ${ZDOTDIR:-$HOME}/.zshrc.d/*.zsh; do
# Ignore tilde files.
if [[ $_rc:t != '~'* ]]; then
source "$_rc"
fi
done
unset _rc
# To customize prompt, run `p10k configure` or edit .p10k.zsh.
[[ ! -f ${ZDOTDIR:-$HOME}/.p10k.zsh ]] || source ${ZDOTDIR:-$HOME}/.p10k.zsh

View File

@ -0,0 +1,241 @@
#!/usr/bin/env zsh
# editor
alias e="${EDITOR}"
alias r="${EDITOR} -R"
alias sm="sublime_merge"
alias vi="${EDITOR}"
# pagination
alias cat='bat'
# system
alias mem='free -mt'
alias df='df -hT'
# navigation
alias ls='eza'
alias ll='eza -lah --group --smart-group --icons'
alias l='eza -F'
# web
alias https='http --verify=no --default-scheme=https'
# search
alias rgrep='rg --no-ignore'
# add colors to some commands
alias diff='colordiff'
export GREP_COLORS='ms=01;33:mc=01;33:s1=:cx=:fn=37;ln=32:bn=32:se=36'
alias grep='grep --color'
alias ip='ip -c'
# dotfiles
alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
# be careful!
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# pytest
alias pyt='poetry run pytest -vvs --no-cov --disable-warnings'
alias pytc='poetry run pytest -vvs --disable-warnings --cov-report=xml:cov.xml'
# k8s
alias k='kubectl'
# miscellaneous
alias devu="${HOME}/devu/devu/devu"
# git
alias g='git'
alias ga='git add'
alias gaa='git add --all'
alias gam='git am'
alias gama='git am --abort'
alias gamc='git am --continue'
alias gams='git am --skip'
alias gamscp='git am --show-current-patch'
alias gap='git apply'
alias gapa='git add --patch'
alias gapt='git apply --3way'
alias gau='git add --update'
alias gav='git add --verbose'
alias gb='git branch'
alias gbD='git branch --delete --force'
alias gba='git branch --all'
alias gbd='git branch --delete'
alias gbl='git blame -w'
alias gbm='git branch --move'
alias gbnm='git branch --no-merged'
alias gbr='git branch --remote'
alias gbs='git bisect'
alias gbsb='git bisect bad'
alias gbsg='git bisect good'
alias gbsn='git bisect new'
alias gbso='git bisect old'
alias gbsr='git bisect reset'
alias gbss='git bisect start'
alias gc='git commit --verbose'
alias 'gc!'='git commit --verbose --amend'
alias gcB='git checkout -B'
alias gca='git commit --verbose --all'
alias 'gca!'='git commit --verbose --all --amend'
alias gcam='git commit --all --message'
alias 'gcan!'='git commit --verbose --all --no-edit --amend'
alias 'gcann!'='git commit --verbose --all --date=now --no-edit --amend'
alias 'gcans!'='git commit --verbose --all --signoff --no-edit --amend'
alias gcas='git commit --all --signoff'
alias gcasm='git commit --all --signoff --message'
alias gcb='git checkout -b'
alias gcd='git checkout $(git_develop_branch)'
alias gcf='git config --list'
alias gcl='git clone --recurse-submodules'
alias gclean='git clean --interactive -d'
alias gclf='git clone --recursive --shallow-submodules --filter=blob:none --also-filter-submodules'
alias gcm='git checkout $(git_main_branch)'
alias gcmsg='git commit --message'
alias gcn='git commit --verbose --no-edit'
alias 'gcn!'='git commit --verbose --no-edit --amend'
alias gco='git checkout'
alias gcor='git checkout --recurse-submodules'
alias gcount='git shortlog --summary --numbered'
alias gcp='git cherry-pick'
alias gcpa='git cherry-pick --abort'
alias gcpc='git cherry-pick --continue'
alias gcs='git commit --gpg-sign'
alias gcsm='git commit --signoff --message'
alias gcss='git commit --gpg-sign --signoff'
alias gcssm='git commit --gpg-sign --signoff --message'
alias gd='git diff'
alias gdca='git diff --cached'
alias gdct='git describe --tags $(git rev-list --tags --max-count=1)'
alias gdcw='git diff --cached --word-diff'
alias gds='git diff --staged'
alias gdt='git diff-tree --no-commit-id --name-only -r'
alias gdup='git diff @{upstream}'
alias gdw='git diff --word-diff'
alias gf='git fetch'
alias gfa='git fetch --all --tags --prune --jobs=10'
alias gfg='git ls-files | grep'
alias gfo='git fetch origin'
alias gg='git gui citool'
alias gga='git gui citool --amend'
alias ggpull='git pull origin "$(git_current_branch)"'
alias ggpush='git push origin "$(git_current_branch)"'
alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)'
alias ghh='git help'
alias gignore='git update-index --assume-unchanged'
alias gignored='git ls-files -v | grep "^[[:lower:]]"'
alias git-svn-dcommit-push='git svn dcommit && git push github $(git_main_branch):svntrunk'
alias gl='git pull'
alias glg='git log --stat'
alias glgg='git log --graph'
alias glgga='git log --graph --decorate --all'
alias glgm='git log --graph --max-count=10'
alias glgp='git log --stat --patch'
alias glo='git log --oneline --decorate'
alias glod='git log --graph --pretty="%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset"'
alias glods='git log --graph --pretty="%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset" --date=short'
alias glog='git log --oneline --decorate --graph'
alias gloga='git log --oneline --decorate --graph --all'
alias glol='git log --graph --pretty="%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset"'
alias glola='git log --graph --pretty="%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset" --all'
alias glols='git log --graph --pretty="%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset" --stat'
alias gluc='git pull upstream $(git_current_branch)'
alias glum='git pull upstream $(git_main_branch)'
alias gm='git merge'
alias gma='git merge --abort'
alias gmc='git merge --continue'
alias gmff='git merge --ff-only'
alias gmom='git merge origin/$(git_main_branch)'
alias gms='git merge --squash'
alias gmtl='git mergetool --no-prompt'
alias gmtlvim='git mergetool --no-prompt --tool=vimdiff'
alias gmum='git merge upstream/$(git_main_branch)'
alias gp='git push'
alias gpd='git push --dry-run'
alias gpf='git push --force-with-lease --force-if-includes'
alias 'gpf!'='git push --force'
alias gpoat='git push origin --all && git push origin --tags'
alias gpod='git push origin --delete'
alias gpr='git pull --rebase'
alias gpra='git pull --rebase --autostash'
alias gprav='git pull --rebase --autostash -v'
alias gpristine='git reset --hard && git clean --force -dfx'
alias gprom='git pull --rebase origin $(git_main_branch)'
alias gpromi='git pull --rebase=interactive origin $(git_main_branch)'
alias gprum='git pull --rebase upstream $(git_main_branch)'
alias gprumi='git pull --rebase=interactive upstream $(git_main_branch)'
alias gprv='git pull --rebase -v'
alias gpsup='git push --set-upstream origin $(git_current_branch)'
alias gpsupf='git push --set-upstream origin $(git_current_branch) --force-with-lease --force-if-includes'
alias gpu='git push upstream'
alias gpv='git push --verbose'
alias gr='git remote'
alias gra='git remote add'
alias grb='git rebase'
alias grba='git rebase --abort'
alias grbc='git rebase --continue'
alias grbd='git rebase $(git_develop_branch)'
alias grbi='git rebase --interactive'
alias grbm='git rebase $(git_main_branch)'
alias grbo='git rebase --onto'
alias grbom='git rebase origin/$(git_main_branch)'
alias grbs='git rebase --skip'
alias grbum='git rebase upstream/$(git_main_branch)'
alias grev='git revert'
alias greva='git revert --abort'
alias grevc='git revert --continue'
alias grf='git reflog'
alias grh='git reset'
alias grhh='git reset --hard'
alias grhk='git reset --keep'
alias grhs='git reset --soft'
alias grm='git rm'
alias grmc='git rm --cached'
alias grmv='git remote rename'
alias groh='git reset origin/$(git_current_branch) --hard'
alias grrm='git remote remove'
alias grs='git restore'
alias grset='git remote set-url'
alias grss='git restore --source'
alias grst='git restore --staged'
alias gru='git reset --'
alias grup='git remote update'
alias grv='git remote --verbose'
alias gsb='git status --short --branch'
alias gsd='git svn dcommit'
alias gsh='git show'
alias gsi='git submodule init'
alias gsps='git show --pretty=short --show-signature'
alias gsr='git svn rebase'
alias gss='git status --short'
alias gst='git status'
alias gsta='git stash push'
alias gstaa='git stash apply'
alias gstall='git stash --all'
alias gstc='git stash clear'
alias gstd='git stash drop'
alias gstl='git stash list'
alias gstp='git stash pop'
alias gsts='git stash show --patch'
alias gsu='git submodule update'
alias gsw='git switch'
alias gswc='git switch --create'
alias gswd='git switch $(git_develop_branch)'
alias gswm='git switch $(git_main_branch)'
alias gta='git tag --annotate'
alias gts='git tag --sign'
alias gtv='git tag | sort -V'
alias gunignore='git update-index --no-assume-unchanged'
alias gunwip='git rev-list --max-count=1 --format="%s" HEAD | grep -q "\--wip--" && git reset HEAD~1'
alias gwch='git whatchanged -p --abbrev-commit --pretty=medium'
alias gwip='git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign --message "--wip-- [skip ci]"'
alias gwipe='git reset --hard && git clean --force -df'
alias gwt='git worktree'
alias gwta='git worktree add'
alias gwtls='git worktree list'
alias gwtmv='git worktree move'
alias gwtrm='git worktree remove'

View File

@ -22,10 +22,22 @@ if [ "$0" = "/usr/sbin/lightdm-session" -a "$DESKTOP_SESSION" = "i3" ]; then
export $(gnome-keyring-daemon -s)
fi
# Environnement Pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
# Démarrage de l'environnement préféré
if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
case $HOST in
fuz | fuztest)
variables_file="${HOME}/.config/environment.d/envvars.conf"
if [[ -f "${variables_file}" ]]; then
# charge seulement les lignes sans "#" (non commentées)
for line in `cat "${variables_file}"|grep -Ev '^#'`; do
export "$line"
done
fi
exec sway
;;
*)
@ -33,3 +45,4 @@ if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
;;
esac
fi
# vim: ts=2 sw=2 et nu

View File

@ -26,7 +26,7 @@ Port 22
Host ovh
Hostname 37.187.17.29
User od
Port 22
Port 4555
# ??
Host pi
@ -117,3 +117,48 @@ Host backup
Hostname 37.187.17.29
User root
Port 22
## Serveur salon (Beelink)
Host suc
Hostname 192.168.1.42
User od
Port 22
## Labo K8s
Host deux
Hostname 192.168.1.102
User od
Port 22
Host trois
Hostname 192.168.1.103
User od
Port 22
Host quatre
Hostname 192.168.1.104
User od
Port 22
## Labo K8S AMD64
Host douze
Hostname 192.168.1.112
User nous
Port 22
Host treize
Hostname 192.168.1.113
User maison
Port 22
Host quatorze
Hostname 192.168.1.202
User od
Port 22
## Formation DevOps - Datascientest
Host devu
Hostname 54.229.27.155
User ubuntu
Port 22
IdentityFile ~/.ssh/data_enginering_machine.pem

View File

@ -84,7 +84,7 @@ set -g status-left "#{pane_current_path}"
set -g status-left-length 30
# Activer mon layout par defaut
new -s projets -n dev
splitw -v -p 50 -t dev
neww -n autre
selectw -t dev
#new -s projets -n dev
#splitw -v -p '50' -t dev
#neww -n autre
#selectw -t dev

View File

@ -1,6 +1,11 @@
ans:/home/od/projets/buffet
blog:~/projets/blog
buf:/home/od/projets/buffet
cal:~/projets/effeuillage
cloud:~/freshmile/cloud
fastapi:~/devu/exam_DOSSMANN/fastapi_exam_DOSSMANN
graille:~/projets/graille
ops:~/projets/ops
patchwork:/home/od/projets/patchwork
p:~/freshmile/pulp
ps:~/freshmile/pulp/Seed

42
.zshenv
View File

@ -1,8 +1,40 @@
#!/usr/bin/env zsh
#
# ENVIRONMENT VARIABLES ONLY
# Cf. https://wiki.archlinux.org/title/XDG_Base_Directory
export XDG_CONFIG_HOME=$HOME/.config
# Default editor
export EDITOR='nvim'
# ZSH
export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
export HISTFILE="$ZDOTDIR/.zhistory" # History filepath
export HISTSIZE=10000 # Maximum events for internal history
export SAVEHIST=10000 # Maximum events in history file
# PATH
typeset -U PATH path
path=("$HOME/.local/bin" "$HOME/bin" "/opt/sublime_merge" "$path[@]")
path=("$HOME/.local/bin" "$HOME/bin" "/opt/sublime_merge" "$path[@]", "$(go env GOPATH)/bin")
export PATH
# Autocomplètement supplémentaire (Docker)
if [ -d "$HOME/.zsh/completion" ] ; then
fpath=(~/.zsh/completion $fpath)
fi
# Language environment
export LANG=fr_FR.UTF-8
# Reading / Browse (manpages, websites, etc.)
export PAGER="bat"
export MANPAGER="nvim +Man!"
export BROWSER=elinks
# SSH
export SSH_ASKPASS=qt4-ssh-askpass
# Python
export PYTHONWARNINGS="ignore::DeprecationWarning"
#export FLASK_SKIP_DOTENV=1 ## make problems with poetry and flask applications
export PIPENV_QUIET=1 # enlève les courtesy notice
# k8s
export KUBECONFIG=$HOME/kubeconfig

View File

@ -1,4 +1,8 @@
#!/bin/sh
#
# battery
#
# Penser à modifier la variable dans ~/.profile
HEART_FULL=♥
HEART_EMPTY=♡

23
bin/ecran_framework Executable file
View File

@ -0,0 +1,23 @@
#!/usr/bin/env bash
#
# ecran_framework
#
# Désactive les écrans. N'active que celui du PC portable Framework
#
# Écran principal : Iiyama North America PL2474H 11669V9B05959
# Écran secondaire : Iiyama North America PLX2283H 1159495081860
# Écran PC portable : BOE 0x0BCA Unknown
# PC portable
laptopscreen="'BOE 0x0BCA Unknown'"
# Écran principal
mainscreen="'Iiyama North America PL2474H 11669V9B05959'"
# Écran secondaire
otherscreen="'Iiyama North America PLX2283H 1159495081860'"
# Éteint l'écran principal et secondaire
swaymsg output "${mainscreen}" disable
swaymsg output "${otherscreen}" disable
# Allume l'écran du PC portable
swaymsg output "${laptopscreen}" enable

31
bin/ecran_maison Executable file
View File

@ -0,0 +1,31 @@
#!/usr/bin/env bash
#
# ecran_maison
#
# Active les 2 écrans de la maison sur le Dock Station branché.
#
# Écran principal : Iiyama North America PL2474H 11669V9B05959
# Écran secondaire : Iiyama North America PLX2283H 1159495081860
# Écran PC portable : BOE 0x0BCA Unknown
# PC portable
laptopscreen="'BOE 0x0BCA Unknown'"
# Écran principal
mainscreen="'Iiyama North America PL2474H 11669V9B05959'"
# Écran secondaire
otherscreen="'Iiyama North America PLX2283H 1159495081860'"
# Active l'écran secondaire
swaymsg output "${otherscreen}" enable
# Tourne l'écran de droite de 90°
swaymsg output "${otherscreen}" transform 90 anticlockwise
# Déplace l'écran de droite à 1920px (pour rester à droite)
swaymsg output "${otherscreen}" pos 1920 0
# Active l'écran principal
swaymsg output "${mainscreen}" enable
# Descend l'écran principal vers le bas de 840px
swaymsg output "${mainscreen}" pos 0 840
# Éteint l'écran du PC portable
swaymsg output "${laptopscreen}" disable

15
bin/launcher.sh Normal file
View File

@ -0,0 +1,15 @@
#!/usr/bin/env bash
#
# launcher
#
# TODO: toujours mettre des \n entre les résultats !
res=()
# Find all programs in $PATH.
res+=$(echo -n "$PATH" | xargs -d: -I{} -r -- find -L {} -maxdepth 1 -mindepth 1 -type f -executable -printf '%P\n' 2>/dev/null)
res+=$(echo -e "\ncoucou")
for resultat in "${res[@]}"; do
echo "$resultat"
done | fzf|sh

3
bin/netflix Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash
firefox --kiosk "https://netflix.com/"

View File

@ -2,20 +2,22 @@
# random_wallpaper
#
# Requirement: feh (apt install feh)
# Requirement: feh (apt install feh) - for Xorg
# Requirement: swaybg - for Wayland
directory="$HOME/wallpapers"
minutes=15
PROGRAM=`which feh`
is_wayland=false
# Some tests
if [[ "$XDG_SESSION_TYPE" -eq "wayland" ]]; then
if [[ "${XDG_SESSION_TYPE}" == "wayland" ]]; then
PROGRAM=`which swaymsg`
if [ -z "${PROGRAM}" ]; then
echo "This script needs the swaymsg program."
exit 1
fi
wayland=1
is_wayland=true
elif [ -z "${PROGRAM}" ]; then
echo "This script needs the feh program. Install it."
exit 1
@ -48,7 +50,8 @@ while true; do
# Change background
file="${array_files["$NUMBER"]}"
if [[ -n wayland ]]; then
if "${is_wayland}"; then
# Use of swaybg program (used with swaymsg)
$PROGRAM output "*" bg "$directory/$file" fill
else
feh --bg-fill "$directory/$file"

6
bin/rec1 Executable file
View File

@ -0,0 +1,6 @@
#!/usr/bin/env bash
# change number by 2 for screen 2
number=1
wf-recorder -o $(swaymsg -t get_outputs |grep "DP"|head -n ${number}|cut -d '"' -f 4) -f ~/screens/$(date +'%Y-%m-%d-%s')_screencast.mkv

3
bin/webserver Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash
python3 -m http.server "$@"