diff --git a/arch-config/.bashrc b/arch-config/.bashrc deleted file mode 100755 index 59ea2228..00000000 --- a/arch-config/.bashrc +++ /dev/null @@ -1,123 +0,0 @@ -# -# ~/.bashrc -# - -# If not running interactively, don't do anything -[[ $- != *i* ]] && return - -export HISTCONTROL=ignoreboth:erasedups - -PS1='[\u@\h \W]\$ ' - -if [ -d "$HOME/.bin" ] ; - then PATH="$HOME/.bin:$PATH" -fi - -if [ -d "$HOME/.local/bin" ] ; - then PATH="$HOME/.local/bin:$PATH" -fi - -if [ -d "$HOME/.emacs.d/bin/" ] ; - then PATH="$HOME/.emacs.d/bin/:$PATH" -fi - -# environment variables -#export VISUAL="/usr/bin/emacs --no-window-system" -#export EDITOR="/usr/bin/emacs --no-window-system" -export VISUAL="/usr/bin/vim" -export EDITOR="/usr/bin/vim" - -#update config -#alias upconf='$HOME/scripts/arcolinux-config.sh' - -#list -alias ls='ls --color=auto' -#alias la='ls -a' -#alias ll='ls -la' -#alias l='ls' -#alias l.="ls -A | egrep '^\.'" - -#fix obvious typo's -#alias cd..='cd ..' - -## Colorize the grep command output for ease of use (good for log files)## -alias grep='grep --color=auto' -alias egrep='egrep --color=auto' -alias fgrep='fgrep --color=auto' - -#continue download -alias wget="wget -c" - -# Aliases for software managment -alias pacman='pacman --color auto' -#alias update='yay -Syu' -alias update='paru -Syu --sudoloop --newsonupgrade' - -#grub update -#alias update-grub="sudo grub-mkconfig -o /boot/grub/grub.cfg" - -#check vulnerabilities microcode -#alias microcode='grep . /sys/devices/system/cpu/vulnerabilities/*' - -#get fastest mirrors in your neighborhood -#alias mirror="sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist" -#alias mirror-delay="sudo reflector --latest 50 --number 20 --sort delay --save /etc/pacman.d/mirrorlist" -#alias mirror-score="sudo reflector --latest 50 --number 20 --sort score --save /etc/pacman.d/mirrorlist" -#alias mirror-age="sudo reflector --latest 50 --number 20 --sort age --save /etc/pacman.d/mirrorlist" - -#mounting the folder Public for exchange between host and guest on virtualbox -#alias vbm="sudo mount -t vboxsf -o rw,uid=1000,gid=1000 Public /home/$USER/Public" - -#youtube-dl -#alias yta-aac="youtube-dl --extract-audio --audio-format aac " -#alias yta-best="youtube-dl --extract-audio --audio-format best " -#alias yta-flac="youtube-dl --extract-audio --audio-format flac " -#alias yta-m4a="youtube-dl --extract-audio --audio-format m4a " -#alias yta-mp3="youtube-dl --extract-audio --audio-format mp3 " -#alias yta-opus="youtube-dl --extract-audio --audio-format opus " -#alias yta-vorbis="youtube-dl --extract-audio --audio-format vorbis " -#alias yta-wav="youtube-dl --extract-audio --audio-format wav " - -#alias ytv-best="youtube-dl -f bestvideo+bestaudio " - -#Cleanup orphaned packages -#alias cleanup='sudo pacman -Rns $(pacman -Qtdq)' - -#get the error messages from journalctl -#alias jctl="journalctl -p 3 -xb" - -#shutdown or reboot -#alias ssn="sudo shutdown now" -#alias sr="sudo reboot" - -#cpu-x as sudo -#alias cpu-x="sudo cpu-x" - -# # ex = EXtractor for all kinds of archives -# # usage: ex -#ex () -#{ -# if [ -f $1 ] ; then -# case $1 in -# *.tar.bz2) tar xjf $1 ;; -# *.tar.gz) tar xzf $1 ;; -# *.bz2) bunzip2 $1 ;; -# *.rar) unrar x $1 ;; -# *.gz) gunzip $1 ;; -# *.tar) tar xf $1 ;; -# *.tbz2) tar xjf $1 ;; -# *.tgz) tar xzf $1 ;; -# *.zip) unzip $1 ;; -# *.Z) uncompress $1;; -# *.7z) 7z x $1 ;; -# *.deb) ar x $1 ;; -# *.tar.xz) tar xf $1 ;; -# *) echo "'$1' cannot be extracted via ex()" ;; -# esac -# else -# echo "'$1' is not a valid file" -# fi -#} - -#execute stuff -#neofetch diff --git a/arch-config/.cache/backgrounds/desktop.png b/arch-config/.cache/backgrounds/desktop.png new file mode 100644 index 00000000..fec9b4c7 Binary files /dev/null and b/arch-config/.cache/backgrounds/desktop.png differ diff --git a/arch-config/.cache/backgrounds/lockscreen.png b/arch-config/.cache/backgrounds/lockscreen.png new file mode 100644 index 00000000..7e6f61c5 Binary files /dev/null and b/arch-config/.cache/backgrounds/lockscreen.png differ diff --git a/arch-config/.config/i3/.gitkeep b/arch-config/.config/sway/.gitkeep similarity index 100% rename from arch-config/.config/i3/.gitkeep rename to arch-config/.config/sway/.gitkeep diff --git a/arch-config/.config/sway/config b/arch-config/.config/sway/config new file mode 100644 index 00000000..aec4248e --- /dev/null +++ b/arch-config/.config/sway/config @@ -0,0 +1,387 @@ +# Default config for sway +# +# Copy this to ~/.config/sway/config and edit it to your liking. +# +# Read `man 5 sway` for a complete reference. + +# $Mod = WINDOWS key or Super key or Mod4 +# Mod1 = ALT key +# Control = CTRL key +# Shift = SHIFT key +# Escape = ESCAPE key +# Return = ENTER or RETURN key +# KP_Enter = Keypad Enter +# Pause = PAUSE key +# Print = PRINT key +# Tab = TAB key + +### Variables + +# Logo key. Use Mod1 for Alt. +set $mod Mod4 + +# Home row direction keys, like vim +set $left h +set $down j +set $up k +set $right l + +# Your preferred terminal emulator +set $term kitty + +# Your preferred application launcher +# Note: pass the final command to swaymsg so that the resulting window can be opened +# on the original workspace that the command was run on. +#set $menu dmenu_path | dmenu | xargs swaymsg exec -- +set $menu rofi -show drun + +### Keyboard, Mouse and others configuration +# Keyboard config https://man.archlinux.org/man/xkeyboard-config.7 +# Sway input https://man.archlinux.org/man/sway-input.5 +input * { + # Keyboard + xkb_layout "ch" + xkb_variant "" + xkb_model "pc105" + #xkb_options "grp:win_space_toggle" + # Touchpad + tap enabled + tap_button_map lrm + scroll_method two_finger +} + +### Output configuration + +# Default wallpaper (more resolutions are available in @datadir@/backgrounds/sway/) +output * bg $HOME/.cache/backgrounds/desktop.png fill + +# Example configuration: +# +# output HDMI-A-1 resolution 1920x1080 position 1920,0 +# +# You can get the names of your outputs by running: swaymsg -t get_outputs + +### Idle configuration +# +# Example configuration: +# +# exec swayidle -w \ +# timeout 300 'swaylock -f -c 000000' \ +# timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \ +# before-sleep 'swaylock -f -c 000000' +# +# This will lock your screen after 300 seconds of inactivity, then turn off +# your displays after another 300 seconds, and turn your screens back on when +# resumed. It will also lock your screen before your computer goes to sleep. + +# -c 000000 sets the color in RGB +# use -i to set an image +exec swayidle -w \ + timeout 300 'swaylock -f -e -i "$HOME/.cache/backgrounds/lockscreen.png"' \ + timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \ + before-sleep 'swaylock -f -e -i "$HOME/.cache/backgrounds/lockscreen.png"' + +### Input configuration +# +# Example configuration: +# +# input "2:14:SynPS/2_Synaptics_TouchPad" { +# dwt enabled +# tap enabled +# natural_scroll enabled +# middle_emulation enabled +# } +# +# You can get the names of your inputs by running: swaymsg -t get_inputs +# Read `man 5 sway-input` for more information about this section. + +### Key bindings +# +# Basics: +# + # Start a terminal + #bindsym $mod+Return exec $term + bindsym ctrl+mod1+Return exec $term + + # Kill focused window + bindsym $mod+q kill + + # Start your launcher + bindsym ctrl+mod1+a exec $menu + + # Drag floating windows by holding down $mod and left mouse button. + # Resize them with right mouse button + $mod. + # Despite the name, also works for non-floating windows. + # Change normal to inverse to use left mouse button for resizing and right + # mouse button for dragging. + floating_modifier $mod normal + + # Reload the configuration file + bindsym $mod+Shift+c reload + + # Exit sway (logs you out of your Wayland session) + #bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' +# +# Moving around: +# + # Move your focus around + bindsym $mod+$left focus left + bindsym $mod+$down focus down + bindsym $mod+$up focus up + bindsym $mod+$right focus right + # Or use $mod+[up|down|left|right] + bindsym $mod+Left focus left + bindsym $mod+Down focus down + bindsym $mod+Up focus up + bindsym $mod+Right focus right + + # Move the focused window with the same, but add Shift + bindsym $mod+Shift+$left move left + bindsym $mod+Shift+$down move down + bindsym $mod+Shift+$up move up + bindsym $mod+Shift+$right move right + # Ditto, with arrow keys + bindsym $mod+Shift+Left move left + bindsym $mod+Shift+Down move down + bindsym $mod+Shift+Up move up + bindsym $mod+Shift+Right move right +# +# Workspaces: +# + # Switch to workspace + bindsym $mod+1 workspace number 1 + bindsym $mod+2 workspace number 2 + bindsym $mod+3 workspace number 3 + bindsym $mod+4 workspace number 4 + bindsym $mod+5 workspace number 5 + bindsym $mod+6 workspace number 6 + bindsym $mod+7 workspace number 7 + bindsym $mod+8 workspace number 8 + bindsym $mod+9 workspace number 9 + bindsym $mod+0 workspace number 10 + # Move focused container to workspace + bindsym $mod+Shift+1 move container to workspace number 1; workspace 1 + bindsym $mod+Shift+2 move container to workspace number 2; workspace 2 + bindsym $mod+Shift+3 move container to workspace number 3; workspace 3 + bindsym $mod+Shift+4 move container to workspace number 4; workspace 4 + bindsym $mod+Shift+5 move container to workspace number 5; workspace 5 + bindsym $mod+Shift+6 move container to workspace number 6; workspace 6 + bindsym $mod+Shift+7 move container to workspace number 7; workspace 7 + bindsym $mod+Shift+8 move container to workspace number 8; workspace 8 + bindsym $mod+Shift+9 move container to workspace number 9; workspace 9 + bindsym $mod+Shift+0 move container to workspace number 10; workspace 10 + # Note: workspaces can have any name you want, not just numbers. + # We just use 1-10 as the default. +# +# Layout stuff: +# + # You can "split" the current object of your focus with + # $mod+b or $mod+v, for horizontal and vertical splits + # respectively. + bindsym $mod+o splith + bindsym $mod+v splitv + + # Switch the current container between different layout styles + bindsym $mod+s layout stacking + bindsym $mod+z layout tabbed + bindsym $mod+e layout toggle split + + # Make the current focus fullscreen + bindsym $mod+f fullscreen + + # Toggle the current focus between tiling and floating mode + bindsym $mod+Shift+f floating toggle + + # Swap focus between the tiling area and the floating area + # TODO haven't ever used this afaik + bindsym $mod+space focus mode_toggle + + # Move focus to the parent container + bindsym $mod+a focus parent +# +# Scratchpad: +# + # Sway has a "scratchpad", which is a bag of holding for windows. + # You can send windows there and get them back later. + + # Move the currently focused window to the scratchpad + #bindsym $mod+Shift+minus move scratchpad + + # Show the next scratchpad window or hide the focused scratchpad window. + # If there are multiple scratchpad windows, this command cycles through them. + #bindsym $mod+minus scratchpad show +# +# Resizing containers: +# +mode "resize" { + # Resize windows with movement keys + bindsym $left resize shrink width 10px + bindsym Shift+$left resize shrink width 20px + bindsym $down resize shrink height 10px + bindsym Shift+$down resize shrink height 20px + bindsym $up resize grow height 10px + bindsym Shift+$up resize grow height 20px + bindsym $right resize grow width 10px + bindsym Shift+$right resize grow width 20px + + # Ditto, with arrow keys + bindsym Left resize shrink width 10px + bindsym Shift+Left resize shrink width 20px + bindsym Down resize shrink height 10px + bindsym Shift+Down resize shrink height 20px + bindsym Up resize grow height 10px + bindsym Shift+Up resize grow height 20px + bindsym Right resize grow width 10px + bindsym Shift+Right resize grow width 20px + + # Return to default mode + bindsym Return mode "default" + bindsym Escape mode "default" +} +bindsym $mod+r mode "resize" + +############################################################ +##### Stuff from old config ##### +############################################################ + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +# choose your font +font pango:Noto Mono Regular 9 + + +############################## +# Applications at boot # +############################## + +#Authentication dialog +exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & + +#nextcloud +exec --no-startup-id nextcloud + +# network +exec --no-startup-id nm-applet + +# num lock activated +exec_always --no-startup-id numlockx on + +#Corectrl +exec --no-startup-id corectrl + +#Transmission +#exec --no-startup-id transmission-gtk -m + +#Polybar +exec_always --no-startup-id ~/.config/polybar/launch.sh & + +#startup functions +#exec_always --no-startup-id ~/scritps/startup.sh + +# Protonmail Bridge +exec --no-startup-id protonmail-bridge -no-window + +# Start KopiaUI +exec --no-startup-id /opt/KopiaUI/kopia-ui + +# PulseEffects +#exec --no-startup-id pulseeffects --gapplication-service + +# activate flameshot +exec --no-startup-id flameshot & + +# notifications +exec --no-startup-id /usr/bin/dunst & + +############################## +# Keyboard shortcuts # +############################## + +#pavucontrol +bindsym control+mod1+u exec --no-startup-id pavucontrol;focus + +# joplin +bindsym control+mod1+n exec --no-startup-id joplin-desktop;focus + +#texteditors +bindsym ctrl+mod1+e exec --no-startup-id emacs;focus + +# file manager +bindsym ctrl+mod1+t exec --no-startup-id nemo;focus + +#libreoffice +bindsym ctrl+mod1+l exec --no-startup-id libreoffice;focus + +#browsers +bindsym control+mod1+f exec --no-startup-id firefox;focus + +# jellyamp +bindsym ctrl+mod1+m exec --no-startup-id "env DESKTOPINTEGRATION=false /usr/bin/Jellyamp";focus + +# jellyfin media player +bindsym ctrl+mod1+j exec --no-startup-id jellyfinmediaplayer;focus + +# mail +bindsym ctrl+mod1+b exec --no-startup-id thunderbird;focus + +############################## +# Screenshots # +############################## + +bindsym Print exec --no-startup-id flameshot gui +bindsym Control+Print exec --no-startup-id flameshot gui -d 2000 + + +############################## +# Audio & Media Control # +############################## + +bindsym XF86AudioRaiseVolume exec --no-startup-id bash $HOME/scripts/dunst-volume.sh up +bindsym XF86AudioLowerVolume exec --no-startup-id bash $HOME/scripts/dunst-volume.sh down +bindsym XF86AudioMute exec --no-startup-id bash $HOME/scripts/dunst-volume.sh mute +bindsym XF86AudioPlay exec --no-startup-id ~/scripts/polybar/player-mpris-tail.py play-pause & +bindsym XF86AudioNext exec --no-startup-id ~/scripts/polybar/player-mpris-tail.py next & +bindsym XF86AudioPrev exec --no-startup-id ~/scripts/polybar/player-mpris-tail.py previous & +bindsym XF86AudioStop exec --no-startup-id playerctl stop + +############################## +# xbacklight # +############################## + +bindsym $mod+Shift+u exec --no-startup-id bash $HOME/scripts/dunst-backlight.sh up # increase screen brightness +bindsym $mod+Shift+d exec --no-startup-id bash $HOME/scripts/dunst-backlight.sh down # decrease screen brightness +bindsym XF86MonBrightnessUp exec --no-startup-id bash $HOME/scripts/dunst-backlight.sh up # increase screen brightness +bindsym XF86MonBrightnessDown exec --no-startup-id bash $HOME/scripts/dunst-backlight.sh down # decrease screen brightness + +############################## +# Borders # +############################## + +default_border pixel 2 + +############################################################ +##### More from the sample config ##### +############################################################ + +# +# Status Bar: +# +# Read `man 5 sway-bar` for more information about this section. +bar { + position bottom + + # When the status_command prints a new line to stdout, swaybar updates. + # The default just shows the current date and time. + status_command while date +'%Y-%m-%d %H:%M:%S %p'; do sleep 1; done + + colors { + statusline #ffffff + background #323232 + inactive_workspace #32323200 #32323200 #5c5c5c + } +} + +# Start sway-session.target for sway-specific stuff and import environment +exec_always "systemctl --user import-environment; systemctl --user start sway-session.target" + +include @sysconfdir@/sway/config.d/* diff --git a/arch-config/.config/i3/config b/arch-config/.config/sway/config.bak similarity index 91% rename from arch-config/.config/i3/config rename to arch-config/.config/sway/config.bak index 30a5adfe..35944529 100755 --- a/arch-config/.config/i3/config +++ b/arch-config/.config/sway/config.bak @@ -56,6 +56,7 @@ set $right l # setting variables for later use # use xrandr and/or arandr to know the names of your monitors +# TODO exec --no-startup-id xrandr --output eDP1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output HDMI1 --off --output VIRTUAL1 --off exec --no-startup-id xrandr --output HDMI2 --right-of HDMI1 --auto @@ -120,16 +121,17 @@ bindsym $mod+Shift+0 move container to workspace 10; workspace 10 #Press $mod (super) and X to exit - check toolbar for next choices +# TODO bindsym $mod+x mode "$mode_system" set $mode_system System (k) lock, (l) logout, (r) reboot, (s) shutdown, (u) suspend, (h) hibernate mode "$mode_system" { - bindsym k exec --no-startup-id ~/.config/i3/scripts/i3exit.sh lock, mode "default" - bindsym l exec --no-startup-id ~/.config/i3/scripts/i3exit.sh logout, mode "default" - bindsym u exec --no-startup-id ~/.config/i3/scripts/i3exit.sh suspend, mode "default" - bindsym h exec --no-startup-id ~/.config/i3/scripts/i3exit.sh hibernate, mode "default" - bindsym r exec --no-startup-id ~/.config/i3/scripts/i3exit.sh reboot, mode "default" - bindsym s exec --no-startup-id ~/.config/i3/scripts/i3exit.sh shutdown, mode "default" + bindsym k exec --no-startup-id ~/.config/sway/scripts/i3exit.sh lock, mode "default" + bindsym l exec --no-startup-id ~/.config/sway/scripts/i3exit.sh logout, mode "default" + bindsym u exec --no-startup-id ~/.config/sway/scripts/i3exit.sh suspend, mode "default" + bindsym h exec --no-startup-id ~/.config/sway/scripts/i3exit.sh hibernate, mode "default" + bindsym r exec --no-startup-id ~/.config/sway/scripts/i3exit.sh reboot, mode "default" + bindsym s exec --no-startup-id ~/.config/sway/scripts/i3exit.sh shutdown, mode "default" # back to normal: Enter or Escape bindsym Return mode "default" @@ -247,21 +249,21 @@ bindsym $mod+d focus child ################# change modes ################# ##################################################################################################################### +# TODO +#bindsym $mod+m mode "$main" -bindsym $mod+m mode "$main" - -set $main Social (s), Gaming (g), Crypto (c), Media (m), Resize (r), Layout (l) -mode "$main"{ - bindsym s mode "$social" - bindsym g mode "$gaming" - bindsym c mode "$crypto" - bindsym m mode "$media" - bindsym r mode "resize" - bindsym l mode "$layout" - - bindsym Return mode "default" - bindsym Escape mode "default" -} +#set $main Social (s), Gaming (g), Crypto (c), Media (m), Resize (r), Layout (l) +#mode "$main"{ +# bindsym s mode "$social" +# bindsym g mode "$gaming" +# bindsym c mode "$crypto" +# bindsym m mode "$media" +# bindsym r mode "resize" +# bindsym l mode "$layout" +# +# bindsym Return mode "default" +# bindsym Escape mode "default" +#} ############################################################################# @@ -269,18 +271,18 @@ mode "$main"{ ############################################################################# -set $social Discord (d), Element (e), Telegram (b), Signal (s), Teams (t) -mode "$social"{ - bindsym d exec --no-startup-id discord --no-sandbox;focus - bindsym e exec --no-startup-id element-desktop;focus - bindsym b exec --no-startup-id telegram-desktop;focus +#set $social Discord (d), Element (e), Telegram (b), Signal (s), Teams (t) +#mode "$social"{ +# bindsym d exec --no-startup-id discord --no-sandbox;focus +# bindsym e exec --no-startup-id element-desktop;focus +# bindsym b exec --no-startup-id telegram-desktop;focus #bindsym s exec --no-startup-id slack;focus - bindsym s exec --no-startup-id signal-desktop;focus - bindsym t exec --no-startup-id teams;focus +# bindsym s exec --no-startup-id signal-desktop;focus +# bindsym t exec --no-startup-id teams;focus - bindsym Return mode "default" - bindsym Escape mode "default" -} +# bindsym Return mode "default" +# bindsym Escape mode "default" +#} ############################################################################# @@ -288,15 +290,15 @@ mode "$social"{ ############################################################################# -set $media Tauon (t), Celluloid (c), Jellyfin (j) -mode "$media"{ - bindsym t exec --no-startup-id tauon;focus - bindsym c exec --no-startup-id celluloid;focus - bindsym j exec --no-startup-id jellyfinmediaplayer;focus - - bindsym Return mode "default" - bindsym Escape mode "default" -} +#set $media Tauon (t), Celluloid (c), Jellyfin (j) +#mode "$media"{ +# bindsym t exec --no-startup-id tauon;focus +# bindsym c exec --no-startup-id celluloid;focus +# bindsym j exec --no-startup-id jellyfinmediaplayer;focus +# +# bindsym Return mode "default" +# bindsym Escape mode "default" +#} ############################################################################## @@ -304,15 +306,15 @@ mode "$media"{ ############################################################################## -set $crypto Electrum (b), Electon Cash (c), Monero (m) -mode "$crypto"{ - bindsym b exec --no-startup-id electrum;focus - bindsym c exec --no-startup-id electron-cash;focus - bindsym m exec --no-startup-id monero-wallet-gui;focus - - bindsym Return mode "default" - bindsym Escape mode "default" -} +#set $crypto Electrum (b), Electon Cash (c), Monero (m) +#mode "$crypto"{ +# bindsym b exec --no-startup-id electrum;focus +# bindsym c exec --no-startup-id electron-cash;focus +# bindsym m exec --no-startup-id monero-wallet-gui;focus +# +# bindsym Return mode "default" +# bindsym Escape mode "default" +#} ############################################################################## @@ -321,17 +323,17 @@ mode "$crypto"{ # launch gaming focused programs -set $gaming Lutris (l), Steam (s), Minigalaxy (g), Itch (i), Citra (3DS) (c) -mode "$gaming" { - bindsym l exec --no-startup-id lutris;focus - bindsym s exec --no-startup-id steam-native;focus - bindsym g exec --no-startup-id minigalaxy;focus - bindsym i exec --no-startup-id itch;focus - bindsym c exec --no-startup-id citra-qt;focus - - bindsym Return mode "default" - bindsym Escape mode "default" -} +#set $gaming Lutris (l), Steam (s), Minigalaxy (g), Itch (i), Citra (3DS) (c) +#mode "$gaming" { +# bindsym l exec --no-startup-id lutris;focus +# bindsym s exec --no-startup-id steam-native;focus +# bindsym g exec --no-startup-id minigalaxy;focus +# bindsym i exec --no-startup-id itch;focus +# bindsym c exec --no-startup-id citra-qt;focus +# +# bindsym Return mode "default" +# bindsym Escape mode "default" +#} ############################################################################# @@ -373,20 +375,20 @@ mode "resize" { bindsym Escape mode "default" } - ############################################################################## ################# start normal layout ################# ############################################################################## # launch programs in the right workspaces +# TODO bindsym $mod+w mode "$layout" set $layout full (f) mode "$layout" { - bindsym f exec --no-startup-id bash $HOME/.config/i3/scripts/layout-default.sh - #bindsym w exec --no-startup-id bash $HOME/.config/i3/scripts/layout-work.sh + bindsym f exec --no-startup-id bash $HOME/.config/sway/scripts/layout-default.sh + #bindsym w exec --no-startup-id bash $HOME/.config/sway/scripts/layout-work.sh bindsym Return mode "default" bindsym Escape mode "default" @@ -399,6 +401,7 @@ mode "$layout" { # change xrandr display configuration +# TODO #bindsym $mod+d mode "$xrandr" @@ -459,7 +462,7 @@ exec --no-startup-id corectrl #exec --no-startup-id transmission-gtk -m #Conky -#exec --no-startup-id conky -c ~/.config/i3/system-overview +#exec --no-startup-id conky -c ~/.config/sway/system-overview #Polybar exec_always --no-startup-id ~/.config/polybar/launch.sh & @@ -492,6 +495,7 @@ exec --no-startup-id flameshot & # there are some scripts that should work with i3 # gnome-power-manager # mate-power-manager +# TODO exec --no-startup-id xfce4-power-manager & # notifications @@ -589,6 +593,7 @@ bindsym Ctrl+Print exec --no-startup-id flameshot gui -d 2000 ############################## ### floating disabled ### ############################## +# TODO for_window [class="Bleachbit"] floating disable for_window [class="Brasero"] floating disable for_window [class="Gnome-disks"] floating disable @@ -722,6 +727,7 @@ bindsym XF86MonBrightnessDown exec --no-startup-id bash $HOME/scripts/dunst-back # Border control +# TODO hide_edge_borders none bindsym $mod+u mode "$border" @@ -743,6 +749,7 @@ mode "$border" { #Popups during fullscreen mode +# TODO popup_during_fullscreen smart @@ -768,7 +775,8 @@ for_window [class="^.*"] border pixel 2 #if you want transparency on non-focused windows, ... -exec_always --no-startup-id picom -b --config ~/.config/i3/picom.conf +# TODO +exec_always --no-startup-id picom -b --config ~/.config/sway/picom.conf ##################################################################################################################### @@ -802,7 +810,7 @@ exec_always --no-startup-id picom -b --config ~/.config/i3/picom.conf # Second one is the standard statusbar with my personal settings #status_command i3status - #status_command i3status -c ~/.config/i3/i3status.conf + #status_command i3status -c ~/.config/sway/i3status.conf # OPTION 2 : i3blocks @@ -812,10 +820,10 @@ exec_always --no-startup-id picom -b --config ~/.config/i3/picom.conf # put hastag in front if not installed #status_command i3blocks - #status_command i3blocks -c ~/.config/i3/i3blocks.conf - #status_command i3blocks -c ~/.config/i3/i3blocks-rainbow.conf - #status_command i3blocks -c ~/.config/i3/i3blocks-original.conf - #status_command i3blocks -c ~/.config/i3/i3blocks-awesome.conf + #status_command i3blocks -c ~/.config/sway/i3blocks.conf + #status_command i3blocks -c ~/.config/sway/i3blocks-rainbow.conf + #status_command i3blocks -c ~/.config/sway/i3blocks-original.conf + #status_command i3blocks -c ~/.config/sway/i3blocks-awesome.conf # OPTION 3 : conky @@ -825,7 +833,7 @@ exec_always --no-startup-id picom -b --config ~/.config/i3/picom.conf # documentation : https://i3wm.org/docs/user-contributed/conky-i3bar.html # conky configuration is in conky-i3statusbar - #status_command ~/.config/i3/start-conky-i3statusbar.sh + #status_command ~/.config/sway/start-conky-i3statusbar.sh # OPTION 4 : polybar diff --git a/arch-config/.config/i3/i3blocks.conf b/arch-config/.config/sway/i3blocks.conf similarity index 100% rename from arch-config/.config/i3/i3blocks.conf rename to arch-config/.config/sway/i3blocks.conf diff --git a/arch-config/.config/i3/layouts/layout-default/workspace-1.json b/arch-config/.config/sway/layouts/layout-default/workspace-1.json similarity index 100% rename from arch-config/.config/i3/layouts/layout-default/workspace-1.json rename to arch-config/.config/sway/layouts/layout-default/workspace-1.json diff --git a/arch-config/.config/i3/layouts/layout-default/workspace-2.json b/arch-config/.config/sway/layouts/layout-default/workspace-2.json similarity index 100% rename from arch-config/.config/i3/layouts/layout-default/workspace-2.json rename to arch-config/.config/sway/layouts/layout-default/workspace-2.json diff --git a/arch-config/.config/i3/layouts/layout-default/workspace-3.json b/arch-config/.config/sway/layouts/layout-default/workspace-3.json similarity index 100% rename from arch-config/.config/i3/layouts/layout-default/workspace-3.json rename to arch-config/.config/sway/layouts/layout-default/workspace-3.json diff --git a/arch-config/.config/i3/picom.conf b/arch-config/.config/sway/picom.conf similarity index 100% rename from arch-config/.config/i3/picom.conf rename to arch-config/.config/sway/picom.conf diff --git a/arch-config/.config/i3/scripts/.gitkeep b/arch-config/.config/sway/scripts/.gitkeep similarity index 100% rename from arch-config/.config/i3/scripts/.gitkeep rename to arch-config/.config/sway/scripts/.gitkeep diff --git a/arch-config/.config/i3/scripts/i3exit.sh b/arch-config/.config/sway/scripts/i3exit.sh similarity index 100% rename from arch-config/.config/i3/scripts/i3exit.sh rename to arch-config/.config/sway/scripts/i3exit.sh diff --git a/arch-config/.config/i3/scripts/layout-default.sh b/arch-config/.config/sway/scripts/layout-default.sh similarity index 100% rename from arch-config/.config/i3/scripts/layout-default.sh rename to arch-config/.config/sway/scripts/layout-default.sh diff --git a/arch-config/.config/i3/system-overview b/arch-config/.config/sway/system-overview similarity index 100% rename from arch-config/.config/i3/system-overview rename to arch-config/.config/sway/system-overview diff --git a/arch-config/.config/systemd/user/sway-session.target b/arch-config/.config/systemd/user/sway-session.target new file mode 100644 index 00000000..a6dadf97 --- /dev/null +++ b/arch-config/.config/systemd/user/sway-session.target @@ -0,0 +1,6 @@ +[Unit] +Description=Sway compositor session +Documentation=man:systemd.special +BindsTo=graphical-session.target +Wants=graphical-session-pre.target +After=graphical-session-pre.target diff --git a/arch-config/etc/X11/.gitkeep b/arch-config/etc/X11/.gitkeep deleted file mode 100755 index e69de29b..00000000 diff --git a/arch-config/etc/X11/xorg.conf.d/.gitkeep b/arch-config/etc/X11/xorg.conf.d/.gitkeep deleted file mode 100755 index e69de29b..00000000 diff --git a/arch-config/etc/X11/xorg.conf.d/00-keyboard.conf b/arch-config/etc/X11/xorg.conf.d/00-keyboard.conf deleted file mode 100755 index 0d2d27ae..00000000 --- a/arch-config/etc/X11/xorg.conf.d/00-keyboard.conf +++ /dev/null @@ -1,8 +0,0 @@ -# Read and parsed by systemd-localed. It's probably wise not to edit this file -# manually too freely. -Section "InputClass" - Identifier "system-keyboard" - MatchIsKeyboard "on" - Option "XkbLayout" "ch" - Option "XkbModel" "pc105" -EndSection diff --git a/arch-config/etc/X11/xorg.conf.d/30-touchpad.conf b/arch-config/etc/X11/xorg.conf.d/30-touchpad.conf deleted file mode 100755 index 376f9c40..00000000 --- a/arch-config/etc/X11/xorg.conf.d/30-touchpad.conf +++ /dev/null @@ -1,7 +0,0 @@ -Section "InputClass" - Identifier "touchpad" - Driver "libinput" - MatchIsTouchpad "on" - Option "Tapping" "on" - Option "ScrollMethod" "twofinger" -EndSection diff --git a/arch-config/etc/environment b/arch-config/etc/environment index 69ba4e18..31844906 100644 --- a/arch-config/etc/environment +++ b/arch-config/etc/environment @@ -1,2 +1,3 @@ QT_QPA_PLATFORMTHEME=qt5ct EDITOR=vim +XDG_CURRENT_DESKTOP=sway diff --git a/arch-config/etc/greetd/config.toml b/arch-config/etc/greetd/config.toml new file mode 100644 index 00000000..fea36688 --- /dev/null +++ b/arch-config/etc/greetd/config.toml @@ -0,0 +1,9 @@ +[terminal] +# The VT to run the greeter on. Can be "next", "current" or a number designating the VT. +vt = 7 + +[default_session] +command = "sway --config /etc/greetd/sway-config" + +# The user to run the command as. A graphical greeter requires the "video" group for example +user = "greeter" diff --git a/arch-config/etc/greetd/environments b/arch-config/etc/greetd/environments new file mode 100644 index 00000000..82c01f8c --- /dev/null +++ b/arch-config/etc/greetd/environments @@ -0,0 +1,2 @@ +sway +fish diff --git a/arch-config/etc/greetd/sway-config b/arch-config/etc/greetd/sway-config new file mode 100644 index 00000000..da67a44e --- /dev/null +++ b/arch-config/etc/greetd/sway-config @@ -0,0 +1,10 @@ +# `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet. +exec "gtkgreet -l; swaymsg exit" + +bindsym Mod4+shift+e exec swaynag \ +-t warning \ +-m 'What do you want to do?' \ +-b 'Poweroff' 'systemctl poweroff' \ +-b 'Reboot' 'systemctl reboot' + +include /etc/sway/config.d/* diff --git a/arch-config/scripts/arch-config.sh b/arch-config/scripts/arch-config.sh index 164d1b44..dd07c44b 100755 --- a/arch-config/scripts/arch-config.sh +++ b/arch-config/scripts/arch-config.sh @@ -52,6 +52,7 @@ git clone https://gitlab.com/RealStickman-arch/config.git &>/dev/null # make sure to use master branch #cd config #git checkout master &>/dev/null +#git checkout wayland &>/dev/null #cd .. # check if the install scripts are the same @@ -128,8 +129,8 @@ fi if [[ -d ~/.config/gtk-3.0 ]]; then rsync -ah ~/.config/gtk-3.0 ~/old_dat/.config/ fi -if [[ -d ~/.config/i3 ]]; then - rsync -ah ~/.config/i3 ~/old_dat/.config/ +if [[ -d ~/.config/sway ]]; then + rsync -ah ~/.config/sway ~/old_dat/.config/ fi if [[ -d ~/.config/neofetch ]]; then rsync -ah ~/.config/neofetch ~/old_dat/.config/ @@ -206,12 +207,23 @@ cp -r ~/config/.local/ ~/ #cp -r ~/config/.mozilla/firefox/default-release/* ~/.mozilla/firefox/*.default-release/ #cp -r ~/config/.easystroke ~/ #cp -r ~/config/.elvish ~/ +# NOTE find fails if the top level directory is not found +if [[ -d ~/.mozilla/firefox ]]; then + # NOTE check if firefox default-release directory exists. 1 is good, 0 is bad + firefoxdir=$(find ~/.mozilla/firefox/ -name \*.default-release | wc -l) + if [[ $firefoxdir -eq 1 ]]; then + cp -r ~/config/.mozilla/firefox/default-release/* ~/.mozilla/firefox/*.default-release/ + else + echo "Please launch firefox and then update the config again" + fi +else + echo "Please launch firefox and then update the config again" +fi cp -r ~/config/.doom.d ~/ cp -r ~/config/.ssh ~/ echo Copied folders #copy single files -cp -r ~/config/.bashrc ~/ cp -r ~/config/.face ~/ cp -r ~/config/.gtkrc-2.0 ~/ cp -r ~/config/.gitconfig ~/ @@ -273,14 +285,14 @@ git clone https://gitlab.com/RealStickman-arch/themes.git &>/dev/null seltheme="$(cat "$HOME/.seltheme")" if [[ "$seltheme" == "nyarch" ]]; then #cp -r "./themes/nyarch/i3" "$HOME/.config/" - cat "./themes/nyarch/i3/color" >>"$HOME/.config/i3/config" + cat "./themes/nyarch/i3/color" >>"$HOME/.config/sway/config" cp -r "./themes/nyarch/polybar" "$HOME/.config/" #cp -r "./themes/nyarch/neofetch/lowpoly_flamegirl_blue.txt" "$HOME/.config/neofetch/lowpoly_flamegirl.txt" #cp "./themes/.fehbg-nyarch" "$HOME/.fehbg" #sed -i 's/^NAME=".*"/NAME="Rawrch Linyux"/' /etc/os-release elif [[ "$seltheme" == "space-pink" ]]; then #cp -r "./themes/space-pink/i3" "$HOME/.config/" - cat "./themes/space-pink/i3/color" >>"$HOME/.config/i3/config" + cat "./themes/space-pink/i3/color" >>"$HOME/.config/sway/config" cp -r "./themes/space-pink/polybar" "$HOME/.config/" #cp -r "./themes/space-pink/neofetch/lowpoly_flamegirl_orange.txt" "$HOME/.config/neofetch/lowpoly_flamegirl.txt" #cp "./themes/.fehbg-space-pink" "$HOME/.fehbg" @@ -444,7 +456,7 @@ sudo chmod 600 -R /etc/sudoers.d/ #make bash scripts executable chmod +x -R ~/.config/polybar/ -chmod +x -R ~/.config/i3/scripts +chmod +x -R ~/.config/sway/scripts chmod +x -R ~/scripts # make applications executable @@ -466,8 +478,10 @@ EOF # reload applications update-desktop-database ~/.local/share/applications/ -#sync doom-emacs -~/.emacs.d/bin/doom sync +# sync doom-emacs only if it is installed +if [[ -f ~/.emacs.d/bin/doom ]]; then + ~/.emacs.d/bin/doom sync +fi # disable freedesktop notification daemon if [[ -f "/usr/share/dbus-1/services/org.freedesktop.Notifications.service" ]]; then @@ -481,12 +495,16 @@ pkill dunst && nohup dunst & systemctl --user daemon-reload # reload .Xresources +# TODO fails without display +set +e if [[ -f "$HOME/.Xresources" ]]; then xrdb ~/.Xresources fi # execute feh +# TODO fails without display "$HOME/.fehbg" +set -e # NOTE working now # if [[ "$(ps aux | grep "FIXME")" ]]; then ... @@ -522,5 +540,4 @@ fi exec "$(getent passwd $LOGNAME | cut -d: -f7)" # exit successfully -$(exit 0) -echo "$?" +exit 0