Compare commits

...

8 Commits

Author SHA1 Message Date
4e485e6277 Updated Desktop dotfiles 2024-05-28 18:53:10 -05:00
b413c6186a Update dotfiles 2024-05-23 17:13:31 -05:00
7f079a205e Forgot to add fish config 2024-03-28 14:54:35 -05:00
e9689e2f98 More fish configuration 2024-03-28 14:53:10 -05:00
c44bf0cd29 Fixed infinite undo 2024-03-26 15:05:57 -05:00
8bf9cb6892 Updated Desktop dotfiles 2024-03-26 15:03:20 -05:00
c990f0054f Update laptop nvim conf 2024-02-05 15:20:17 -06:00
fb8b00a355 Update laptop nvim conf 2024-02-05 15:15:35 -06:00
16 changed files with 445 additions and 36 deletions

View File

@@ -10,4 +10,4 @@ family = "Codelia Nerd Font"
style = "Regular"
[shell]
program = "/bin/zsh"
program = "/usr/bin/fish"

49
desktop/fish/config.fish Normal file
View File

@@ -0,0 +1,49 @@
if status is-interactive
fish_add_path "/home/eesim/.cargo/bin/"
### Local environment variables
set -x DENO_INSTALL "/home/eesim/.deno"
end
if status is-login
# SSH settings
eval (ssh-agent -c)
ssh-add /home/eesim/.ssh/id_ed25519
# Set environment variables in /etc/profile.d/
# exec bash -c "test -e /etc/profile && source /etc/profile"
### Environment Variables
# Set nvim to default editor
set -x EDITOR "/usr/bin/nvim"
set -x SUDO_EDITOR "/usr/bin/nvim"
# Set R library location
set -x R_LIBS_USER "/home/eesim/.local/lib/R"
# Disable GTK portal
set -x GTK_USE_PORTAL "0"
# Wayland environment variables
set -x XDG_CURRENT_DESKTOP "sway"
set -x XDG_CURRENT_SESSION "sway"
set -x XDG_SESSION_TYPE "wayland"
set -x ELECTRON_OZONE_PLATFORM_HINT "auto"
set -x QT_QPA_PLATFORM "wayland;xcb"
set -x SDL_VIDEODRIVER "wayland,x11"
# Java fix
set -x _JAVA_AWT_WM_NONREPARENTING "1"
### Themes
set -x QT_QPA_PLATFORMTHEME "qt5ct"
end
if test (tty) = "/dev/tty1"
sway
end

View File

@@ -1,4 +1,5 @@
vim.g.mapleader=','
vim.g.maplocalleader=','
vim.keymap.set('n', '<C-h>', '<C-w>h')
vim.keymap.set('n', '<C-j>', '<C-w>j')
@@ -7,6 +8,10 @@ vim.keymap.set('n', '<C-l>', '<C-w>l')
vim.keymap.set('n', '<leader>ff', ':FzfLua files<CR>')
vim.keymap.set('n', '<leader>fb', ':FzfLua buffers<CR>')
vim.keymap.set('n', '<leader>rg', ':FzfLua grep<CR>')
vim.keymap.set('n', '<leader>rg', ':FzfLua grep_project<CR>')
vim.keymap.set('i', '<S-Tab>', '<C-d>')
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)

View File

@@ -17,13 +17,27 @@ local plugins = {
'hrsh7th/nvim-cmp',
'hrsh7th/cmp-nvim-lsp',
'hrsh7th/cmp-path',
'rust-lang/rust.vim',
'L3MON4D3/LuaSnip',
{
'windwp/nvim-autopairs',
event = 'InsertEnter',
opts={},
opts = {},
},
{
'kaarmu/typst.vim',
ft = 'typst',
lazy = false,
},
'jalvesaq/Nvim-R',
{
'RaafatTurki/hex.nvim',
config = function()
require('hex').setup()
end
},
}

View File

