Compare commits

...

94 Commits

Author SHA1 Message Date
ac9d8e26fa Update 'zsh/dotty.json' 2022-10-26 22:11:32 +02:00
7d258da95b Delete 'zsh/dot' 2022-10-26 22:10:46 +02:00
998b0ac6fa Added zsh config file 2022-10-26 22:10:42 +02:00
a0690fbabc Fixed name 2022-10-26 22:10:07 +02:00
5f0d8aae46 Added zsh config file 2022-10-26 22:08:07 +02:00
1359bbcc1a Aded dotty json 2022-10-26 22:04:30 +02:00
93332605e6 Gentoo changes 2022-10-15 22:17:56 +02:00
Your Name
c9afc052c1 added awesomeWM 2022-08-31 20:08:50 +02:00
Tobias Maier
f71ff1d2ef Added script to auto-create ymlinks 2022-08-15 17:46:46 +02:00
Tobias Maier
2468e3836e updated waybar configs 2022-08-15 17:33:05 +02:00
Tobias Maier
36a47fd7fb Updates to river config file 2022-08-15 17:23:24 +02:00
Tobias Maier
2724253d85 Folder Structire
renamed:    mako.config -> mako/mako.config
renamed:    sway_config -> sway/sway_config
2022-08-14 14:13:34 +02:00
Tobias Maier
e11f86ac39 Improved folder structure
renamed:    .p10k.zsh -> zsh/.p10k.zsh
	renamed:    .zshrc -> zsh/.zshrc
2022-08-14 14:11:17 +02:00
Tobias Maier
fceac01756 Moved foot ini to new folder structire
renamed:    foot.ini -> foot/foot.ini
2022-08-14 14:04:39 +02:00
2e43c9ad1c Added nvim aliase 2022-08-10 09:19:35 +02:00
Tobias Maier
c26581534e added nvim config 2022-08-10 09:18:59 +02:00
f45249e609 Test 2022-08-09 22:25:23 +02:00
Tobias Maier
a62f93a0e1 Changes 2022-08-09 20:37:59 +02:00
Tobias Maier
679133c10f fix 2022-08-07 21:46:20 +02:00
Tobias Maier
5d46974c1e t 2022-08-07 21:42:51 +02:00
Tobias Maier
51dd6f9de8 d 2022-08-07 21:42:46 +02:00
Tobias Maier
bbeb757ee9 test 2022-08-07 21:30:39 +02:00
Tobias Maier
cb26bbcd56 fix 2022-08-07 21:29:09 +02:00
Tobias Maier
d174020202 test 2022-08-07 21:26:04 +02:00
Tobias Maier
040a4cea83 Fix 2022-08-07 21:21:48 +02:00
Tobias Maier
4b953a4e22 waybar update 2022-08-07 21:18:56 +02:00
daef669059 revert 6f3c9265ca
revert New waybar
2022-08-07 20:41:17 +02:00
Tobias Maier
6f3c9265ca New waybar 2022-08-07 20:34:35 +02:00
Tobias Maier
a7b85f2a7b Mixed up files 2022-08-07 19:51:28 +02:00
Tobias Maier
ff30ff05e5 Added new waybar 2022-08-07 19:47:29 +02:00
Tobias Maier
1acd2c5417 Better size 2022-08-07 11:35:50 +02:00
Tobias Maier
66f9609bb0 Font update 2022-08-07 11:35:08 +02:00
Tobias Maier
0d78f6e796 Some changes 2022-08-07 11:20:24 +02:00
Tobias Maier
d5ea3fa02f Merge branch 'master' of ssh://gitea.maiertobi.de:222/tobimai/dotfiles 2022-08-07 10:46:22 +02:00
Tobias Maier
ea9739dfbc Added bemenu 2022-08-07 10:46:10 +02:00
Tobias Maier
f4ffb6b0a7 River update 2022-08-07 10:41:50 +02:00
11f6829b4b Added alias for cd to actually run z 2022-07-29 11:19:49 +02:00
Tobias Maier
bf137670b5 Added history search 2022-06-14 19:00:45 +02:00
Tobias Maier
035ed0bf2b Alias for y and z 2022-06-14 18:50:40 +02:00
Tobias Maier
3ee46affad added z 2022-06-14 18:48:50 +02:00
Tobias Maier
7e7f278147 fix 2022-06-13 21:52:04 +02:00
Tobias Maier
e1d505236e Updated zshrc 2022-06-13 21:36:31 +02:00
Tobias Maier
dfbdaec17f Update 2022-06-12 17:41:24 +02:00
Tobias Maier
0b0f5766f0 Merge branch 'master' of ssh://gitea.maiertobi.de:222/tobimai/dotfiles 2022-06-12 14:50:10 +02:00
Tobias Maier
701d51f2ce Dotfiles update 2022-06-12 14:49:37 +02:00
0f55958efd Added river init file 2022-06-07 07:43:00 +02:00
Tobias Maier
ece1b1abb3 fixed alias clash 2022-06-04 19:41:56 +02:00
Tobias Maier
becd81e932 Fixed stupid bash 2022-06-04 19:37:05 +02:00
Tobias Maier
62c2f79895 added exa and exa config 2022-06-04 19:35:20 +02:00
6ecf9994aa Update '.zshrc' 2022-05-10 19:29:44 +02:00
63c7b50d54 updated config files 2021-11-20 12:46:02 +01:00
7f5753eacc updated config files 2021-11-20 12:44:50 +01:00
157a9df183 updated config files 2021-11-20 12:38:37 +01:00
8e5645db8e updated config files 2021-11-20 12:28:49 +01:00
2b47d14b90 Removed mouse keybinds 2021-11-20 12:02:30 +01:00
7333efaddb Added VScode desktop file which includes wayland flags 2021-11-20 11:53:41 +00:00
e2e7c391ab Removed mouse keybinds 2021-11-20 11:43:09 +01:00
134bc9ab0c updated config files 2021-11-20 11:41:58 +01:00
db145e2517 updated config files 2021-11-20 11:40:23 +01:00
7b45968834 updated config files 2021-11-20 11:37:53 +01:00
00c8c2e8e7 updated config files 2021-11-20 11:18:21 +01:00
19950bbda1 updated config files 2021-11-20 11:15:27 +01:00
b7070c8307 changed wifi to proper interface 2021-11-20 00:21:39 +01:00
e5dac7591b updated config files 2021-11-19 22:10:15 +01:00
2c995bcc89 updated config files 2021-11-19 22:07:41 +01:00
57621f5fd9 updated config files 2021-11-19 22:02:57 +01:00
93ad765a4c updated config files 2021-11-19 21:49:33 +01:00
448785d33e Merge branch 'master' of ssh://gitea.maiertobi.de:222/tobimai/dotfiles 2021-11-19 21:42:31 +01:00
aeff02c3fe updated config files 2021-11-19 21:42:00 +01:00
28feea0c84 Moved into util folder 2021-11-19 21:33:02 +01:00
3b6408412c Added example file for WiFi 2021-11-19 21:32:36 +01:00
65eddb9c82 updated config files 2021-11-17 21:35:45 +01:00
96a4518336 updated config files 2021-11-17 20:54:49 +01:00
43bfe9082f updated config files 2021-11-16 23:48:51 +01:00
171a12963f updated config files 2021-11-16 23:45:19 +01:00
103ca24eba updated config files 2021-11-16 23:41:03 +01:00
0f0b08cb08 updated config files 2021-11-16 23:37:18 +01:00
b9e5e0436d updated config files 2021-11-16 23:35:41 +01:00
ac6a31068c updated config files 2021-11-16 23:26:05 +01:00
3e07bddfd7 updated config files 2021-11-16 16:39:57 +01:00
0f248d7ae6 updated config files 2021-11-16 16:36:51 +01:00
f003eb3563 updated config files 2021-11-15 21:50:34 +01:00
8b9b821dc0 updated config files 2021-11-15 21:47:15 +01:00
f177d293ca updated config files 2021-11-15 21:42:56 +01:00
848d08b9bc updated config files 2021-11-15 21:21:28 +01:00
34bc7d74f3 updated config files 2021-11-15 21:13:33 +01:00
23f1d446c2 updated config files 2021-11-15 21:08:16 +01:00
5573ff4198 updated config files 2021-11-15 20:54:35 +01:00
775d549c9b updated config files 2021-11-15 20:52:27 +01:00
d101bbcda7 updated config files 2021-11-15 20:49:51 +01:00
84d0c925d7 updated config files 2021-11-15 20:36:21 +01:00
d2fdcf8fd7 updated config files 2021-11-14 22:27:46 +01:00
ee7822f82b Merge pull request 'updated config files' (#1) from updates into master
Reviewed-on: https://gitea.maiertobi.de/tobimai/dotfiles/pulls/1
2021-11-14 22:23:47 +01:00
219d795c70 updated config files 2021-11-14 22:22:24 +01:00
20 changed files with 1353 additions and 156 deletions

120
.zshrc
View File

@@ -1,120 +0,0 @@
# 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
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
ZSH=/usr/share/oh-my-zsh/
# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
ZSH_THEME="robbyrussell"
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in $ZSH/themes/
# If set to an empty array, this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion.
# Case-sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"
# Uncomment one of the following lines to change the auto-update behavior
# zstyle ':omz:update' mode disabled # disable automatic updates
# zstyle ':omz:update' mode auto # update automatically without asking
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
# Uncomment the following line to change how often to auto-update (in days).
# zstyle ':omz:update' frequency 13
# Uncomment the following line if pasting URLs and other text is messed up.
# DISABLE_MAGIC_FUNCTIONS="true"
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# You can also set it to another string to have that shown instead of the default red dots.
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output.
# You can set one of the optional three formats:
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
# or set a custom format using the strftime function format specifications,
# see 'man strftime' for details.
# HIST_STAMPS="mm/dd/yyyy"
# Would you like to use another custom folder than $ZSH/custom?
ZSH_CUSTOM=/usr/share/zsh
# Which plugins would you like to load?
# Standard plugins can be found in $ZSH/plugins/
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git
zsh-autosuggestions
zsh-syntax-highlighting)
# User configuration
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
ZSH_CACHE_DIR=$HOME/.cache/oh-my-zsh
if [[ ! -d $ZSH_CACHE_DIR ]]; then
mkdir $ZSH_CACHE_DIR
fi
source $ZSH/oh-my-zsh.sh
source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh

