Compare commits
48 Commits
master
...
2128028113
| Author | SHA1 | Date | |
|---|---|---|---|
| 2128028113 | |||
| cc6a0673b9 | |||
| c859f7f76c | |||
| 1907fb2547 | |||
| 7b20ee2875 | |||
| 513e401099 | |||
| 1b22fe6116 | |||
| c6a056b77c | |||
| 236954d557 | |||
| f1c9e4a6f3 | |||
| c12185af79 | |||
| 57d3c570c0 | |||
| 8d3a4ff778 | |||
| ffb295d858 | |||
| fb3c3d8c19 | |||
| 41abaf2533 | |||
| b83ced88a5 | |||
| 9723753b5b | |||
| d2d2ddace4 | |||
| d74d7866ff | |||
| 75fdf52586 | |||
|
|
bdb0fd00bd | ||
|
|
2ae40edccc | ||
| 825ff4e770 | |||
| 2b9d974659 | |||
| 2895c33fbc | |||
| 5c3cf1b887 | |||
| a0968ba34a | |||
| 71a0886d46 | |||
|
|
83c9d72afe | ||
|
|
39b45df38e | ||
|
|
55477c5919 | ||
|
|
fd2a274668 | ||
|
|
613f249f64 | ||
|
|
9ac25a152d | ||
|
|
735568adfa | ||
|
|
5a803a578b | ||
|
|
818ac7ef8c | ||
|
|
c22d769ab5 | ||
|
|
96765dbf76 | ||
|
|
6f2e7d20b4 | ||
|
|
b742d63193 | ||
|
|
d78ba65063 | ||
|
|
7231b614fa | ||
|
|
f174a4e558 | ||
|
|
8c18407688 | ||
|
|
a396c0c739 | ||
|
|
d6ecdeb796 |
@@ -13,6 +13,7 @@ users:
|
||||
mail: hannes@hkoerber.de
|
||||
git_gpg_sign: false
|
||||
gpg_agent: true
|
||||
gpg_agent_for_ssh: true
|
||||
gpg_keys:
|
||||
master_key: "0xB5C002530C6A2053"
|
||||
environment:
|
||||
@@ -30,6 +31,8 @@ screen:
|
||||
9: DisplayPort-0
|
||||
0: DisplayPort-0
|
||||
|
||||
screencfgs: []
|
||||
|
||||
workspace:
|
||||
|
||||
environment:
|
||||
@@ -39,6 +42,6 @@ environment:
|
||||
MACHINE_HAS_STEAM: "true"
|
||||
MACHINE_HAS_DISCORD: "true"
|
||||
MACHINE_HAS_RESTIC_BACKUP: "false"
|
||||
MACHINE_DEFAULT_SCREENPROFILE: "ares"
|
||||
MACHINE_HAS_ELEMENT: "true"
|
||||
MACHINE_RESOLUTION_X: "2560"
|
||||
MACHINE_RESOLUTION_Y: "1440"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
font_size: 11
|
||||
letter_space: 0
|
||||
terminal_binary: urxvt
|
||||
terminal_binary: alacritty
|
||||
|
||||
users:
|
||||
- name: hannes-work
|
||||
@@ -12,18 +12,24 @@ users:
|
||||
mail: hannes.koerber@tradebyte.com
|
||||
git_gpg_sign: false
|
||||
gpg_agent: false
|
||||
gpg_agent_for_ssh: false
|
||||
environment:
|
||||
MACHINE_HAS_NEXTCLOUD: "false"
|
||||
MACHINE_HAS_RESTIC_BACKUP: "true"
|
||||
MACHINE_HAS_ELEMENT: "false"
|
||||
- name: hannes-private
|
||||
group: tpp
|
||||
vt: 2
|
||||
mail: hannes@hkoerber.de
|
||||
git_gpg_sign: false
|
||||
gpg_agent: true
|
||||
gpg_agent_for_ssh: true
|
||||
gpg_keys:
|
||||
master_key: "0xB5C002530C6A2053"
|
||||
environment:
|
||||
MACHINE_HAS_NEXTCLOUD: "true"
|
||||
MACHINE_HAS_RESTIC_BACKUP: "false"
|
||||
MACHINE_HAS_ELEMENT: "true"
|
||||
|
||||
screen:
|
||||
1: DP-1-1
|
||||
@@ -47,9 +53,12 @@ workspace:
|
||||
9: music
|
||||
10: pim
|
||||
|
||||
screencfgs:
|
||||
- name: three-screens
|
||||
key: F3
|
||||
|
||||
environment:
|
||||
MACHINE_TYPE: "laptop"
|
||||
MACHINE_HAS_KEEPASSX: "true"
|
||||
MACHINE_HAS_RESTIC_BACKUP: "true"
|
||||
MACHINE_RESOLUTION_X: "1920"
|
||||
MACHINE_RESOLUTION_Y: "1080"
|
||||
|
||||
@@ -6,6 +6,7 @@ Wants=blueman.service
|
||||
Wants=discord.service
|
||||
Wants=dpms.service
|
||||
Wants=dunst.service
|
||||
Wants=element.service
|
||||
Wants=firefox.service
|
||||
Wants=gpg-agent.service
|
||||
Wants=gnome-keyring.service
|
||||
@@ -18,6 +19,7 @@ Wants=pasystray.service
|
||||
Wants=redshift.service
|
||||
Wants=restic.timer
|
||||
Wants=screencfg.service
|
||||
Wants=signal.service
|
||||
Wants=spotify.service
|
||||
Wants=steam.service
|
||||
Wants=touchpad.service
|
||||
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/blueman-applet
|
||||
ExecStart=/usr/bin/env blueman-applet
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
ConditionEnvironment=MACHINE_HAS_DISCORD=true
|
||||
ConditionPathExists=%h/.var/run/features/discord
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/discord
|
||||
ExecStart=/usr/bin/env discord
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -4,5 +4,6 @@ After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=xset s off
|
||||
ExecStart=xset dpms 0 0 300
|
||||
ExecStart=/usr/bin/env xset s off
|
||||
ExecStart=/usr/bin/env xset dpms 0 0 300
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/dunst -config %h/.config/dunstrc
|
||||
ExecStart=/usr/bin/env dunst -config %h/.config/dunstrc
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
10
autostart/services/element.service
Normal file
10
autostart/services/element.service
Normal file
@@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
After=i3.service
|
||||
|
||||
ConditionPathExists=%h/.var/run/features/element
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/env element-desktop
|
||||
PassEnvironment=DISPLAY
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/firefox --setDefaultBrowser -P default
|
||||
ExecStart=/usr/bin/env firefox --setDefaultBrowser -P default
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -4,3 +4,4 @@ After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/env gnome-keyring-daemon --start --foreground --components secrets
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -4,4 +4,5 @@ After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
ExecStart=/usr/bin/gpg-agent --homedir %h/.gnupg --no-detach --daemon
|
||||
ExecStart=/usr/bin/env gpg-agent --homedir %h/.gnupg --no-detach --daemon
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[Service]
|
||||
Type=exec
|
||||
ExecStart=i3 --config %h/.i3/config
|
||||
Type=simple
|
||||
ExecStart=/usr/bin/env i3 --config %h/.i3/config
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
Restart=no
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
ConditionEnvironment=MACHINE_HAS_KEEPASSX=true
|
||||
ConditionPathExists=%h/.var/run/features/keepassx
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/keepassx --keyfile %h/.secret/main.key %h/.secret/main.kdbx
|
||||
ExecStart=/usr/bin/env keepassx --keyfile %h/.secret/main.key %h/.secret/main.kdbx
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -4,6 +4,7 @@ After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/setxkbmap -layout de -variant nodeadkeys
|
||||
ExecStart=/usr/bin/xset r rate 150 50
|
||||
ExecStart=/usr/bin/env setxkbmap -layout de -variant nodeadkeys
|
||||
ExecStart=/usr/bin/env xset r rate 150 50
|
||||
RemainAfterExit=true
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
ConditionEnvironment=MACHINE_TYPE=laptop
|
||||
ConditionPathExists=%h/.var/run/features/machine_is_laptop
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/bash -c 'grep "^${ACPI_LID_NAME}.*enabled" /proc/acpi/wakeup && echo " ${ACPI_LID_NAME}" | sudo tee /proc/acpi/wakeup'
|
||||
ExecStart=/usr/bin/env bash -c 'grep "^${ACPI_LID_NAME}.*enabled" /proc/acpi/wakeup && echo " ${ACPI_LID_NAME}" | sudo tee /proc/acpi/wakeup'
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -3,7 +3,11 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
After=gnome-keyring.service
|
||||
|
||||
ConditionEnvironment=MACHINE_HAS_NEXTCLOUD=true
|
||||
ConditionPathExists=%h/.var/run/features/nextcloud
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/nextcloud --background
|
||||
ExecStart=/usr/bin/env nextcloud --background
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
MemoryHigh=20%
|
||||
MemoryMax=30%
|
||||
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/nm-applet
|
||||
ExecStart=/usr/bin/env nm-applet
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/pasystray
|
||||
ExecStart=/usr/bin/env pasystray
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/redshift-gtk -c %h/.config/redshift.conf
|
||||
ExecStart=/usr/bin/env redshift-gtk -c %h/.config/redshift.conf
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
[Unit]
|
||||
ConditionEnvironment=MACHINE_HAS_RESTIC_BACKUP=true
|
||||
ConditionPathExists=%h/.var/run/features/restic_backup
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=%h/bin/restic-backup
|
||||
RemainAfterExit=true
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -3,6 +3,4 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Timer]
|
||||
OnCalendar=Mon..Fri 09:00:00
|
||||
OnCalendar=Mon..Fri 12:00:00
|
||||
OnCalendar=Mon..Fri 16:00:00
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
ConditionEnvironment=MACHINE_DEFAULT_SCREENPROFILE
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
@@ -9,5 +8,6 @@ Type=oneshot
|
||||
|
||||
# > The command to execute may contain spaces, but control characters are not
|
||||
# > allowed.
|
||||
ExecStart=bash -c '%h/.screencfg/${MACHINE_DEFAULT_SCREENPROFILE}.sh'
|
||||
ExecStart=/usr/bin/env screencfg "%h/.screencfg/%H/default.yml"
|
||||
RemainAfterExit=true
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
7
autostart/services/signal.service
Normal file
7
autostart/services/signal.service
Normal file
@@ -0,0 +1,7 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/env signal-desktop
|
||||
PassEnvironment=DISPLAY
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/spotify
|
||||
ExecStart=/usr/bin/env spotify
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -3,7 +3,8 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
After=i3.service
|
||||
|
||||
ConditionEnvironment=MACHINE_HAS_STEAM=true
|
||||
ConditionPathExists=%h/.var/run/features/steam
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/steam
|
||||
ExecStart=/usr/bin/env steam
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
[Unit]
|
||||
BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
ConditionEnvironment=MACHINE_TYPE=laptop
|
||||
ConditionPathExists=%h/.var/run/features/machine_is_laptop
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/synclient VertEdgeScroll=0
|
||||
ExecStart=/usr/bin/synclient VertTwoFingerScroll=1
|
||||
ExecStart=/usr/bin/synclient MaxSpeed=2.2
|
||||
ExecStart=/usr/bin/synclient AccelFactor=0.08
|
||||
ExecStart=/usr/bin/synclient TapButton1=1
|
||||
ExecStart=/usr/bin/synclient CoastingSpeed=0
|
||||
ExecStart=/usr/bin/synclient PalmDetect=1
|
||||
ExecStart=/usr/bin/synclient PalmMinWidth=20
|
||||
ExecStart=/usr/bin/synclient PalmMinZ=1
|
||||
ExecStart=/usr/bin/env synclient VertEdgeScroll=0
|
||||
ExecStart=/usr/bin/env synclient VertTwoFingerScroll=1
|
||||
ExecStart=/usr/bin/env synclient MaxSpeed=2.2
|
||||
ExecStart=/usr/bin/env synclient AccelFactor=0.08
|
||||
ExecStart=/usr/bin/env synclient TapButton1=1
|
||||
ExecStart=/usr/bin/env synclient CoastingSpeed=0
|
||||
ExecStart=/usr/bin/env synclient PalmDetect=1
|
||||
ExecStart=/usr/bin/env synclient PalmMinWidth=20
|
||||
ExecStart=/usr/bin/env synclient PalmMinZ=1
|
||||
RemainAfterExit=true
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/setrandom --recursive --onlylarge --mode=stretch /usr/share/wallpapers
|
||||
ExecStart=/usr/bin/env setrandom --recursive --onlylarge --mode=stretch /usr/share/wallpapers
|
||||
RemainAfterExit=true
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -4,5 +4,6 @@ After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/xrdb -merge -I%h %h/.Xresources
|
||||
ExecStart=/usr/bin/env xrdb -merge -I%h %h/.Xresources
|
||||
RemainAfterExit=true
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -3,4 +3,5 @@ BindsTo=autostart.target
|
||||
After=windowmanager.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/yubikey-touch-detector -libnotify
|
||||
ExecStart=/usr/bin/env yubikey-touch-detector -libnotify
|
||||
PassEnvironment=DISPLAY
|
||||
|
||||
@@ -31,7 +31,7 @@ args = parser.parse_args()
|
||||
config_path = args.config
|
||||
|
||||
try:
|
||||
config = yaml.load(open(config_path))
|
||||
config = yaml.safe_load(open(config_path))
|
||||
except FileNotFoundError:
|
||||
fail("File {0} not found".format(config_path))
|
||||
|
||||
@@ -54,6 +54,8 @@ for output in config['outputs']:
|
||||
# cmd.append('--auto')
|
||||
for k, v in output['opts'].items():
|
||||
cmd.extend(['--{}'.format(k), str(v)])
|
||||
for k,v in output.get('set', {}).items():
|
||||
cmd.extend(['--set', k, v])
|
||||
|
||||
run(cmd)
|
||||
run(['i3-msg', 'restart'])
|
||||
|
||||
19
detect-missing-packages.py
Executable file
19
detect-missing-packages.py
Executable file
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import yaml
|
||||
from pprint import pprint
|
||||
|
||||
package_file = "./packages.yml"
|
||||
|
||||
apps = yaml.safe_load(open(package_file, 'r'))
|
||||
|
||||
missing_config = {}
|
||||
|
||||
for appname, appconfig in apps['packages']['list'].items():
|
||||
for distro, packagelist in appconfig.items():
|
||||
if len(packagelist) == 0:
|
||||
if distro not in missing_config.keys():
|
||||
missing_config[distro] = []
|
||||
missing_config[distro].append(appname)
|
||||
|
||||
print(yaml.dump(missing_config))
|
||||
@@ -14,6 +14,7 @@ dotfiles:
|
||||
to: .gnupg/dirmngr.conf
|
||||
- from: gnupg/gpg-agent.conf
|
||||
to: .gnupg/gpg-agent.conf
|
||||
template: true
|
||||
- from: gnupg/gpg.conf
|
||||
to: .gnupg/gpg.conf
|
||||
template: true
|
||||
@@ -60,8 +61,10 @@ dotfiles:
|
||||
to: .config/rofi/config
|
||||
- from: gtk/gtk-3.0.ini
|
||||
to: .config/gtk-3.0/settings.ini
|
||||
template: true
|
||||
- from: gtk/gtkrc-2.0
|
||||
to: .gtkrc-2.0
|
||||
template: true
|
||||
- from: qt/qt5ct.conf
|
||||
to: .config/qt5ct/qt5ct.conf
|
||||
- from: screencfg
|
||||
|
||||
@@ -4,6 +4,8 @@ default-cache-ttl-ssh 60480000
|
||||
max-cache-ttl 34560000
|
||||
max-cache-ttl-ssh 34560000
|
||||
|
||||
{% if user.gpg_agent_for_ssh %}
|
||||
enable-ssh-support
|
||||
{% endif %}
|
||||
|
||||
pinentry-program /usr/bin/pinentry-qt
|
||||
@@ -1,7 +1,7 @@
|
||||
[Settings]
|
||||
gtk-theme-name=Breeze
|
||||
gtk-icon-theme-name=breeze-dark
|
||||
gtk-font-name=Cantarell 11
|
||||
gtk-font-name=DejaVu Sans {{ machine.font_size|int - 2 }}
|
||||
gtk-cursor-theme-name=breeze_cursors
|
||||
gtk-cursor-theme-size=0
|
||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||
@@ -1,10 +1,9 @@
|
||||
# DO NOT EDIT! This file will be overwritten by LXAppearance.
|
||||
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
|
||||
|
||||
include "/home/hannes/.gtkrc-2.0.mine"
|
||||
gtk-theme-name="Breeze"
|
||||
gtk-icon-theme-name="breeze-dark"
|
||||
gtk-font-name="Cantarell 11"
|
||||
gtk-font-name="DejaVu Sans {{ machine.font_size|int - 2 }}"
|
||||
gtk-cursor-theme-name="breeze_cursors"
|
||||
gtk-cursor-theme-size=0
|
||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||
15
i3/config.j2
15
i3/config.j2
@@ -93,6 +93,8 @@
|
||||
|
||||
set $kill Shift+Q
|
||||
|
||||
set $screenshot p
|
||||
|
||||
|
||||
################################################################################
|
||||
### WORKSPACE ASSIGNMENTS ######################################################
|
||||
@@ -120,6 +122,7 @@ assign [class="^Google-chrome$"] $workspace7
|
||||
assign [class="^Chromium$"] $workspace7
|
||||
assign [class="^discord"] $workspace7
|
||||
assign [class="^Steam"] $workspace5
|
||||
for_window [class="^Steam$"] move to workspace $workspace5
|
||||
|
||||
assign [class="^dota2$"] $workspace10
|
||||
assign [class="^Wine$"] $workspace10
|
||||
@@ -212,11 +215,16 @@ assign [class="^Wine$"] $workspace10
|
||||
bindsym F2 exec --no-startup-id ~/.i3/scripts/screenmenu
|
||||
|
||||
bindsym $mod+F1 exec --no-startup-id ~/.i3/scripts/i3exit lock
|
||||
bindsym $mod+F2 exec --no-startup-id screencfg ~/.screencfg/all.yml ; exec systemctl --user restart keyboard.service
|
||||
bindsym $mod+F3 exec --no-startup-id screencfg ~/.screencfg/laptop.yml ; exec systemctl --user restart keyboard.service
|
||||
bindsym $mod+F2 exec --no-startup-id screencfg ~/.screencfg/{{ ansible_hostname }}/default.yml ; exec systemctl --user restart keyboard.service
|
||||
{% for screencfg in machine.screencfgs -%}
|
||||
bindsym $mod+{{ screencfg.key }} exec --no-startup-id screencfg ~/.screencfg/{{ ansible_hostname }}/{{ screencfg.name }}.yml ; exec systemctl --user restart keyboard.service
|
||||
{% endfor -%}
|
||||
bindsym $mod+F4 exec --no-startup-id ~/.i3/scripts/i3exit suspend
|
||||
bindsym $mod+Home exec --no-startup-id ~/.i3/scripts/shutdown-menu
|
||||
|
||||
bindsym $mod+$screenshot exec --no-startup-id sh -c 'maim | xclip -selection clipboard -t image/png'
|
||||
bindsym $mod+Shift+$screenshot exec --no-startup-id sh -c 'maim --select | xclip -selection clipboard -t image/png'
|
||||
|
||||
bindsym $mod+Shift+v exec --no-startup-id redshift-toggle
|
||||
|
||||
bindsym $mod+Shift+$scratchpad move scratchpad
|
||||
@@ -336,9 +344,6 @@ bindsym XF86AudioPrev exec $scriptdir/spotify-control previous
|
||||
bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 8 ; exec --no-startup-id $scriptdir/update-status
|
||||
bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 8 ; exec --no-startup-id $scriptdir/update-status
|
||||
|
||||
bindsym $mod+o exec --no-startup-id xautorandr ; exec --no-startup-id kill -SIGUSR2 $(cat $RUNDIR/wallchanger.$XDG_SESSION_ID.pid)'"
|
||||
bindsym $mod+p exec --no-startup-id kill -SIGUSR1 $(cat $RUNDIR/wallchanger.$XDG_SESSION_ID.pid)
|
||||
|
||||
bindsym $mod+m exec --no-startup-id $scriptdir/pa-volume mute-toggle-mic
|
||||
|
||||
##############################################################################
|
||||
|
||||
@@ -47,9 +47,7 @@ sudowrap() {
|
||||
|
||||
_install() {
|
||||
_package="$1" ; shift
|
||||
if [[ $NAME == "Fedora" ]] ; then
|
||||
sudowrap dnf install --assumeyes "${_package}"
|
||||
elif [[ $NAME == "Ubuntu" ]] ; then
|
||||
if [[ $NAME == "Ubuntu" ]] ; then
|
||||
sudowrap apt-get install --assume-yes "${_package}"
|
||||
elif [[ $NAME == "Arch Linux" ]] ; then
|
||||
sudowrap pacman -S --noconfirm "${_package}"
|
||||
|
||||
171
packages.yml
171
packages.yml
@@ -1,16 +1,6 @@
|
||||
packages:
|
||||
list:
|
||||
build-essentials:
|
||||
fedora:
|
||||
- autoconf
|
||||
- automake
|
||||
- gcc-c++
|
||||
- gcc
|
||||
- ctags
|
||||
- cmake
|
||||
- libtool
|
||||
- elfutils-libelf-devel
|
||||
- maven
|
||||
ubuntu:
|
||||
- build-essential
|
||||
- exuberant-ctags
|
||||
@@ -21,35 +11,24 @@ packages:
|
||||
- maven
|
||||
- base-devel
|
||||
golang:
|
||||
fedora: ["golang", "glibc-static"]
|
||||
ubuntu: ["golang-go"]
|
||||
archlinux: ["go"]
|
||||
make:
|
||||
fedora: ["make"]
|
||||
ubuntu: ["make"]
|
||||
archlinux: ["make"]
|
||||
gdb:
|
||||
fedora: ["gdb"]
|
||||
ubuntu: ["gdb"]
|
||||
archlinux: ["gdb"]
|
||||
strace:
|
||||
fedora: ["strace"]
|
||||
ubuntu: ["strace"]
|
||||
archlinux: ["strace"]
|
||||
sudo:
|
||||
fedora: ["sudo"]
|
||||
ubuntu: ["sudo"]
|
||||
archlinux: ["sudo"]
|
||||
apt:
|
||||
fedora: []
|
||||
ubuntu: ["apt-file"]
|
||||
archlinux: []
|
||||
archlinux: [""]
|
||||
xorg:
|
||||
fedora:
|
||||
- '@base-x'
|
||||
- xorg-x11-drv-synaptics-legacy
|
||||
- xorg-x11-drv-libinput
|
||||
- libinput
|
||||
ubuntu: []
|
||||
archlinux:
|
||||
- xorg-server
|
||||
@@ -61,449 +40,359 @@ packages:
|
||||
- xorg-xset
|
||||
- xorg-xinit
|
||||
dmenu:
|
||||
fedora: ["dmenu"]
|
||||
ubuntu: ["dmenu"]
|
||||
archlinux: ["dmenu"]
|
||||
ansible:
|
||||
fedora: ["ansible"]
|
||||
ubuntu: ["ansible"]
|
||||
archlinux: ["ansible"]
|
||||
xdotool:
|
||||
fedora: ["xdotool"]
|
||||
ubuntu: ["xdotool"]
|
||||
archlinux: ["xdotool"]
|
||||
arandr:
|
||||
fedora: ["arandr"]
|
||||
ubuntu: ["arandr"]
|
||||
archlinux: ["arandr"]
|
||||
borgbackup:
|
||||
fedora: ["borgbackup"]
|
||||
ubuntu: ["borgbackup"]
|
||||
archlinux: ["borgbackup"]
|
||||
docker:
|
||||
fedora: ["docker"]
|
||||
ubuntu: ["docker.io"]
|
||||
archlinux: ["docker", "docker-compose"]
|
||||
font-awesome:
|
||||
fedora: ["fontawesome-fonts", "fontawesome-fonts-web"]
|
||||
ubuntu: ["fonts-font-awesome"]
|
||||
archlinux: ["ttf-font-awesome"]
|
||||
font-inconsolata:
|
||||
fedora: ["levien-inconsolata-fonts"]
|
||||
ubuntu: ["fonts-inconsolata"]
|
||||
archlinux: ["ttf-inconsolata"]
|
||||
font-dejavu:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["ttf-dejavu"]
|
||||
font-libertine:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["ttf-linux-libertine"]
|
||||
font-emoji:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["noto-fonts-emoji"]
|
||||
git:
|
||||
fedora: ["git", "gitk"]
|
||||
ubuntu: ["git", "git-extras", "gitk", "git-email"]
|
||||
# tk required for gitk
|
||||
archlinux: ["git", "tk"]
|
||||
htop:
|
||||
fedora: ["htop"]
|
||||
ubuntu: ["htop"]
|
||||
archlinux: ["htop"]
|
||||
feh:
|
||||
fedora: ["feh"]
|
||||
ubuntu: ["feh"]
|
||||
archlinux: ["feh"]
|
||||
i3:
|
||||
fedora: ["i3"]
|
||||
ubuntu: ["i3"]
|
||||
archlinux: ["i3-wm"]
|
||||
i3lock:
|
||||
fedora: ["i3lock"]
|
||||
ubuntu: ["i3lock"]
|
||||
archlinux: ["i3lock"]
|
||||
pluma:
|
||||
fedora: ["pluma"]
|
||||
ubuntu: ["pluma"]
|
||||
archlinux: ["pluma"]
|
||||
vim:
|
||||
fedora: ["vim-enhanced"]
|
||||
ubuntu: ["vim"]
|
||||
archlinux: ["gvim"]
|
||||
neovim:
|
||||
fedora: ["neovim", "python3-neovim"]
|
||||
ubuntu: ["neovim"]
|
||||
archlinux: ["neovim", "python-pynvim"]
|
||||
network-manager-applet:
|
||||
fedora: ["network-manager-applet"]
|
||||
ubuntu: []
|
||||
archlinux: ["network-manager-applet"]
|
||||
pasystray:
|
||||
fedora: ["pasystray"]
|
||||
ubuntu: ["pasystray"]
|
||||
archlinux: ["pasystray"]
|
||||
redshift:
|
||||
fedora: ["redshift-gtk"]
|
||||
ubuntu: ["redshift-gtk"]
|
||||
archlinux: ["redshift"]
|
||||
pavucontrol:
|
||||
fedora: ["pavucontrol"]
|
||||
ubuntu: ["pavucontrol"]
|
||||
archlinux: ["pavucontrol-qt"]
|
||||
pinentry-qt:
|
||||
fedora: ["pinentry", "pinentry-curses", "pinentry-qt"]
|
||||
ubuntu: ["pinentry-curses", "pinentry-qt"]
|
||||
archlinux: ["pinentry"]
|
||||
pinta:
|
||||
fedora: ["pinta"]
|
||||
ubuntu: ["pinta"]
|
||||
archlinux: ["pinta"]
|
||||
py3status:
|
||||
fedora: ["py3status", "python3-pytz", "python3-tzlocal"]
|
||||
ubuntu: ["py3status", "python3-arrow", "python3-tzlocal"]
|
||||
ubuntu: ["py3status", "python3-arrow", "python3-tzlocal", "python3-pydbus"]
|
||||
archlinux: ["py3status", "python-pytz", "python-tzlocal", "python-dbus", "python-pydbus"]
|
||||
pass:
|
||||
fedora: ["pass"]
|
||||
ubuntu: ["pass"]
|
||||
archlinux: ["pass", "passff-host"]
|
||||
keepassx:
|
||||
fedora: ["keepassx"]
|
||||
ubuntu: ["keepassx"]
|
||||
archlinux: []
|
||||
urxvt:
|
||||
fedora: ["rxvt-unicode-256color"]
|
||||
ubuntu: ["rxvt-unicode-256color"]
|
||||
archlinux: ["rxvt-unicode"]
|
||||
alacritty:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["alacritty"]
|
||||
tmux:
|
||||
fedora: ["tmux"]
|
||||
ubuntu: ["tmux"]
|
||||
archlinux: ["tmux"]
|
||||
screen:
|
||||
fedora: ["screen"]
|
||||
ubuntu: ["screen"]
|
||||
archlinux: ["screen"]
|
||||
zsh:
|
||||
fedora: ["zsh", "zsh-syntax-highlighting"]
|
||||
ubuntu: ["zsh", "zsh-syntax-highlighting"]
|
||||
archlinux: ["zsh", "zsh-syntax-highlighting", "zsh-autosuggestions", "zsh-completions"]
|
||||
zathura:
|
||||
fedora: ["zathura-pdf-mupdf"]
|
||||
ubuntu: ["zathura", "zathura-pdf-poppler"]
|
||||
archlinux: ["zathura", "zathura-pdf-poppler"]
|
||||
pdf:
|
||||
ubuntu: []
|
||||
archlinux: ["ghostscript", "enscript"]
|
||||
pandoc:
|
||||
fedora: ["pandoc"]
|
||||
ubuntu: ["pandoc"]
|
||||
archlinux: ["pandoc", "texlive-core", "texlive-fontsextra", "texlive-latexextra"]
|
||||
libvirt:
|
||||
fedora: ["virt-manager", "libvirt-client"]
|
||||
ubuntu: ["virt-manager", "libvirt-bin"]
|
||||
archlinux: ["virt-manager", "libvirt"]
|
||||
archlinux: ["virt-manager", "libvirt", "dnsmasq", "ebtables"]
|
||||
firefox:
|
||||
fedora: ["firefox"]
|
||||
ubuntu: ["firefox"]
|
||||
archlinux: ["firefox"]
|
||||
ranger:
|
||||
fedora: ["ranger"]
|
||||
ubuntu: ["ranger"]
|
||||
archlinux: ["ranger"]
|
||||
thunar:
|
||||
fedora: ["thunar"]
|
||||
ubuntu: ["thunar"]
|
||||
archlinux: ["thunar"]
|
||||
unclutter:
|
||||
fedora: ["unclutter"]
|
||||
ubuntu: ["unclutter"]
|
||||
archlinux: ["unclutter"]
|
||||
chromium:
|
||||
fedora: ["chromium"]
|
||||
ubuntu: ["chromium-browser"]
|
||||
archlinux: ["chromium"]
|
||||
libreoffice:
|
||||
fedora: ["libreoffice", "libreoffice-langpack-de", "libreoffice-langpack-en"]
|
||||
ubuntu: ["libreoffice"]
|
||||
archlinux: ["libreoffice-fresh", "libreoffice-fresh-de"]
|
||||
qt-theming:
|
||||
fedora: ["breeze-cursor-theme", "breeze-icon-theme"]
|
||||
ubuntu: ["breeze-cursor-theme", "breeze-icon-theme", "breeze"]
|
||||
ubuntu: ["breeze-cursor-theme", "breeze-icon-theme", "breeze", "qt5ct"]
|
||||
archlinux: ["breeze", "breeze-icons", "breeze-grub", "qt5ct"]
|
||||
gtk-theming:
|
||||
fedora: ["breeze-gtk"]
|
||||
ubuntu: ["gtk3-engines-breeze"]
|
||||
ubuntu: ["gtk3-engines-breeze", "lxappearance"]
|
||||
archlinux: ["breeze-gtk", "lxappearance"]
|
||||
xcompmgr:
|
||||
fedora: ["xcompmgr"]
|
||||
ubuntu: ["xcompmgr"]
|
||||
archlinux: ["xcompmgr"]
|
||||
python:
|
||||
fedora: ["python", "python3-devel"]
|
||||
ubuntu: ["python3", "python3-pip", "python3-venv", "virtualenv", "pylint3"]
|
||||
archlinux: ["python3"]
|
||||
python-modules:
|
||||
ubuntu: []
|
||||
archlinux:
|
||||
- python-ruamel-yaml
|
||||
- python-gitpython
|
||||
- python-semver
|
||||
xbacklight:
|
||||
fedora: ["xbacklight"]
|
||||
ubuntu: ["xbacklight"]
|
||||
archlinux: ["xorg-xbacklight"]
|
||||
wireshark:
|
||||
fedora: ["wireshark"]
|
||||
ubuntu: ["wireshark", "wireshark-qt"]
|
||||
archlinux: ["wireshark-cli", "wireshark-qt"]
|
||||
dia:
|
||||
fedora: ["dia"]
|
||||
ubuntu: ["dia"]
|
||||
archlinux: ["dia"]
|
||||
shutter:
|
||||
fedora: ["shutter"]
|
||||
ubuntu: ["shutter"]
|
||||
archlinux: []
|
||||
nmap:
|
||||
fedora: ["nmap"]
|
||||
ubuntu: ["nmap"]
|
||||
archlinux: ["nmap"]
|
||||
openvpn:
|
||||
fedora: ["openvpn"]
|
||||
ubuntu: ["openvpn"]
|
||||
archlinux: ["openvpn"]
|
||||
curl:
|
||||
fedora: ["curl"]
|
||||
ubuntu: ["curl"]
|
||||
archlinux: ["curl"]
|
||||
wget:
|
||||
fedora: ["wget"]
|
||||
ubuntu: ["wget"]
|
||||
archlinux: ["wget"]
|
||||
tree:
|
||||
fedora: ["tree"]
|
||||
ubuntu: ["tree"]
|
||||
archlinux: ["tree"]
|
||||
which:
|
||||
fedora: ["which"]
|
||||
ubuntu: []
|
||||
archlinux: ["which"]
|
||||
zip:
|
||||
fedora: ["zip"]
|
||||
ubuntu: ["zip", "unzip"]
|
||||
archlinux: ["zip", "unzip"]
|
||||
traceroute:
|
||||
fedora: ["traceroute"]
|
||||
ubuntu: ["traceroute"]
|
||||
archlinux: ["traceroute"]
|
||||
tcpdump:
|
||||
fedora: ["tcpdump"]
|
||||
ubuntu: ["tcpdump"]
|
||||
archlinux: ["tcpdump"]
|
||||
tar:
|
||||
fedora: ["tar"]
|
||||
ubuntu: ["tar"]
|
||||
archlinux: ["tar"]
|
||||
rsync:
|
||||
fedora: ["rsync"]
|
||||
ubuntu: ["rsync"]
|
||||
archlinux: ["rsync"]
|
||||
net-tools:
|
||||
fedora: ["net-tools"]
|
||||
ubuntu: ["net-tools"]
|
||||
archlinux: ["net-tools"]
|
||||
ntfs:
|
||||
fedora: ["ntfs-3g", "ntfsprogs"]
|
||||
ubuntu: ["ntfs-3g"]
|
||||
archlinux: ["ntfs-3g"]
|
||||
lsof:
|
||||
fedora: ["lsof"]
|
||||
ubuntu: ["lsof"]
|
||||
archlinux: ["lsof"]
|
||||
iptables:
|
||||
fedora: ["iptables"]
|
||||
ubuntu: ["iptables"]
|
||||
archlinux: ["iptables"]
|
||||
pwgen:
|
||||
fedora: ["pwgen"]
|
||||
ubuntu: ["pwgen"]
|
||||
archlinux: ["pwgen"]
|
||||
gpg:
|
||||
fedora: ["gnupg2", "paperkey", "yubikey-manager"]
|
||||
ubuntu: ["gnupg2"]
|
||||
archlinux: ["gnupg", "paperkey", "yubikey-manager", "yubikey-touch-detector"]
|
||||
networkmanager:
|
||||
fedora: ["NetworkManager", "NetworkManager-wifi"]
|
||||
ubuntu: ["network-manager", "network-manager-openvpn", "network-manager-openconnect"]
|
||||
archlinux: ["networkmanager"]
|
||||
pulseaudio:
|
||||
fedora: ["pulseaudio", "pulseaudio-utils"]
|
||||
ubuntu: ["pulseaudio", "pulseaudio-utils"]
|
||||
archlinux: ["pulseaudio", "pulseaudio-alsa"]
|
||||
iw:
|
||||
fedora: ["iw"]
|
||||
ubuntu: ["iw"]
|
||||
archlinux: ["iw"]
|
||||
cowsay:
|
||||
fedora: ["cowsay"]
|
||||
ubuntu: ["cowsay"]
|
||||
archlinux: ["cowsay"]
|
||||
ruby:
|
||||
fedora: ["ruby", "ruby-devel", "rubygem-bundler"]
|
||||
ubuntu: ["ruby", "ruby-dev", "ruby-bundler"]
|
||||
archlinux: ["ruby"]
|
||||
lxc:
|
||||
fedora: ["lxc"]
|
||||
ubuntu: ["lxc"]
|
||||
archlinux: ["lxc"]
|
||||
acpi:
|
||||
fedora: ["acpi"]
|
||||
ubuntu: ["acpid"]
|
||||
archlinux: ["acpi", "acpid"]
|
||||
npm:
|
||||
fedora: ["npm"]
|
||||
ubuntu: ["npm"]
|
||||
archlinux: ["npm"]
|
||||
xdg:
|
||||
fedora: ["xdg-utils"]
|
||||
ubuntu: ["xdg-utils"]
|
||||
archlinux: ["xdg-utils"]
|
||||
docs:
|
||||
fedora: ["man-pages"]
|
||||
ubuntu: ["manpages"]
|
||||
archlinux: ["man-pages"]
|
||||
compton:
|
||||
fedora: ["compton"]
|
||||
ubuntu: ["compton"]
|
||||
archlinux: []
|
||||
dunst:
|
||||
fedora: ["dunst"]
|
||||
ubuntu: ["dunst"]
|
||||
archlinux: ["dunst"]
|
||||
cloc:
|
||||
fedora: ["cloc"]
|
||||
ubuntu: ["cloc"]
|
||||
archlinux: ["cloc"]
|
||||
bluetooth:
|
||||
fedora: []
|
||||
ubuntu: ["blueman"]
|
||||
archlinux: ["bluez", "bluez-tools", "blueman"]
|
||||
autorandr:
|
||||
fedora: []
|
||||
ubuntu: ["autorandr"]
|
||||
archlinux: ["autorandr"]
|
||||
bwm-ng:
|
||||
fedora: []
|
||||
ubuntu: ["bwm-ng"]
|
||||
archlinux: ["bwm-ng"]
|
||||
virtualbox:
|
||||
fedora: []
|
||||
ubuntu: ["virtualbox"]
|
||||
archlinux: []
|
||||
ssh:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["openssh"]
|
||||
sshfs:
|
||||
fedora: []
|
||||
ubuntu: ["sshfs"]
|
||||
archlinux: ["sshfs"]
|
||||
expect:
|
||||
fedora: []
|
||||
ubuntu: ["expect"]
|
||||
archlinux: ["expect"]
|
||||
inotify:
|
||||
fedora: []
|
||||
ubuntu: ["inotify-tools"]
|
||||
archlinux: ["inotify-tools"]
|
||||
rclone:
|
||||
fedora: ["rclone"]
|
||||
ubuntu: ["rclone"]
|
||||
archlinux: ["rclone"]
|
||||
dnf:
|
||||
fedora: ["python3-dnf"]
|
||||
ubuntu: []
|
||||
archlinux: []
|
||||
rust:
|
||||
fedora: []
|
||||
ubuntu: ["rustc", "cargo"]
|
||||
archlinux: ["rust"]
|
||||
musescore:
|
||||
fedora: []
|
||||
ubuntu: ["musescore"]
|
||||
archlinux: ["musescore"]
|
||||
sipcalc:
|
||||
fedora: []
|
||||
ubuntu: ["sipcalc"]
|
||||
archlinux: ["sipcalc"]
|
||||
rofi:
|
||||
fedora: []
|
||||
ubuntu: ["rofi"]
|
||||
archlinux: ["rofi"]
|
||||
anki:
|
||||
fedora: ["anki"]
|
||||
ubuntu: ["anki"]
|
||||
archlinux: ["anki"]
|
||||
imv:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["imv"]
|
||||
pacman:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["pacman", "pacman-contrib"]
|
||||
steam:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["steam"]
|
||||
man:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["man-db", "man-pages"]
|
||||
discord:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["discord"]
|
||||
nextcloud:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["nextcloud-client"]
|
||||
kwallet:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["kwallet", "kwalletmanager"]
|
||||
wallpapers:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["elementary-wallpapers", "deepin-community-wallpapers"]
|
||||
wallutils:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["wallutils"]
|
||||
pv:
|
||||
fedora: ["pv"]
|
||||
ubuntu: ["pv"]
|
||||
archlinux: ["pv"]
|
||||
stress:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
archlinux: ["stress"]
|
||||
mpris:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
ubuntu: ["stress"]
|
||||
archlinux: ["playerctl"]
|
||||
imagemagick:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
ubuntu: ["imagemagick"]
|
||||
archlinux: ["imagemagick"]
|
||||
mpv:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
ubuntu: ["mpv"]
|
||||
archlinux: ["mpv"]
|
||||
gnome-keyring:
|
||||
fedora: []
|
||||
ubuntu: []
|
||||
ubuntu: ["gnome-keyring"]
|
||||
archlinux: ["gnome-keyring"]
|
||||
element:
|
||||
ubuntu: []
|
||||
archlinux: ["element-desktop"]
|
||||
maim:
|
||||
ubuntu: []
|
||||
archlinux: ["maim"]
|
||||
mkinitcpio:
|
||||
ubuntu: []
|
||||
archlinux: ["mkinitcpio"]
|
||||
terraform:
|
||||
ubuntu: ["terraform"]
|
||||
archlinux: ["terraform"]
|
||||
|
||||
remove:
|
||||
mousepad:
|
||||
fedora: ["mousepad"]
|
||||
ubuntu: ["mousepad"]
|
||||
archlinux: ["mousepad"]
|
||||
|
||||
46
playbook.yml
46
playbook.yml
@@ -17,7 +17,7 @@
|
||||
|
||||
- name: Check for valid distro
|
||||
assert:
|
||||
that: distro in ('fedora', 'ubuntu', 'archlinux')
|
||||
that: distro in ('ubuntu', 'archlinux')
|
||||
|
||||
- block:
|
||||
- block:
|
||||
@@ -43,26 +43,6 @@
|
||||
become: true
|
||||
when: distro == 'ubuntu'
|
||||
|
||||
- block:
|
||||
- name: Update dnf cache
|
||||
dnf:
|
||||
update_cache: true
|
||||
become: true
|
||||
|
||||
- name: Upgrade system
|
||||
dnf:
|
||||
name: '*'
|
||||
state: latest
|
||||
update_cache: false
|
||||
become: true
|
||||
|
||||
- name: Remove unused packages
|
||||
dnf:
|
||||
autoremove: true
|
||||
update_cache: false
|
||||
become: true
|
||||
when: distro == 'fedora'
|
||||
|
||||
- block:
|
||||
- name: enable multilib repository
|
||||
blockinfile:
|
||||
@@ -93,15 +73,6 @@
|
||||
when: distro == 'archlinux'
|
||||
tags: [update_system]
|
||||
|
||||
- name: install selinux specials on fedora
|
||||
dnf:
|
||||
state: installed
|
||||
name:
|
||||
- python3-libselinux
|
||||
- policycoreutils-python-utils
|
||||
become: true
|
||||
when: distro == 'fedora'
|
||||
|
||||
- block:
|
||||
- name: install sudo
|
||||
package:
|
||||
@@ -259,11 +230,6 @@
|
||||
- rebuild initrd
|
||||
when: distro == 'archlinux'
|
||||
|
||||
- set_fact:
|
||||
disable_services:
|
||||
- sshd
|
||||
when: distro == 'fedora'
|
||||
|
||||
- set_fact:
|
||||
disable_services:
|
||||
- ssh
|
||||
@@ -283,16 +249,6 @@
|
||||
become: true
|
||||
when: manage_services|default(true)|bool
|
||||
|
||||
- set_fact:
|
||||
enable_services:
|
||||
- NetworkManager
|
||||
# does not work with fedora 31 due to the switch to cgroups v2:
|
||||
# https://github.com/docker/cli/issues/2104
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1746355#c1
|
||||
# - docker
|
||||
- libvirtd
|
||||
when: distro == 'fedora'
|
||||
|
||||
- set_fact:
|
||||
enable_services:
|
||||
- NetworkManager
|
||||
|
||||
@@ -1,14 +1,9 @@
|
||||
[Appearance]
|
||||
color_scheme_path=/usr/share/qt5ct/colors/airy.conf
|
||||
custom_palette=false
|
||||
icon_theme=breeze
|
||||
standard_dialogs=default
|
||||
style=Fusion
|
||||
|
||||
[Fonts]
|
||||
fixed=@Variant(\0\0\0@\0\0\0\x1e\0\x44\0\x65\0j\0\x61\0V\0u\0 \0L\0G\0\x43\0 \0S\0\x61\0n\0s@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
|
||||
general=@Variant(\0\0\0@\0\0\0\x1e\0\x44\0\x65\0j\0\x61\0V\0u\0 \0L\0G\0\x43\0 \0S\0\x61\0n\0s@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
|
||||
|
||||
[Interface]
|
||||
activate_item_on_single_click=1
|
||||
buttonbox_layout=0
|
||||
@@ -23,6 +18,3 @@ stylesheets=@Invalid()
|
||||
toolbutton_style=4
|
||||
underline_shortcut=1
|
||||
wheel_scroll_lines=3
|
||||
|
||||
[SettingsWindow]
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x88\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x88\0\0\0\0\0\0\0\0\n\0\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x88)
|
||||
|
||||
@@ -3,11 +3,11 @@ ansible-base==2.10.3
|
||||
cffi==1.14.4
|
||||
cryptography==3.2.1
|
||||
ipaddress==1.0.23
|
||||
Jinja2==2.11.2
|
||||
Jinja2==2.11.3
|
||||
jmespath==0.10.0
|
||||
MarkupSafe==1.1.1
|
||||
packaging==20.7
|
||||
pycparser==2.20
|
||||
pyparsing==2.4.7
|
||||
PyYAML==5.3.1
|
||||
PyYAML==5.4
|
||||
six==1.15.0
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -o xtrace
|
||||
|
||||
xrandr --output DisplayPort-0 --mode 2560x1440 --primary --rate 144.00 --set TearFree on
|
||||
8
screencfg/ares/default.yml
Normal file
8
screencfg/ares/default.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
reset: true
|
||||
outputs:
|
||||
- name: DisplayPort-0
|
||||
opts:
|
||||
mode: 2560x1440
|
||||
rate: "144.00"
|
||||
set:
|
||||
TearFree: "on"
|
||||
14
screencfg/tb-hak/default.yml
Normal file
14
screencfg/tb-hak/default.yml
Normal file
@@ -0,0 +1,14 @@
|
||||
reset: false
|
||||
outputs:
|
||||
- name: eDP-1
|
||||
primary: True
|
||||
opts:
|
||||
mode: 1920x1080
|
||||
scale: 1x1
|
||||
pos: "0x0" # beware of hex
|
||||
- name: DP-1-1
|
||||
disable: true
|
||||
- name: DP-1-2
|
||||
disable: true
|
||||
- name: DP-1-3
|
||||
disable: true
|
||||
18
screencfg/tb-hak/three-screens.yml
Normal file
18
screencfg/tb-hak/three-screens.yml
Normal file
@@ -0,0 +1,18 @@
|
||||
reset: true
|
||||
outputs:
|
||||
- name: eDP-1
|
||||
opts:
|
||||
mode: 1920x1080
|
||||
scale: 0.7x0.7
|
||||
pos: "0x0" # beware of hex
|
||||
- name: DP-1-1
|
||||
primary: True
|
||||
opts:
|
||||
mode: 1920x1080
|
||||
right-of: eDP-1
|
||||
reset: true
|
||||
- name: DP-1-2
|
||||
opts:
|
||||
mode: 1920x1080
|
||||
right-of: DP-1-1
|
||||
reset: true
|
||||
@@ -4,7 +4,8 @@ set -o nounset
|
||||
set -o errexit
|
||||
|
||||
tmpdir="$(mktemp -d)"
|
||||
tmpdir=/tmp/dotfiles
|
||||
|
||||
trap "rm -rf ${tmpdir}" EXIT
|
||||
|
||||
git archive --format tar --output "${tmpdir}/dotfiles.tar" HEAD
|
||||
|
||||
@@ -17,19 +18,37 @@ git submodule foreach 'bash -x -c "
|
||||
|
||||
gzip -k -f -v "${tmpdir}/dotfiles.tar"
|
||||
|
||||
exit 1
|
||||
|
||||
test_ares() {
|
||||
if [[ -d "/var/cache/pacman/pkg/" ]] ; then
|
||||
dockeropts=(-v "/var/cache/pacman/pkg/:/var/cache/pacman/pkg_host/")
|
||||
fi
|
||||
docker pull docker.io/library/archlinux:base
|
||||
docker run -ti --rm -v ${tmpdir}/dotfiles.tar.gz:/tmp/dotfiles.tar.gz:ro --hostname ares docker.io/library/archlinux:base sh -c '"
|
||||
docker run \
|
||||
-ti \
|
||||
--rm \
|
||||
-v ${tmpdir}/dotfiles.tar.gz:/tmp/dotfiles.tar.gz:ro \
|
||||
--mount type=tmpfs,destination=/var/cache/pacman/pkg/ \
|
||||
"${dockeropts[@]}" \
|
||||
--hostname ares \
|
||||
docker.io/library/archlinux:base \
|
||||
sh -c '
|
||||
set -o errexit
|
||||
|
||||
# Uncomment CacheDir and append the host pacman cache as cachedir
|
||||
# At worst, the cache directory will be ignored if it does not exist
|
||||
# Pacman will always prefer the first cache directory, so newly downloaded
|
||||
# packages will stay in the container
|
||||
sed -i '"'"'s/^#\?\(CacheDir.*\)/\1\nCacheDir = \/var\/cache\/pacman\/pkg_host\//'"'"' /etc/pacman.conf
|
||||
|
||||
pacman -Syu --noconfirm python3
|
||||
cd $(mktemp -d)
|
||||
tar xf /tmp/dotfiles.tar.gz -C .
|
||||
ANSIBLE_EXTRA_ARGS="-e manage_services=false" ./install.sh
|
||||
read -p "Done, [return] to continue "
|
||||
'
|
||||
}
|
||||
|
||||
test_tb_hak() {
|
||||
docker pull docker.io/library/ubuntu:18.04
|
||||
docker run -ti --rm -v ${tmpdir}/dotfiles.tar.gz:/tmp/dotfiles.tar.gz:ro --hostname tb-hak docker.io/library/ubuntu:18.04 sh -c '
|
||||
set -o errexit
|
||||
@@ -38,3 +57,7 @@ docker run -ti --rm -v ${tmpdir}/dotfiles.tar.gz:/tmp/dotfiles.tar.gz:ro --hostn
|
||||
tar xf /tmp/dotfiles.tar.gz -C .
|
||||
ANSIBLE_EXTRA_ARGS="-e manage_services=false" ./install.sh
|
||||
'
|
||||
}
|
||||
|
||||
test_ares
|
||||
test_tb_hak
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
set -g default-command "${SHELL}"
|
||||
set -g default-terminal "${TERMBIN}"
|
||||
set -g default-terminal "xterm-256color"
|
||||
|
||||
set -g set-titles on
|
||||
set -g set-titles-string '#S'
|
||||
|
||||
15
user.yml
15
user.yml
@@ -27,16 +27,6 @@
|
||||
when: distro == 'ubuntu'
|
||||
tags: [always]
|
||||
|
||||
- set_fact:
|
||||
user_groups:
|
||||
- libvirt
|
||||
- wheel
|
||||
- vboxusers
|
||||
- wireshark
|
||||
- docker
|
||||
when: distro == 'fedora'
|
||||
tags: [always]
|
||||
|
||||
- set_fact:
|
||||
user_groups:
|
||||
- libvirt
|
||||
@@ -46,6 +36,7 @@
|
||||
- docker
|
||||
- sudonopw
|
||||
- games
|
||||
- kvm
|
||||
when: distro == 'archlinux'
|
||||
tags: [always]
|
||||
|
||||
@@ -392,7 +383,9 @@
|
||||
checksum: true
|
||||
delete: true
|
||||
|
||||
when: not stat_portfolio_performance_installation.stat.exists
|
||||
when:
|
||||
- not stat_portfolio_performance_installation.stat.exists
|
||||
- not ansible_check_mode
|
||||
|
||||
- name: link portfolio performance
|
||||
file:
|
||||
|
||||
@@ -20,6 +20,7 @@ fi
|
||||
|
||||
start_wm() {
|
||||
log "starting i3"
|
||||
systemctl --user import-environment
|
||||
systemctl --user start windowmanager.target
|
||||
sleep 1
|
||||
systemctl --user start autostart.target
|
||||
|
||||
@@ -19,7 +19,6 @@ export PATH
|
||||
export EDITOR="nvim"
|
||||
export VISUAL="nvim"
|
||||
export BROWSER="firefox"
|
||||
export TERMBIN="{{ machine.terminal_binary }}"
|
||||
|
||||
export PAGER="less"
|
||||
export LESS="FRX"
|
||||
@@ -55,6 +54,19 @@ umask 0022
|
||||
export {{ k }}="{{ v }}"
|
||||
{% endfor %}
|
||||
|
||||
export FEATURE_DIR="${RUNDIR}/features/"
|
||||
rm -rf "${FEATURE_DIR}"/
|
||||
mkdir -p "${FEATURE_DIR}"
|
||||
|
||||
[[ $MACHINE_HAS_NEXTCLOUD == "true" ]] && touch "${FEATURE_DIR}"/nextcloud
|
||||
[[ $MACHINE_HAS_KEEPASSX == "true" ]] && touch "${FEATURE_DIR}"/keepassx
|
||||
[[ $MACHINE_HAS_STEAM == "true" ]] && touch "${FEATURE_DIR}"/steam
|
||||
[[ $MACHINE_HAS_DISCORD == "true" ]] && touch "${FEATURE_DIR}"/discord
|
||||
[[ $MACHINE_HAS_RESTIC_BACKUP == "true" ]] && touch "${FEATURE_DIR}"/restic_backup
|
||||
[[ $MACHINE_HAS_ELEMENT == "true" ]] && touch "${FEATURE_DIR}"/element
|
||||
|
||||
[[ $MACHINE_TYPE == "laptop" ]] && touch "${FEATURE_DIR}"/matchine_is_laptop
|
||||
|
||||
# Make all environment variables also usable in the systemd user instancee
|
||||
systemctl --user import-environment
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ alias twa="task add"
|
||||
alias twd="task done"
|
||||
alias inbox="task add +inbox"
|
||||
|
||||
alias yaml2json="python -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=4)'"
|
||||
alias yaml2json="python -c 'import sys, yaml, json; json.dump(yaml.safe_load(sys.stdin), sys.stdout, indent=4)'"
|
||||
alias json2yaml="python -c 'import sys, yaml, json; yaml.safe_dump(json.loads(sys.stdin.read()), stream=sys.stdout)'"
|
||||
|
||||
alias currentbranch='git rev-parse --abbrev-ref HEAD'
|
||||
@@ -241,10 +241,6 @@ man() {
|
||||
man "$@"
|
||||
}
|
||||
|
||||
embiggen() {
|
||||
enscript --no-header --media=A4 --landscape --font="DejaVuSansMono30" -o - | ps2pdf - | zathura -
|
||||
}
|
||||
|
||||
resolvecd() {
|
||||
cd "$(readlink -f $(pwd))"
|
||||
}
|
||||
|
||||
@@ -141,7 +141,7 @@ man() {
|
||||
}
|
||||
|
||||
embiggen() {
|
||||
enscript --no-header --media=A4 --landscape --font="DejaVuSansMono30" -o - | ps2pdf - | zathura -
|
||||
enscript --no-header --media=A4 --landscape --font="DejaVuSansMono30" -o - 2>/dev/null | ps2pdf - | zathura -
|
||||
}
|
||||
|
||||
resolvecd() {
|
||||
|
||||
Reference in New Issue
Block a user