@@ -1,17 +1,45 @@
local capabilities = require('cmp_nvim_lsp').default_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = false;
local lspconfig = require('lspconfig')
local servers = {'ccls', 'rust_analyzer', 'pylsp'}
lspconfig.rust_analyzer.setup {
capabilities = capabilities,
settings = {
["rust-analyzer"] = {
cargo = {
allFeatures = true,
},
imports = {
group = {
enable = false,
},
},
completion = {
postfix = {
enable = false,
},
},
},
},
}
for _, lsp in ipairs(servers) do
lspconfig.omnisharp.setup {
cmd = { "dotnet", "/usr/lib/omnisharp-roslyn/OmniSharp.dll"}
}
local default_servers = {'pylsp', 'ccls', 'typst_lsp', 'r_language_server', 'lua_ls'}
for _, lsp in ipairs(default_servers) do
lspconfig[lsp].setup {
capabilities = capabilities
}
end
local luasnip = require 'luasnip'
local cmp = require 'cmp'
cmp.setup {
preselect = cmp.PreselectMode.None,
mapping = cmp.mapping.preset.insert({
@@ -32,6 +60,8 @@ cmp.setup {
}),
sources = {
{ name = 'nvim_lsp' },
{ name = 'path' }
{ name = 'path' },
},
}

View File

@@ -31,8 +31,9 @@ vim.opt.wrapscan=true
vim.opt.report=0
vim.opt.list=true
vim.opt.completeopt=menuone,noselect,noinsert
vim.opt.completeopt=menuone,noselect
vim.opt.undofile=true
vim.g['loaded_perl_provider']=0
vim.g['python3_host_prog']='/usr/bin/python'
vim.g['python3_host_prog']='/usr/bin/python3'

View File

@@ -36,7 +36,7 @@ bindsym $mod+Return exec alacritty
bindsym $mod+Control+f exec MOZ_ENABLE_WAYLAND=1 firefox
bindsym $mod+Control+s exec steam
bindsym $mod+Control+t exec thunar
bindsym $mod+Control+d exec discord
bindsym $mod+Control+d exec vesktop --enable-features=WebRTCPipeWireCapturer
bindsym $mod+Control+x exec strawberry
bindsym $mod+Control+q exec qbittorrent
bindsym $mod+Control+h exec helvum
@@ -111,7 +111,7 @@ set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
set $MonitorA "DP-1"
set $MonitorA "DP-2"
set $MonitorB "HDMI-A-1"
# switch to workspace
@@ -152,12 +152,17 @@ workspace $ws10 output $MonitorB
set $opacity 0.9
for_window [app_id="de.shorsh.discord-screenaudio"] opacity $opacity
for_window [class="discord"] opacity $opacity
for_window [class="vesktop"] opacity &opacity
for_window [app_id="Alacritty"] opacity $opacity
for_window [class="gamescope"] fullscreen
for_window [app_id="gamescope"] fullscreen
for_window [app_id="mpv"] fullscreen
for_window [app_id="relm4.test.simple"] floating enable
# Workspace 1
# Workspace 2
@@ -198,7 +203,7 @@ bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X 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'"
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'
# resize window (you can also use the mouse for that)
mode "resize" {
@@ -208,16 +213,16 @@ mode "resize" {
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym h resize shrink width 10 px
bindsym j resize grow height 10 px
bindsym k resize shrink height 10 px
bindsym l resize grow width 10 px
bindsym h resize shrink width 20 px
bindsym j resize grow height 20 px
bindsym k resize shrink height 20 px
bindsym l resize grow width 20 px
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px
bindsym Down resize grow height 10 px
bindsym Up resize shrink height 10 px
bindsym Right resize grow width 10 px
bindsym Left resize shrink width 20 px
bindsym Down resize grow height 20 px
bindsym Up resize shrink height 20 px
bindsym Right resize grow width 20 px
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
@@ -257,25 +262,26 @@ bar {
bindsym $mod+space exec rofi --no-startup-id -show drun
# Set Monitors
output DP-1 mode 3440x1440@144Hz pos 0 0 scale 1
output HDMI-A-1 mode 1920x1080@75Hz pos 3440 0
output DP-2 mode 3440x1440@144Hz pos 1920 0 scale 1
output HDMI-A-1 mode 1920x1080@75Hz pos 0 0
exec swaybg -o DP-2 -i /home/eesim/Pictures/Wallpapers/wallpaper_scaled_distorted.png
exec swaybg -o HDMI-A-1 -i /home/eesim/Pictures/169Wallpaper.png
exec systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
exec --no-startup-id openrgb --startminimized
exec --no-startup-id sway-audio-idle-inhibit
exec --no-startup-id ydotoold
exec --no-startup-id easyeffects --gapplication-service
exec --no-startup-id wayland-pipewire-idle-inhibit
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec --no-startup-id protonmail-bridge
exec --no-startup-id swayidle -w \
timeout 300 'swaymsg "output * dpms off"' \
timeout 600 'swaymsg "output * dpms off"' \
resume '/home/eesim/Scripts/ResumeMonitor.sh'
exec vorta
exec MOZ_ENABLE_WAYLAND=1 firefox
exec discord
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
exec sleep 0.2 && swww init
exec sleep 0.3 && swww img -o DP-1 /home/eesim/Pictures/UWWallpaper.png
exec sleep 0.3 && swww img -o HDMI-A-1 /home/eesim/Pictures/169Wallpaper.png
exec sleep 20 && vesktop --enable-features=WebRTCPipeWireCapturer

158
desktop/waybar/config Normal file
View File

@@ -0,0 +1,158 @@
[{
"layer": "top", // Waybar at top layer
"output": "DP-2",
"position": "top", // Waybar position (top|bottom|left|right)
"height": 30, // Waybar height (to be removed for auto height)
"spacing": 4, // Gaps between modules (4px)
// Choose the order of the modules
"modules-left": ["sway/workspaces", "sway/mode", "sway/scratchpad"],
"modules-center": ["sway/window"],
"modules-right": ["idle_inhibitor", "pulseaudio", "cpu", "memory", "clock"],
// Modules configuration
"sway/workspaces": {
"disable-scroll": true,
"all-outputs": false,
"format": "{name}: {icon}",
"format-icons": {
"1": "",
"2": "",
"3": "",
"urgent": "",
"focused": "",
"default": ""
}
},
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"sway/scratchpad": {
"format": "{icon} {count}",
"show-empty": false,
"format-icons": ["", ""],
"tooltip": true,
"tooltip-format": "{app}: {title}"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
// "icon-size": 21,
"spacing": 10
},
"clock": {
// "timezone": "America/New_York",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format": "{:%I:%M %p}",
"format-alt": "{:%Y-%m-%d}"
},
"cpu": {
"format": "{usage}% ",
"tooltip": false
},
"memory": {
"format": "{}% "
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon}",
"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": ["", "", ""]
},
},
}, {
"layer": "bottom", // Waybar at top layer
"output": "HDMI-A-1",
"position": "top", // Waybar position (top|bottom|left|right)
"height": 30, // Waybar height (to be removed for auto height)
"spacing": 4, // Gaps between modules (4px)
// Choose the order of the modules
"modules-left": ["sway/workspaces", "sway/mode", "sway/scratchpad"],
"modules-center": ["sway/window"],
"modules-right": ["idle_inhibitor", "pulseaudio", "cpu", "memory", "clock", "tray"],
// Modules configuration
"sway/workspaces": {
"disable-scroll": true,
"all-outputs": false,
"format": "{name}: {icon}",
"format-icons": {
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"urgent": "",
"focused": "",
"default": ""
}
},
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"sway/scratchpad": {
"format": "{icon} {count}",
"show-empty": false,
"format-icons": ["", ""],
"tooltip": true,
"tooltip-format": "{app}: {title}"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
// "icon-size": 21,
"spacing": 10
},
"clock": {
// "timezone": "America/New_York",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format": "{:%I:%M %p}",
"format-alt": "{:%Y-%m-%d}"
},
"cpu": {
"format": "{usage}% ",
"tooltip": false
},
"memory": {
"format": "{}% "
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon}",
"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": ["", "", ""]
},
},
}]