1
awesome/dotty.json Normal file
View File

@@ -0,0 +1 @@
{"name": "awesomeWM", "files":[{"src": "rc.lua", "dest": "{{config}}/awesome/rc.lua"}]}

577
awesome/rc.lua Normal file
View File

@@ -0,0 +1,577 @@
-- If LuaRocks is installed, make sure that packages installed through it are
-- found (e.g. lgi). If LuaRocks is not installed, do nothing.
pcall(require, "luarocks.loader")
-- Standard awesome library
local gears = require("gears")
local awful = require("awful")
require("awful.autofocus")
-- Widget and layout library
local wibox = require("wibox")
-- Theme handling library
local beautiful = require("beautiful")
-- Notification library
local naughty = require("naughty")
local menubar = require("menubar")
local hotkeys_popup = require("awful.hotkeys_popup")
-- Enable hotkeys help widget for VIM and other apps
-- when client with a matching name is opened:
require("awful.hotkeys_popup.keys")
awful.util.spawn("picom --daemon")
awful.util.spawn("xrandr --output DP-2 --output HDMI-0 --left-of DP-2")
awful.util.spawn("xinput --set-prop 14 'libinput Accel Speed' -0.2")
awful.util.spawn("xinput --set-prop 14 'libinput Accel Profile Enabled' 0, 1")
-- {{{ Error handling
-- Check if awesome encountered an error during startup and fell back to
-- another config (This code will only ever execute for the fallback config)
if awesome.startup_errors then
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, there were errors during startup!",
text = awesome.startup_errors })
end
-- Handle runtime errors after startup
do
local in_error = false
awesome.connect_signal("debug::error", function (err)
-- Make sure we don't go into an endless error loop
if in_error then return end
in_error = true
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, an error happened!",
text = tostring(err) })
in_error = false
end)
end
-- }}}
-- {{{ Variable definitions
-- Themes define colours, icons, font and wallpapers.
beautiful.init(gears.filesystem.get_themes_dir() .. "default/theme.lua")
-- This is used later as the default terminal and editor to run.
terminal = "kitty"
rofi = "rofi -show run"
editor = os.getenv("EDITOR") or "nvim"
editor_cmd = terminal .. " -e " .. editor
-- Default modkey.
-- Usually, Mod4 is the key with a logo between Control and Alt.
-- If you do not like this or do not have such a key,
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
-- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod4"
-- Table of layouts to cover with awful.layout.inc, order matters.
awful.layout.layouts = {
--awful.layout.suit.floating,
awful.layout.suit.tile,
awful.layout.suit.tile.left,
--awful.layout.suit.tile.bottom,
awful.layout.suit.tile.top,
--wful.layout.suit.fair,
--awful.layout.suit.fair.horizontal,
--awful.layout.suit.spiral,
--awful.layout.suit.spiral.dwindle,
--awful.layout.suit.max,
--awful.layout.suit.max.fullscreen,
--awful.layout.suit.magnifier,
--awful.layout.suit.corner.nw,
-- awful.layout.suit.corner.ne,
-- awful.layout.suit.corner.sw,
-- awful.layout.suit.corner.se,
}
-- }}}
-- {{{ Menu
-- Create a launcher widget and a main menu
myawesomemenu = {
{ "hotkeys", function() hotkeys_popup.show_help(nil, awful.screen.focused()) end },
{ "manual", terminal .. " -e man awesome" },
{ "edit config", editor_cmd .. " " .. awesome.conffile },
{ "restart", awesome.restart },
{ "quit", function() awesome.quit() end },
}
mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
{ "open terminal", terminal }
}
})
mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon,
menu = mymainmenu })
-- Menubar configuration
menubar.utils.terminal = terminal -- Set the terminal for applications that require it
-- }}}
-- Keyboard map indicator and switcher
mykeyboardlayout = awful.widget.keyboardlayout()
-- {{{ Wibar
-- Create a textclock widget
mytextclock = wibox.widget.textclock()
-- Create a wibox for each screen and add it
local taglist_buttons = gears.table.join(
awful.button({ }, 1, function(t) t:view_only() end),
awful.button({ modkey }, 1, function(t)
if client.focus then
client.focus:move_to_tag(t)
end
end),
awful.button({ }, 3, awful.tag.viewtoggle),
awful.button({ modkey }, 3, function(t)
if client.focus then
client.focus:toggle_tag(t)
end
end),
awful.button({ }, 4, function(t) awful.tag.viewnext(t.screen) end),
awful.button({ }, 5, function(t) awful.tag.viewprev(t.screen) end)
)
local tasklist_buttons = gears.table.join(
awful.button({ }, 1, function (c)
if c == client.focus then
c.minimized = true
else
c:emit_signal(
"request::activate",
"tasklist",
{raise = true}
)
end
end),
awful.button({ }, 3, function()
awful.menu.client_list({ theme = { width = 250 } })
end),
awful.button({ }, 4, function ()
awful.client.focus.byidx(1)
end),
awful.button({ }, 5, function ()
awful.client.focus.byidx(-1)
end))
local function set_wallpaper(s)
-- Wallpaper
if beautiful.wallpaper then
local wallpaper = beautiful.wallpaper
-- If wallpaper is a function, call it with the screen
if type(wallpaper) == "function" then
wallpaper = wallpaper(s)
end
gears.wallpaper.maximized(wallpaper, s, true)
end
end
-- Re-set wallpaper when a screen's geometry changes (e.g. different resolution)
screen.connect_signal("property::geometry", set_wallpaper)
awful.screen.connect_for_each_screen(function(s)
-- Wallpaper
set_wallpaper(s)
-- Each screen has its own tag table.
awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[1])
-- Create a promptbox for each screen
s.mypromptbox = awful.widget.prompt()
-- Create an imagebox widget which will contain an icon indicating which layout we're using.
-- We need one layoutbox per screen.
s.mylayoutbox = awful.widget.layoutbox(s)
s.mylayoutbox:buttons(gears.table.join(
awful.button({ }, 1, function () awful.layout.inc( 1) end),
awful.button({ }, 3, function () awful.layout.inc(-1) end),
awful.button({ }, 4, function () awful.layout.inc( 1) end),
awful.button({ }, 5, function () awful.layout.inc(-1) end)))
-- Create a taglist widget
s.mytaglist = awful.widget.taglist {
screen = s,
filter = awful.widget.taglist.filter.all,
buttons = taglist_buttons
}
-- Create a tasklist widget
s.mytasklist = awful.widget.tasklist {
screen = s,
filter = awful.widget.tasklist.filter.currenttags,
buttons = tasklist_buttons
}
-- Create the wibox
s.mywibox = awful.wibar({ position = "top", screen = s })
-- Add widgets to the wibox
s.mywibox:setup {
layout = wibox.layout.align.horizontal,
{ -- Left widgets
layout = wibox.layout.fixed.horizontal,
mylauncher,
s.mytaglist,
s.mypromptbox,
},
s.mytasklist, -- Middle widget
{ -- Right widgets
layout = wibox.layout.fixed.horizontal,
mykeyboardlayout,
wibox.widget.systray(),
mytextclock,
s.mylayoutbox,
},
}
end)
-- }}}
-- {{{ Mouse bindings
root.buttons(gears.table.join(
awful.button({ }, 3, function () mymainmenu:toggle() end),
awful.button({ }, 4, awful.tag.viewnext),
awful.button({ }, 5, awful.tag.viewprev)
))
-- }}}
-- {{{ Key bindings
globalkeys = gears.table.join(
awful.key({ modkey, }, "s", hotkeys_popup.show_help,
{description="show help", group="awesome"}),
awful.key({ modkey, }, "Left", awful.tag.viewprev,
{description = "view previous", group = "tag"}),
awful.key({ modkey, }, "Right", awful.tag.viewnext,
{description = "view next", group = "tag"}),
awful.key({ modkey, }, "Escape", awful.tag.history.restore,
{description = "go back", group = "tag"}),
awful.key({ modkey, }, "j",
function ()
awful.client.focus.byidx( 1)
end,
{description = "focus next by index", group = "client"}
),
awful.key({ modkey, }, "k",
function ()
awful.client.focus.byidx(-1)
end,
{description = "focus previous by index", group = "client"}
),
awful.key({ modkey, }, "w", function () mymainmenu:show() end,
{description = "show main menu", group = "awesome"}),
-- Layout manipulation
awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end,
{description = "swap with next client by index", group = "client"}),
awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end,
{description = "swap with previous client by index", group = "client"}),
awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end,
{description = "focus the next screen", group = "screen"}),
awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end,
{description = "focus the previous screen", group = "screen"}),
awful.key({ modkey, }, "u", awful.client.urgent.jumpto,
{description = "jump to urgent client", group = "client"}),
awful.key({ modkey, }, "Tab",
function ()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end,
{description = "go back", group = "client"}),
-- Standard program
awful.key({ modkey, }, "Return", function () awful.spawn(terminal) end,
{description = "open a terminal", group = "launcher"}),
awful.key({ modkey, }, "d", function () awful.spawn(rofi) end,
{description = "open Rofi", group = "launcher"}),
awful.key({ modkey, "Control" }, "r", awesome.restart,
{description = "reload awesome", group = "awesome"}),
awful.key({ modkey, "Shift" }, "q", awesome.quit,
{description = "quit awesome", group = "awesome"}),
awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end,
{description = "increase master width factor", group = "layout"}),
awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end,
{description = "decrease master width factor", group = "layout"}),
awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1, nil, true) end,
{description = "increase the number of master clients", group = "layout"}),
awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1, nil, true) end,
{description = "decrease the number of master clients", group = "layout"}),
awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1, nil, true) end,
{description = "increase the number of columns", group = "layout"}),
awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1, nil, true) end,
{description = "decrease the number of columns", group = "layout"}),
awful.key({ modkey, }, "space", function () awful.layout.inc( 1) end,
{description = "select next", group = "layout"}),
awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(-1) end,
{description = "select previous", group = "layout"}),
awful.key({ modkey, "Control" }, "n",
function ()
local c = awful.client.restore()
-- Focus restored client
if c then
c:emit_signal(
"request::activate", "key.unminimize", {raise = true}
)
end
end,
{description = "restore minimized", group = "client"}),
-- Prompt
awful.key({ modkey }, "r", function () awful.screen.focused().mypromptbox:run() end,
{description = "run prompt", group = "launcher"}),
awful.key({ modkey }, "x",
function ()
awful.prompt.run {
prompt = "Run Lua code: ",
textbox = awful.screen.focused().mypromptbox.widget,
exe_callback = awful.util.eval,
history_path = awful.util.get_cache_dir() .. "/history_eval"
}
end,
{description = "lua execute prompt", group = "awesome"}),
-- Menubar
awful.key({ modkey }, "p", function() menubar.show() end,
{description = "show the menubar", group = "launcher"})
)
clientkeys = gears.table.join(
awful.key({ modkey, }, "f",
function (c)
c.fullscreen = not c.fullscreen
c:raise()
end,
{description = "toggle fullscreen", group = "client"}),
awful.key({ modkey }, "q", function (c) c:kill() end,
{description = "close", group = "client"}),
awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ,
{description = "toggle floating", group = "client"}),
awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end,
{description = "move to master", group = "client"}),
awful.key({ modkey, }, "o", function (c) c:move_to_screen() end,
{description = "move to screen", group = "client"}),
awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end,
{description = "toggle keep on top", group = "client"}),
awful.key({ modkey, }, "n",
function (c)
-- The client currently has the input focus, so it cannot be
-- minimized, since minimized clients can't have the focus.
c.minimized = true
end ,
{description = "minimize", group = "client"}),
awful.key({ modkey, }, "m",
function (c)
c.maximized = not c.maximized
c:raise()
end ,
{description = "(un)maximize", group = "client"}),
awful.key({ modkey, "Control" }, "m",
function (c)
c.maximized_vertical = not c.maximized_vertical
c:raise()
end ,
{description = "(un)maximize vertically", group = "client"}),
awful.key({ modkey, "Shift" }, "m",
function (c)
c.maximized_horizontal = not c.maximized_horizontal
c:raise()
end ,
{description = "(un)maximize horizontally", group = "client"})
)
-- Bind all key numbers to tags.
-- Be careful: we use keycodes to make it work on any keyboard layout.
-- This should map on the top row of your keyboard, usually 1 to 9.
for i = 1, 9 do
globalkeys = gears.table.join(globalkeys,
-- View tag only.
awful.key({ modkey }, "#" .. i + 9,
function ()
local screen = awful.screen.focused()
local tag = screen.tags[i]
if tag then
tag:view_only()
end
end,
{description = "view tag #"..i, group = "tag"}),
-- Toggle tag display.
awful.key({ modkey, "Control" }, "#" .. i + 9,
function ()
local screen = awful.screen.focused()
local tag = screen.tags[i]
if tag then
awful.tag.viewtoggle(tag)
end
end,
{description = "toggle tag #" .. i, group = "tag"}),
-- Move client to tag.
awful.key({ modkey, "Shift" }, "#" .. i + 9,
function ()
if client.focus then
local tag = client.focus.screen.tags[i]
if tag then
client.focus:move_to_tag(tag)
end
end
end,
{description = "move focused client to tag #"..i, group = "tag"}),
-- Toggle tag on focused client.
awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9,
function ()
if client.focus then
local tag = client.focus.screen.tags[i]
if tag then
client.focus:toggle_tag(tag)
end
end
end,
{description = "toggle focused client on tag #" .. i, group = "tag"})
)
end
clientbuttons = gears.table.join(
awful.button({ }, 1, function (c)
c:emit_signal("request::activate", "mouse_click", {raise = true})
end),
awful.button({ modkey }, 1, function (c)
c:emit_signal("request::activate", "mouse_click", {raise = true})
awful.mouse.client.move(c)
end),
awful.button({ modkey }, 3, function (c)
c:emit_signal("request::activate", "mouse_click", {raise = true})
awful.mouse.client.resize(c)
end)
)
-- Set keys
root.keys(globalkeys)
-- }}}
-- {{{ Rules
-- Rules to apply to new clients (through the "manage" signal).
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { border_width = beautiful.border_width,
border_color = beautiful.border_normal,
focus = awful.client.focus.filter,
raise = true,
keys = clientkeys,
buttons = clientbuttons,
screen = awful.screen.preferred,
placement = awful.placement.no_overlap+awful.placement.no_offscreen
}
},
-- Floating clients.
{ rule_any = {
instance = {
"DTA", -- Firefox addon DownThemAll.
"copyq", -- Includes session name in class.
"pinentry",
},
class = {
"Arandr",
"Blueman-manager",
"Gpick",
"Kruler",
"MessageWin", -- kalarm.
"Sxiv",
"Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size.
"Wpa_gui",
"veromix",
"xtightvncviewer"},
-- Note that the name property shown in xprop might be set slightly after creation of the client
-- and the name shown there might not match defined rules here.
name = {
"Event Tester", -- xev.
},
role = {
"AlarmWindow", -- Thunderbird's calendar.
"ConfigManager", -- Thunderbird's about:config.
"pop-up", -- e.g. Google Chrome's (detached) Developer Tools.
}
}, properties = { floating = true }},
-- Add titlebars to normal clients and dialogs
{ rule_any = {type = { "normal", "dialog" }
}, properties = { titlebars_enabled = true }
},
-- Set Firefox to always map on the tag named "2" on screen 1.
-- { rule = { class = "Firefox" },
-- properties = { screen = 1, tag = "2" } },
}
-- }}}
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.connect_signal("manage", function (c)
-- Set the windows at the slave,
-- i.e. put it at the end of others instead of setting it master.
-- if not awesome.startup then awful.client.setslave(c) end
if awesome.startup
and not c.size_hints.user_position
and not c.size_hints.program_position then
-- Prevent clients from being unreachable after screen count changes.
awful.placement.no_offscreen(c)
end
end)
-- Add a titlebar if titlebars_enabled is set to true in the rules.
client.connect_signal("request::titlebars", function(c)
-- buttons for the titlebar
local buttons = gears.table.join(
awful.button({ }, 1, function()
c:emit_signal("request::activate", "titlebar", {raise = true})
awful.mouse.client.move(c)
end),
awful.button({ }, 3, function()
c:emit_signal("request::activate", "titlebar", {raise = true})
awful.mouse.client.resize(c)
end)
)
awful.titlebar(c) : setup {
{ -- Left
awful.titlebar.widget.iconwidget(c),
buttons = buttons,
layout = wibox.layout.fixed.horizontal
},
{ -- Middle
{ -- Title
align = "center",
widget = awful.titlebar.widget.titlewidget(c)
},
buttons = buttons,
layout = wibox.layout.flex.horizontal
},
{ -- Right
awful.titlebar.widget.floatingbutton (c),
awful.titlebar.widget.maximizedbutton(c),
awful.titlebar.widget.stickybutton (c),
awful.titlebar.widget.ontopbutton (c),
awful.titlebar.widget.closebutton (c),
layout = wibox.layout.fixed.horizontal()
},
layout = wibox.layout.align.horizontal
}
end)
-- Enable sloppy focus, so that focus follows mouse.
client.connect_signal("mouse::enter", function(c)
c:emit_signal("request::activate", "mouse_enter", {raise = false})
end)
client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end)
client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)
-- }}}

View File

@@ -5,10 +5,10 @@
# login-shell=no
# app-id=foot
# title=foot
title=Terminal
# locked-title=no
# font=monospace:size=8
font=Roboto Mono:size=10
# font-bold=<bold variant of regular font>
# font-italic=<italic variant of regular font>
# font-bold-italic=<bold+italic variant of regular font>
@@ -18,7 +18,7 @@
# vertical-letter-offset=0
# underline-offset=<font metrics>
# box-drawings-uses-font-glyphs=no
# dpi-aware=yes
dpi-aware=no
# initial-window-size-pixels=700x500 # Or,
# initial-window-size-chars=<COLSxROWS>
@@ -67,7 +67,7 @@
[colors]
alpha=1.0
foreground=ffffff
background=1c1c1c
background=000000
regular0=000000 # black
regular1=ff2c2c # red
regular2=54ff54 # green

9
install_dotfiles.sh Normal file
View File

@@ -0,0 +1,9 @@
echo $PWD
ln -sf $PWD/foot/foot.ini $HOME/.config/foot/foot.ini
ln -sf $PWD/nvim/init.vim $HOME/.config/nvim/init.vim
ln -sf $PWD/river/init $HOME/.config/river/init
rm -rf $HOME/.config/waybar
ln -sf $PWD/waybar $HOME/.config/waybar
ln -sf $PWD/zsh/.zshrc $HOME/.zshrc
ln -sf $PWD/zsh/.p10k.zsh $HOME/.p10k.zsh