102
desktop/waybar/style.css Normal file
View File

@@ -0,0 +1,102 @@
* {
border: none;
border-radius: 0;
font-family: "Ubuntu Nerd Font";
font-size: 16px;
min-height: 0;
}
window#waybar {
background: rgba(0, 0, 0, 0.2);
color: white;
}
#window {
font-weight: bold;
font-family: "Ubuntu";
}
/*
#workspaces {
padding: 0 5px;
}
*/
#workspaces button {
padding: 0 5px;
background: transparent;
color: white;
border-top: 2px solid transparent;
}
#workspaces button.focused {
color: #c9545d;
border-top: 2px solid #c9545d;
}
#mode {
background: #64727D;
border-bottom: 3px solid white;
}
#clock, #battery, #cpu, #memory, #network, #pulseaudio, #custom-spotify, #tray, #mode, #idle_inhibitor {
padding: 0 8px;
margin: 0 3px;
}
#clock {
font-weight: bold;
}
#battery {
}
#battery icon {
color: red;
}
#battery.charging {
}
@keyframes blink {
to {
background-color: #ffffff;
color: black;
}
}
#battery.warning:not(.charging) {
color: white;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#cpu {
}
#memory {
}
#network {
}
#network.disconnected {
background: #f53c3c;
}
#pulseaudio {
}
#pulseaudio.muted {
}
#custom-spotify {
color: rgb(102, 220, 105);
}
#tray {
}