3
install_zsh.sh Normal file
View File

@@ -0,0 +1,3 @@
git clone https://github.com/romkatv/powerlevel10k.git /home/tobi/.config/zsh_addons/powerlevel10k
git clone https://github.com/zsh-users/zsh-autosuggestions.git /home/tobi/.config/zsh_addons/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git /home/tobi/.config/zsh_addons/zsh-syntax-highlighting

1
mako/mako.config Normal file
View File

@@ -0,0 +1 @@
default-timeout=30000

14
nvim/init.vim Normal file
View File

@@ -0,0 +1,14 @@
" Plugins will be downloaded under the specified directory.
call plug#begin(has('nvim') ? stdpath('data') . '/plugged' : '~/.vim/plugged')
" Declare the list of plugins.
Plug 'tpope/vim-sensible'
Plug 'https://github.com/hashivim/vim-terraform.git'
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'https://tpope.io/vim/fugitive.git'
" List ends here. Plugins become visible to Vim after this call.
call plug#end()
set mouse=nvi
let g:airline_powerline_fonts = 1

165
river/init Normal file
View File

@@ -0,0 +1,165 @@
#!/bin/sh
# This is the example configuration file for river.
#
# If you wish to edit this, you will probably want to copy it to
# $XDG_CONFIG_HOME/river/init or $HOME/.config/river/init first.
#
# See the river(1), riverctl(1), and rivertile(1) man pages for complete
# documentation.
# Note: the "Super" modifier is also known as Logo, GUI, Windows, Mod4, etc.
riverctl spawn waybar
# Super+Shift+Return to start an instance of foot (https://codeberg.org/dnkl/foot)
riverctl map normal Super Return spawn foot
riverctl map normal Super D spawn "rofi -show run -theme solarized"
# Super+Q to close the focused view
riverctl map normal Super Q close
# Super+Shift+E to exit river
riverctl map normal Super+Shift E exit
# Super+J and Super+K to focus the next/previous view in the layout stack
riverctl map normal Super L focus-view next
riverctl map normal Super H focus-view previous
# Super+Shift+J and Super+Shift+K to swap the focused view with the next/previous
# view in the layout stack
riverctl map normal Super+Shift L swap next
riverctl map normal Super+Shift H swap previous
# Super+Period and Super+Comma to focus the next/previous output
riverctl map normal Super Period focus-output next
riverctl map normal Super Comma focus-output previous
# Super+Shift+{Period,Comma} to send the focused view to the next/previous output
riverctl map normal Super+Shift Period send-to-output next
riverctl map normal Super+Shift Comma send-to-output previous
# Super+Return to bump the focused view to the top of the layout stack
riverctl map normal Super+Shift Return zoom
# Super+H and Super+L to decrease/increase the main ratio of rivertile(1)
riverctl map normal Super J send-layout-cmd rivertile "main-ratio -0.05"
riverctl map normal Super K send-layout-cmd rivertile "main-ratio +0.05"
# Super+Shift+H and Super+Shift+L to increment/decrement the main count of rivertile(1)
riverctl map normal Super+Alt H send-layout-cmd rivertile "main-count +1"
riverctl map normal Super+Alt L send-layout-cmd rivertile "main-count -1"
# Super+Alt+{H,J,K,L} to move views
riverctl map normal Super+Alt H move left 100
riverctl map normal Super+Alt J move down 100
riverctl map normal Super+Alt K move up 100
riverctl map normal Super+Alt L move right 100
# Super+Alt+Control+{H,J,K,L} to snap views to screen edges
riverctl map normal Super+Alt+Control H snap left
riverctl map normal Super+Alt+Control J snap down
riverctl map normal Super+Alt+Control K snap up
riverctl map normal Super+Alt+Control L snap right
# Super+Alt+Shift+{H,J,K,L} to resize views
riverctl map normal Super+Alt+Shift H resize horizontal -100
riverctl map normal Super+Alt+Shift J resize vertical 100
riverctl map normal Super+Alt+Shift K resize vertical -100
riverctl map normal Super+Alt+Shift L resize horizontal 100
# Super + Left Mouse Button to move views
riverctl map-pointer normal Super BTN_LEFT move-view
# Super + Right Mouse Button to resize views
riverctl map-pointer normal Super BTN_RIGHT resize-view
for i in $(seq 1 9)
do
tags=$((1 << ($i - 1)))
# Super+[1-9] to focus tag [0-8]
riverctl map normal Super $i set-focused-tags $tags
# Super+Shift+[1-9] to tag focused view with tag [0-8]
riverctl map normal Super+Shift $i set-view-tags $tags
# Super+Ctrl+[1-9] to toggle focus of tag [0-8]
riverctl map normal Super+Control $i toggle-focused-tags $tags
# Super+Shift+Ctrl+[1-9] to toggle tag [0-8] of focused view
riverctl map normal Super+Shift+Control $i toggle-view-tags $tags
done
# Super+0 to focus all tags
# Super+Shift+0 to tag focused view with all tags
all_tags=$(((1 << 32) - 1))
riverctl map normal Super 0 set-focused-tags $all_tags
riverctl map normal Super+Shift 0 set-view-tags $all_tags
# Super+Space to toggle float
riverctl map normal Super Space toggle-float
# Super+F to toggle fullscreen
riverctl map normal Super F toggle-fullscreen
# Super+{Up,Right,Down,Left} to change layout orientation
riverctl map normal Super Up send-layout-cmd rivertile "main-location top"
riverctl map normal Super Right send-layout-cmd rivertile "main-location right"
riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom"
riverctl map normal Super Left send-layout-cmd rivertile "main-location left"
# Declare a passthrough mode. This mode has only a single mapping to return to
# normal mode. This makes it useful for testing a nested wayland compositor
riverctl declare-mode passthrough
# Super+F11 to enter passthrough mode
riverctl map normal Super F11 enter-mode passthrough
# Super+F11 to return to normal mode
riverctl map passthrough Super F11 enter-mode normal
# Various media key mapping examples for both normal and locked mode which do
# not have a modifier
for mode in normal locked
do
# Eject the optical drive (well if you still have one that is)
riverctl map $mode None XF86Eject spawn 'eject -T'
# Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5'
riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute'
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)
riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause'
riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause'
riverctl map $mode None XF86AudioPrev spawn 'playerctl previous'
riverctl map $mode None XF86AudioNext spawn 'playerctl next'
# Control screen backlight brightness with light (https://github.com/haikarainen/light)
riverctl map $mode None XF86MonBrightnessUp spawn 'light -A 5'
riverctl map $mode None XF86MonBrightnessDown spawn 'light -U 5'
done
# Set background and border color
riverctl background-color 0x002b36
riverctl border-color-focused 0x93a1a1
riverctl border-color-unfocused 0x586e75
# Set keyboard repeat rate
riverctl set-repeat 50 300
# Make certain views start floating
riverctl float-filter-add app-id float
riverctl float-filter-add title "popup title with spaces"
# Set app-ids and titles of views which should use client side decorations
riverctl csd-filter-add app-id "gedit"
# Set and exec into the default layout generator, rivertile.
# River will send the process group of the init executable SIGTERM on exit.
riverctl default-layout rivertile
exec rivertile -view-padding 3 -outer-padding 3 -main-ratio 0.7
riverctl input pointer-1133-16518-Logitech_G703_LS accel-profile none
riverctl input pointer-1133-16518-Logitech_G703_LS pointer-accel -0.2

View File

@@ -1,12 +1,40 @@
exec udiskie --tray --appindicator
exec mkfifo /tmp/wob && tail -f /tmp/wob | wob
exec mako
bindsym XF86MonBrightnessUp exec light -A 10 && light | cut -d '.' -f1 > /tmp/wob
bindsym XF86MonBrightnessDown exec light -U 10 && light | cut -d '.' -f1 > /tmp/wob
bindsym XF86AudioMute exec "pamixer -t"
bindsym XF86AudioMicMute exec "pamixer --source 46 -t"
bindsym XF86AudioRaiseVolume exec "pamixer -i 5 && pamixer --get-volume > /tmp/wob"
bindsym XF86AudioLowerVolume exec "pamixer -d 5 && pamixer --get-volume > /tmp/wob"
### Input configuration
input "2:14:ETPS/2_Elantech_Touchpad" {
dwt enabled
tap enabled
natural_scroll enabled
middle_emulation enabled
}
# Logo key. Use Mod1 for Alt.
set $mod Mod1
# Home row direction keys, like vim
set $left h
set $down j
set $up k
set $right l
set $lock swaylock --screenshots --clock --indicator --effect-blur 5x7
exec swayidle timeout 600 '$lock' timeout 1200 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -f -c 000000'
bindsym $mod+L exec $lock
input "type:keyboard" {
xkb_layout de
xkb_variant ,nodeadkeys
}
default_border pixel 2
default_border pixel 1
set $term foot
@@ -14,7 +42,7 @@ for_window [app_id="launcher"] floating enable, sticky enable, resize set 30 ppt
set $menu exec $term -a=launcher -e sway-launcher-desktop
bindsym $mod+d exec $menu
output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
output * bg /usr/share/backgrounds/archlinux/small.png fill
bindsym $mod+Return exec $term
bindsym $mod+Shift+q kill
@@ -22,27 +50,19 @@ floating_modifier $mod normal
bindsym $mod+Shift+c reload
smart_borders on
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 arStatusound:
#
# 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
@@ -116,14 +136,6 @@ bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut.
# Resizing containers:
#
mode "resize" {
# left will shrink the containers width
# right will grow the containers width
# up will shrink the containers height
# down will grow the containers height
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
# Ditto, with arrow keys
bindsym Left resize shrink width 10px
@@ -137,6 +149,13 @@ mode "resize" {
}
bindsym $mod+r mode "resize"
# class border bground text indicator child_border
client.focused #FFA445 #FFA445 #000000 #FFA445 #FFA445
client.focused_inactive #4A4A4A #4A4A4A #FFFFFF #4A4A4A #4A4A4A
client.unfocused #4A4A4A #4A4A4A #FFFFFF #4A4A4A #4A4A4A
client.urgent #2F343A #900000 #FFFFFF #900000 #900000
client.placeholder #000000 #0C0C0C #FFFFFF #000000 #0C0C0C
#
# Status Bar:
#

8
util/20-wlan0.network Normal file
View File

@@ -0,0 +1,8 @@
[Match]
Name=wlan0
[Network]
DHCP=yes
[DHCP]
RouteMetric=10

View File

@@ -0,0 +1,18 @@
[Desktop Entry]
Name=Visual Studio Code
Comment=Code Editing. Refined.
GenericName=Text Editor
Exec=/opt/visual-studio-code/code --enable-features=UseOzonePlatform --ozone-platform=wayland --no-sandbox --unity-launch %F
Icon=visual-studio-code
Type=Application
StartupNotify=false
StartupWMClass=Code
Categories=Utility;TextEditor;Development;IDE;
MimeType=text/plain;inode/directory;application/x-visual-studio-code-workspace;
Actions=new-empty-window;
Keywords=vscode;
[Desktop Action new-empty-window]
Name=New Empty Window
Exec=/opt/visual-studio-code/code --no-sandbox --new-window %F
Icon=visual-studio-code

173
waybar.old/style.css Normal file
View File

@@ -0,0 +1,173 @@
@keyframes blink-warning {
70% {
color: @light;
}
to {
color: @light;
background-color: @warning;
}
}
@keyframes blink-critical {
70% {
color: @light;
}
to {
color: @light;
background-color: @critical;
}
}
/* -----------------------------------------------------------------------------
* Styles
* -------------------------------------------------------------------------- */
/* COLORS */
/* Nord */
@define-color bg #000000;
@define-color light #eceff4;
@define-color warning #ffb726;
@define-color critical #ff3d00;
@define-color mode #4c566a;
@define-color workspaces @bg;
@define-color workspacesfocused #5c5c5c;
@define-color tray @bg;
/* Reset all styles */
* {
border: none;
border-radius: 0;
min-height: 0;
margin: 0;
padding: 0;
}
/* The whole bar */
#waybar {
background: @bg;
color: @light;
font-family: Noto Sans;
font-size: 11px;
font-weight: bold;
}
/* Each module */
#battery,
#clock,
#cpu,
#custom-layout,
#memory,
#network,
#pulseaudio,
#temperature,
#custom-alsa,
#tray,
#backlight {
padding-left: 10px;
padding-right: 10px;
border-right: 1px solid @light;
}
/* Each module that should blink */
#memory,
#temperature,
#battery {
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
/* Each critical module */
#memory.critical,
#cpu.critical,
#temperature.critical,
#battery.critical {
color: @critical;
}
/* Each critical that should blink */
#mode,
#memory.critical,
#temperature.critical,
#battery.critical.discharging {
animation-name: blink-critical;
animation-duration: 2s;
}
/* Each warning */
#network.disconnected,
#memory.warning,
#cpu.warning,
#temperature.warning,
#battery.warning {
color: @warning;
}
/* Each warning that should blink */
#battery.warning.discharging {
animation-name: blink-warning;
animation-duration: 3s;
}
/* Workspaces stuff */
#workspaces {
margin-right: 10px;
}
#workspaces button {
font-weight: bold; /* Somewhy the bar-wide setting is ignored*/
padding-left: 5px;
padding-right: 5px;
color: @light;
background: @bg;
}
#workspaces button.focused {
background: @workspacesfocused;
}
#workspaces button.urgent {
border-color: #c9545d;
color: #c9545d;
}
#window {
margin-right: 40px;
margin-left: 40px;
}
#network {
background: @bg;
}
#memory {
background: @bg;
}
#cpu {
background: @bg;
}
#battery {
background: @bg;
}
#clock.date {
background: @bg;
}
#clock.time {
background: @bg;
}
#tray {
background: @bg;
}