View File

@@ -1,4 +1,5 @@
vim.g.mapleader=','
vim.g.maplocalleader=','
vim.keymap.set('n', '<C-h>', '<C-w>h')
vim.keymap.set('n', '<C-j>', '<C-w>j')
@@ -8,3 +9,7 @@ vim.keymap.set('n', '<C-l>', '<C-w>l')
vim.keymap.set('n', '<leader>ff', ':FzfLua files<CR>')
vim.keymap.set('n', '<leader>fb', ':FzfLua buffers<CR>')
vim.keymap.set('n', '<leader>rg', ':FzfLua grep<CR>')
vim.keymap.set('i', '<S-Tab>', '<C-d>')
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)

View File

@@ -26,6 +26,12 @@ local plugins = {
opts={},
},
{
'kaarmu/typst.vim',
ft = 'typst',
lazy = false,
},
}
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"

View File

@@ -1,8 +1,30 @@
local capabilities = require('cmp_nvim_lsp').default_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = false;
local lspconfig = require('lspconfig')
local servers = {'ccls', 'rust_analyzer'}
lspconfig.rust_analyzer.setup {
capabilities = capabilities,
settings = {
["rust-analyzer"] = {
cargo = {
allFeatures = true,
},
imports = {
group = {
enable = false,
},
},
completion = {
postfix = {
enable = false,
},
},
},
},
}
local servers = {'ccls', 'typst_lsp'}
for _, lsp in ipairs(servers) do
lspconfig[lsp].setup {
@@ -32,6 +54,6 @@ cmp.setup {
}),
sources = {
{ name = 'nvim_lsp' },
{ name = 'path' }
{ name = 'path' },
},
}

View File

@@ -31,7 +31,9 @@ vim.opt.wrapscan=true
vim.opt.report=0
vim.opt.list=true
vim.opt.completeopt=menuone,noselect,noinsert
vim.opt.completeopt=menuone,noselect
vim.opt.undofile=true
vim.g['loaded_perl_provider']=0

View File

@@ -21,6 +21,12 @@ bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
bindsym $mod+Alt+a exec ydotool key 42:1 54:1 54:0 42:0 40:1 40:0 42:1 54:1 54:0 42:0
bindsym $mod+Alt+o exec ydotool key 42:1 54:1 54:0 42:0 39:1 39:0 42:1 54:1 54:0 42:0
bindsym $mod+Alt+u exec ydotool key 42:1 54:1 54:0 42:0 26:1 26:0 42:1 54:1 54:0 42:0
bindsym $mod+Alt+s exec ydotool key 42:1 54:1 54:0 42:0 12:1 12:0 42:1 54:1 54:0 42:0
### Idle configuration
exec swayidle -w \
@@ -39,7 +45,8 @@ input type:touchpad {
}
input type:keyboard {
xkb_options caps:escape,
xkb_layout us,de
xkb_options caps:escape,grp:shifts_toggle
}
### Key bindings
@@ -49,7 +56,6 @@ bindsym XF86MonBrightnessUp exec light -A 5
bindsym $mod+Shift+s exec grim -g "$(slurp)"
floating_modifier $mod normal
@@ -118,6 +124,9 @@ bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
for_window [app_id="simmer505.waywrite"] floating enable
for_window [app_id="org.speedcrunch.speedcrunch"] floating enable
# Horizontal and vertical splits
bindsym $mod+b splith
bindsym $mod+v splitv
@@ -191,7 +200,7 @@ client.urgent $urgent-bg-color $urgent-bg-color $text-color
default_border pixel 4
font pango:SourceCodePro Medium 0
font pango:SourceCodePro Medium 1