65
waybar.old/waybar.config Normal file
View File

@@ -0,0 +1,65 @@
{
"height": 25, // Waybar height (to be removed for auto height)
"modules-left": ["sway/workspaces"],
"modules-center": ["sway/window"],
"modules-right": ["network", "cpu", "memory", "pulseaudio","battery", "tray", "clock"],
"sway/workspaces": {
"disable-scroll": true,
"all-outputs": true,
"format": "{name}",
},
"tray": {
"spacing": 10
},
"clock": {
"timezone": "Europe/Berlin",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format": "{:%d/%m %H:%M:%S}"
},
"cpu": {
"format": "{usage}% ",
"tooltip": false
},
"memory": {
"format": "{}% "
},
"battery": {
"states": {
"good": 80,
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% ",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
"format-icons": ["", "", "", "", ""]
},
"network": {
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ifname}: {ipaddr}/{cidr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon} {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
}
}

52
waybar/config Executable file
View File

@@ -0,0 +1,52 @@
{
"layer": "top",
"modules-left": ["river/tags"],
"modules-center": ["river/window"],
"modules-right": ["tray", "battery", "pulseaudio","cpu", "temperature" ,"clock"],
"pulseaudio": {
"tooltip": false,
"scroll-step": 5,
"format": "{icon} {volume}%",
"format-muted": "婢 0%",
"on-click":"amixer -D pulse Master 1+ toggle",
"scroll-step": 5,
"format-icons": {
"default": ["", "", ""]
}
},
"temperature": {
"hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
"format": " {temperatureC}°C"
},
"river/window": {
"format": "{}",
"max-length": 90
},
"battery": {
"states": {
"good": 100,
"warning": 30,
"critical": 20
},
"format": "{icon} {capacity}%",
"format-charging": "{icon} {capacity}%",
"format-plugged": "{icon} {capacity}%",
"format-alt": "{time} {icon}",
"format-icons": ["", "", "", "", ""]
},
"tray":{
"icon-size":18,
"show-passive-items":true,
"spacing": 10,
"reverse-direction": true
},
"clock": {
"interval": 60,
"format": "{:%H:%M}",
"max-length": 25
},
"cpu": {
"interval": 10,
"format": "{usage}% - {avg_frequency}Ghz",
}
}

View File

@@ -0,0 +1,2 @@
#!/usr/bin/env bash
echo "$(date '+%H:%M')"

148
waybar/style.css Normal file
View File

@@ -0,0 +1,148 @@
* {
border: none;
border-radius: 0;
font-family: "JetbrainsMono Nerd Font";
font-size: 12px;
}
window#waybar {
background: none;
}
window#waybar.hidden {
opacity: 0.2;
}
#window {
margin-top: 6px;
padding-left: 10px;
padding-right: 10px;
border-radius: 5px;
transition: none;
background: #2e3440;
color: #d8dee9;
}
#tags {
margin-top: 6px;
margin-right: 12px;
margin-left: 12px;
font-size: 4px;
border-radius: 5px;
transition: none;
background: #2e3440;
}
#tags button {
transition: none;
color: #4c566a;
background: transparent;
border-radius: 0px;
}
#tags button.occupied {
transition: none;
color: #a3be8c;
background: transparent;
font-size: 4px;
}
#tags button.focused {
color: #81a1c1;
border-bottom: 2px solid #81a1c1;
}
#tags button:hover {
transition: none;
box-shadow: inherit;
text-shadow: inherit;
color: #81a1c1;
}
#temperature {
margin-top: 6px;
margin-left: 12px;
border-radius: 5px;
transition: none;
padding: 0 10px;
color: #a3be8c;
background: #2e3440;
}
#pulseaudio {
margin-top: 6px;
margin-left: 12px;
border-radius: 5px;
transition: none;
padding: 0 10px;
color: #a3be8c;
background: #2e3440;
}
#cpu {
margin-top: 6px;
margin-left: 12px;
border-radius: 5px;
transition: none;
padding: 0 10px;
color: #a3be8c;
background: #2e3440;
}
#clock {
margin-top: 6px;
margin-left: 12px;
margin-right: 12px;
border-radius: 5px;
transition: none;
padding: 0 10px;
color: #a3be8c;
background: #2e3440;
}
#battery {
margin-top: 6px;
margin-left: 12px;
border-radius: 5px;
transition: none;
padding: 10px 10px;
color: #a3be8c;
background: #2e3440;
}
#battery.critical:not(.charging) {
background-color: #d8dee9;
color: #2e3440;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@keyframes blink {
to {
background-color: #bf616a;
color: #d8dee9;
}
}
#backlight {
margin-top: 6px;
margin-left: 12px;
border-radius: 5px;
transition: none;
padding: 10px 10px;
color: #88c0d0;
background: #2e3440;
}
#tray {
margin-top: 6px;
margin-right: 12px;
border-radius: 5px;
padding-left: 10px;
padding-right: 10px;
color: #d8dee9;
background: #2e3440;
}

View File

@@ -45,17 +45,17 @@
command_execution_time # duration of the last command
background_jobs # presence of background jobs
direnv # direnv status (https://direnv.net/)
asdf # asdf version manager (https://github.com/asdf-vm/asdf)
# asdf # asdf version manager (https://github.com/asdf-vm/asdf)
virtualenv # python virtual environment (https://docs.python.org/3/library/venv.html)
anaconda # conda environment (https://conda.io/)
pyenv # python environment (https://github.com/pyenv/pyenv)
goenv # go environment (https://github.com/syndbg/goenv)
nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
nvm # node.js version from nvm (https://github.com/nvm-sh/nvm)
nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
# goenv # go environment (https://github.com/syndbg/goenv)
# nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
# nvm # node.js version from nvm (https://github.com/nvm-sh/nvm)
# nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
# node_version # node.js version
# go_version # go version (https://golang.org)
# rust_version # rustc version (https://www.rust-lang.org)
rust_version # rustc version (https://www.rust-lang.org)
# dotnet_version # .NET version (https://dotnet.microsoft.com)
# php_version # php version (https://www.php.net/)
# laravel_version # laravel php framework version (https://laravel.com/)
@@ -72,7 +72,7 @@
haskell_stack # haskell version from stack (https://haskellstack.org/)
kubecontext # current kubernetes context (https://kubernetes.io/)
terraform # terraform workspace (https://www.terraform.io)
# terraform_version # terraform version (https://www.terraform.io)
terraform_version # terraform version (https://www.terraform.io)
aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
aws_eb_env # aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/)
azure # azure account name (https://docs.microsoft.com/en-us/cli/azure)

58
zsh/.zshrc Normal file
View File

@@ -0,0 +1,58 @@
# 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
export PATH=/home/tobi/.cargo/bin:$PATH
source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/share/zsh/plugins/zsh-sudo/sudo.plugin.zsh
HISTFILE=~/.zsh_history
HISTSIZE=2500
SAVEHIST=5000
setopt autocd
unsetopt beep extendedglob nomatch
bindkey -v
zstyle :compinstall filename '/home/tobi/.zshrc'
autoload -Uz compinit
compinit
zstyle ':completion:*' completer _extensions _complete _approximate
zstyle ":completion:*:default" list-colors ${(s.:.)LS_COLORS} "ma=48;5;166;1"
zstyle ':completion:*' menu select
zstyle ':completion:*' use-cache on
zstyle ':completion:*' cache-path "$XDG_CACHE_HOME/zsh/.zcompcache"
zstyle ':completion:*:*:*:*:descriptions' format '%F{green}-- %d --%f'
zstyle ':completion:*:*:*:*:corrections' format '%F{yellow}!- %d (errors: %e) -!%f'
zstyle ':completion:*:messages' format ' %F{purple} -- %d --%f'
zstyle ':completion:*:warnings' format ' %F{red}-- no matches found --%f'
zstyle ':completion:*' group-name ''
zstyle ':completion:*' file-sort access
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
alias ls="exa --icons"
alias l="exa -lah --icons"
alias tp="terraform plan"
alias tiu="terraform init -upgrade"
alias ti="terraform init"
alias p="python"
alias y="z"
alias yi="zi"
alias cd="z"
alias vim="nvim"
alias e="nvim"
eval "$(zoxide init zsh)"
bindkey '^[[A' up-line-or-search
bindkey '^[[B' down-line-or-search

4
zsh/dotty.json Normal file
View File

@@ -0,0 +1,4 @@
{"name": "zsh", "files":[
{"src": ".zshrc", "dest": "{{home}}/.zshrc"},
{"src": ".p10k.zsh", "dest": "{{home}}/.p10k.zsh"}
]}