9 Commits

Author SHA1 Message Date
Josue Zamudio
a398b6d1d1 fix: conficts 2026-02-11 12:51:14 -08:00
Josue Zamudio
8344503822 fix: move enviroment variables to ssytem. Might be better to put them for future ?? 2026-02-11 12:14:23 -08:00
Josue Zamudio
14f0c144f9 latest 2026-02-11 12:00:12 -08:00
8e87a3a909 feat: hyprland; set env variables to prefer wayland. nvim; ai plugin 2026-02-10 15:04:26 -08:00
88af90e9ee Changes to be committed:
modified:   .config/hypr/hyprland.conf
	modified:   .config/nvim/lua/plugins/treesitter.lua
2026-02-08 09:11:24 -08:00
b09ebf25d5 Changes to be committed:
modified:   .config/sway/config
	deleted:    .config/sway/waybar
	new file:   .config/sway/waybar/config.jsonc
	new file:   .config/sway/waybar/style.css
	new file:   .config/systemd/user/default.target.wants/shikane.service
	new file:   .config/systemd/user/shikane.service
	modified:   .zshrc
	new file:   applications/application.desktop
2026-02-06 10:28:14 -08:00
e99e6b3d92 feat: use hyprile; zsh better prompt; 2026-02-05 22:25:36 -08:00
fc10f8c36d Changes to be committed:
modified:   .config/hypr/hyprland.conf
	modified:   .config/kitty/kitty.conf
	modified:   .config/nvim/init.lua
	modified:   .config/nvim/lua/plugins/colorscheme.lua
	new file:   .config/nvim/lua/plugins/outline.lua
	modified:   .config/nvim/lua/plugins/treesitter.lua
2026-02-05 21:48:50 -08:00
9b066c7dd8 Changes to be committed:
modified:   .config/hypr/hyprland.conf
	modified:   .config/kitty/kitty.conf
	modified:   .zshrc
2026-02-05 09:49:45 -08:00
17 changed files with 566 additions and 70 deletions

View File

@@ -49,16 +49,17 @@ $menu = wofi --show drun -GI
# exec-once = $terminal
# exec-once = nm-applet &
# exec-once = waybar & hyprpaper & firefox
exec-once = hypridle
exec-once = hypridle &
exec-once = nm-applet &
exec-once = blueman-applet &
exec-once = shikane &
exec-once = waybar -c ~/.config/hypr/waybar/config.jsonc -s ~/.config/hypr/waybar/style.css &
exec-once = hyprpm reload -n
exec-once = flatpak run com.github.wwmm.easyeffects -w
exec-once = powertop --auto-tune
exec-once = flatpak run com.github.wwmm.easyeffects -w &
exec-once = systemctl --user start hyprpolkitagent
exec-once = xrdb -merge ~/.Xresources
exec-once = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"
@@ -71,6 +72,10 @@ exec-once = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
env = GDK_BACKEND,wayland,x11
env = QT_QPA_PLATFORM,wayland;xcb
env = ELECTRON_OZONE_PLATFORM_HINT,auto
###################
### PERMISSIONS ###
@@ -119,8 +124,8 @@ general {
# https://wiki.hypr.land/Configuring/Variables/#decoration
decoration {
rounding = 4
rounding_power = 2
rounding = 6
rounding_power = 3
# Change transparency of focused and unfocused windows
active_opacity = 1.0
@@ -145,7 +150,8 @@ decoration {
# https://wiki.hypr.land/Configuring/Variables/#animations
animations {
enabled = yes, please :)
#enabled = yes, please :)
enabled = no
# Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves
@@ -202,12 +208,13 @@ master {
misc {
force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = true# If true disables the random hyprland logo / anime girl background. :(
vfr = true
}
xwayland {
force_zero_scaling = true
}
env = GTK_SCALE,2
env = GTK_SCALE,1
env = XCURSOR_SIZE,32
@@ -255,7 +262,7 @@ $mainMod = SUPER # Sets "Windows" key as main modifier
bind = $mainMod, RETURN, exec, $terminal
bind = $mainMod, D, exec, $menu
bind = $mainMod, F, fullscreen
bind = $mainMod, M, exec, swaylock -c 0x000000; playerctl pause
bind = $mainMod, M, exec, hyprlock
bind = $mainMod SHIFT, SPACE, togglefloating,
bind = $mainMod SHIFT, Q, hy3:killactive,

View File

@@ -1,27 +1,27 @@
#font_family 'JetBrainsMono NF'
# font_family 'JetBrainsMonoNL NFM ExtraBold'
font_size 11
# bold_font auto
# italic_font auto
# bold_italic_font auto
font_size 11.5
#text_composition_strategy legacy
#modify_font cell_width 95%
background_opacity 20
#background_opacity 20
cursor_trail 10
cursor_trail 20
cursor_trail_start_threshold 0
shell_integration no-cursor
cursor_trail_decay 0.01 0.15
cursor_shape block
cursor_blink true
map cmd+c copy_to_clipboard
map cmd+v paste_from_clipboard
map shift+insert paste_from_clipboard
linux_display_server wayland
wayland_enable_ime yes
# BEGIN_KITTY_FONTS
font_family family="JetBrainsMono Nerd Font Mono"
#font_family family="JetBrainsMono Nerd Font Mono"
font_family family="Fira Code"
bold_font auto
italic_font auto
bold_italic_font auto

View File

@@ -1,13 +1,13 @@
require("config.lazy")
-- colorscheme
vim.o.termguicolors = true
-- vim.o.termguicolors = true
vim.opt.winborder = 'rounded'
--vim.o.background = "dark" -- or "light" for light mode
vim.o.background = "dark" -- or "light" for light mode
--vim.cmd("colorscheme gruvbox ")
--vim.cmd("colorscheme retrobox")
vim.opt.clipboard = "unnamedplus" -- uses the clipboard register for all operations except yank.
-- vim.opt.clipboard = "unnamedplus" -- uses the clipboard register for all operations except yank.
vim.cmd("set nocompatible")
vim.cmd("syntax on")
@@ -34,4 +34,3 @@ vim.cmd("set complete-=i")
vim.cmd("au FileType python set fileformat=unix encoding=utf-8")
vim.cmd("au FileType markdown,tex set spell spelllang=en_us")

View File

@@ -0,0 +1,63 @@
return {
"yetone/avante.nvim",
-- if you want to build from source then do `make BUILD_FROM_SOURCE=true`
-- ⚠️ must add this setting! ! !
build = vim.fn.has("win32") ~= 0
and "powershell -ExecutionPolicy Bypass -File Build.ps1 -BuildFromSource false"
or "make",
event = "VeryLazy",
version = false, -- Never set this value to "*"! Never!
---@module 'avante'
---@type avante.Config
opts = {
-- add any opts here
-- this file can contain specific instructions for your project
instructions_file = "avante.md",
-- for example
provider = "ollama",
providers = {
ollama = {
model = "devstral-small-2:24b-32k",
--is_env_set = require("avante.providers.ollama").check_endpoint_alive,
},
},
},
dependencies = {
"nvim-lua/plenary.nvim",
"MunifTanjim/nui.nvim",
--- The below dependencies are optional,
"nvim-mini/mini.pick", -- for file_selector provider mini.pick
"nvim-telescope/telescope.nvim", -- for file_selector provider telescope
"hrsh7th/nvim-cmp", -- autocompletion for avante commands and mentions
"ibhagwan/fzf-lua", -- for file_selector provider fzf
"stevearc/dressing.nvim", -- for input provider dressing
"folke/snacks.nvim", -- for input provider snacks
"nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
"zbirenbaum/copilot.lua", -- for providers='copilot'
{
-- support for image pasting
"HakonHarnes/img-clip.nvim",
event = "VeryLazy",
opts = {
-- recommended settings
default = {
embed_image_as_base64 = false,
prompt_for_file_name = false,
drag_and_drop = {
insert_mode = true,
},
-- required for Windows users
use_absolute_path = true,
},
},
},
{
-- Make sure to set this up properly if you have lazy=true
'MeanderingProgrammer/render-markdown.nvim',
opts = {
file_types = { "markdown", "Avante" },
},
ft = { "markdown", "Avante" },
},
},
}

View File

@@ -5,7 +5,7 @@ return {
config = function()
require("black-metal").setup({
-- optional configuration here
term_colors = true,
-- term_colors = true,
})
require("black-metal").load()

View File

@@ -3,7 +3,6 @@ return {
dependencies = {
{"mason-org/mason.nvim"},
{'neovim/nvim-lspconfig'},
{'nvim-mini/mini.nvim'},
{'nvim-mini/mini.completion'},
},

View File

@@ -0,0 +1,12 @@
return {
"hedyhli/outline.nvim",
config = function()
-- Example mapping to toggle outline
vim.keymap.set("n", "<leader>o", "<cmd>Outline<CR>",
{ desc = "Toggle Outline" })
require("outline").setup {
-- Your setup opts here (leave empty to use defaults)
}
end,
}

View File

@@ -3,47 +3,5 @@ return {
build = ":TSUpdate",
config = function()
require("nvim-treesitter").install({})
--require("nvim-treesitter.configs").setup ({
-- -- A list of parser names, or "all" (the five listed parsers should always be installed)
-- ensure_installed = { "c", "lua", "vim", "vimdoc", "python", "bash", "make" },
-- -- Install parsers synchronously (only applied to `ensure_installed`)
-- sync_install = false,
-- -- Automatically install missing parsers when entering buffer
-- -- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
-- auto_install = true,
-- -- List of parsers to ignore installing (for "all")
-- ignore_install = { "javascript" },
-- ---- If you need to change the installation directory of the parsers (see -> Advanced Setup)
-- -- parser_install_dir = "/some/path/to/store/parsers", -- Remember to run vim.opt.runtimepath:append("/some/path/to/store/parsers")!
-- highlight = {
-- enable = true,
-- -- NOTE: these are the names of the parsers and not the filetype. (for example if you want to
-- -- disable highlighting for the `tex` filetype, you need to include `latex` in this list as this is
-- -- the name of the parser)
-- -- list of language that will be disabled
-- -- disable = { "c", "rust" },
-- -- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files
-- disable = function(lang, buf)
-- local max_filesize = 100 * 1024 -- 100 KB
-- local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
-- if ok and stats and stats.size > max_filesize then
-- return true
-- end
-- end,
-- -- Setting this to true will run `:h syntax` and tree-sitter at the same time.
-- -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
-- -- Using this option may slow down your editor, and you may see some duplicate highlights.
-- -- Instead of true it can also be a list of languages
-- additional_vim_regex_highlighting = false,
-- },
--})
end
}

View File

@@ -60,6 +60,9 @@ exec flatpak run com.github.wwmm.easyeffects -w
exec xrdb -merge ~/.Xresources
exec wl-paste -t text --watch clipman store --no-persist
exec hypridle
exec gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"
#exec mpd
#exec syncthing
@@ -87,4 +90,3 @@ bindsym $mod+Ctrl+y exec : | wl-copy -p
exec systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP=sway XDG_SESSION_DESKTOP=sway

0
.config/sway/scripts/clamshell-mode.sh Executable file → Normal file
View File

View File

@@ -1 +0,0 @@
/home/jozamudi/.dotfiles/.config/waybar

View File

@@ -0,0 +1,117 @@
// -*- mode: jsonc -*-
{
"spacing": 2, // Gaps between modules (4px)
"modules-left": [
"sway/workspaces",
"sway/mode",
"sway/scratchpad",
"sway/window"
],
//"modules-center": [
//"sway/window"
//],
"modules-right": [
//"mpd",
"pulseaudio",
//"network",
"battery",
"clock",
"tray"
//"custom/power"
],
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"sway/scratchpad": {
"format": "{icon} {count}",
"show-empty": false,
"format-icons": ["", ""],
"tooltip": true,
"tooltip-format": "{app}: {title}"
},
"tray": {
// "icon-size": 21,
"spacing": 10,
// "icons": {
// "blueman": "bluetooth",
// "TelegramDesktop": "$HOME/.local/share/icons/hicolor/16x16/apps/telegram.png"
// }
},
"clock": {
//"timezone": "America/Los_Angeles",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format": "{:%r %Y-%m-%d}",
//"format": "{:%R %p %Y-%m-%d}",
//"format-alt": "{:%Y-%m-%d}"
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{time} {capacity}% {icon}",
"format-full": "{capacity}% {icon}",
"format-charging": "{capacity}% C",
"format-plugged": "{capacity}% P",
"format-alt": "{time} {icon}",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
},
"battery#bat2": {
"bat": "BAT2"
},
"power-profiles-daemon": {
"format": "{icon}",
"tooltip-format": "Power profile: {profile}\nDriver: {driver}",
"tooltip": true,
"format-icons": {
"default": "",
"performance": "",
"balanced": "",
"power-saver": ""
}
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
//"format-wifi": "{essid} ({signalStrength}%) ",
//"format-ethernet": "{ipaddr}/{cidr} ",
//"tooltip-format": "{ifname} via {gwaddr} ",
//"format-linked": "{ifname} (No IP) ",
//"format-disconnected": "Disconnected ⚠",
"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"
},
"custom/media": {
"format": "{icon} {text}",
"return-type": "json",
"max-length": 40,
"format-icons": {
"spotify": "",
"default": "🎜"
},
"escape": true,
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
}
}

View File

@@ -0,0 +1,321 @@
* {
/* `otf-font-awesome` is required to be installed for icons */
/*font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif; */
/*font-family: "JetBrainsMono NF";*/
font-family: "JetBrainsMonoNFM-Regular";
font-size: 14px;
font-weight: bold;
}
window#waybar {
/*background-color: rgba(43, 48, 59, 0.5);
border-bottom: 3px solid rgba(100, 114, 125, 0.5); */
background-color: rgba(0, 0, 0, 1);
color: #ffffff;
transition-property: background-color;
transition-duration: .5s;
}
window#waybar.hidden {
opacity: 0.2;
}
window#waybar.empty {
/*background-color: transparent;*/
}
window#waybar.solo {
/*background-color: #FFFFFF;*/
}
button {
/* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -3px transparent;
/* Avoid rounded borders under each button name */
border: none;
border-radius: 0;
}
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
button:hover {
background: inherit;
box-shadow: inset 0 -3px #ffffff;
}
/* you can set a style on hover for any module like this */
#pulseaudio:hover {
/*background-color: #a37800;*/
}
#workspaces button {
padding: 0 4px;
/*background-color: transparent;*/
color: #ffffff;
}
#workspaces button:hover {
background: rgba(0, 0, 0, 0.2);
}
#workspaces button.focused {
background-color: #64727D;
/*box-shadow: inset 0 -3px #ffffff;*/
}
#workspaces button.urgent {
background-color: #eb4d4b;
}
#mode {
background-color: #64727D;
box-shadow: inset 0 -3px #ffffff;
}
#clock,
#battery,
#cpu,
#memory,
#disk,
#temperature,
#backlight,
#network,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor,
#scratchpad,
#power-profiles-daemon,
#mpd {
padding: 0 10px;
color: #ffffff;
}
#window,
#workspaces {
margin: 0 4px;
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left > widget:first-child > #workspaces {
margin-left: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
}
#clock {
/* background-color: #64727D;*/
}
#battery {
/*background-color: #ffffff;
color: #000000;*/
}
#battery.charging, #battery.plugged {
/*color: #ffffff;
background-color: #26A65B;*/
}
@keyframes blink {
to {
background-color: #ffffff;
color: #000000;
}
}
/* Using steps() instead of linear as a timing function to limit cpu usage */
#battery.critical:not(.charging) {
background-color: #f53c3c;
color: #ffffff;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#power-profiles-daemon {
padding-right: 15px;
}
#power-profiles-daemon.performance {
background-color: #f53c3c;
color: #ffffff;
}
#power-profiles-daemon.balanced {
background-color: #2980b9;
color: #ffffff;
}
#power-profiles-daemon.power-saver {
background-color: #2ecc71;
color: #000000;
}
label:focus {
background-color: #000000;
}
#cpu {
background-color: #2ecc71;
color: #000000;
}
#memory {
background-color: #9b59b6;
}
#disk {
background-color: #964B00;
}
#backlight {
background-color: #90b1b1;
}
#network {
/*background-color: #2980b9;*/
}
#network.disconnected {
/*background-color: #f53c3c;*/
}
#pulseaudio {
/*background-color: #f1c40f;*/
/*color: #000000;*/
}
#pulseaudio.muted {
/*background-color: #90b1b1;*/
/*color: #2a5c45;*/
}
#wireplumber {
background-color: #fff0f5;
color: #000000;
}
#wireplumber.muted {
background-color: #f53c3c;
}
#custom-media {
background-color: #66cc99;
color: #2a5c45;
min-width: 100px;
}
#custom-media.custom-spotify {
background-color: #66cc99;
}
#custom-media.custom-vlc {
background-color: #ffa000;
}
#temperature {
background-color: #f0932b;
}
#temperature.critical {
background-color: #eb4d4b;
}
#tray {
/*background-color: #2980b9;*/
}
#tray > .passive {
-gtk-icon-effect: dim;
}
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: #eb4d4b;
}
#idle_inhibitor {
background-color: #2d3436;
}
#idle_inhibitor.activated {
background-color: #ecf0f1;
color: #2d3436;
}
#mpd {
background-color: #66cc99;
color: #2a5c45;
}
#mpd.disconnected {
background-color: #f53c3c;
}
#mpd.stopped {
background-color: #90b1b1;
}
#mpd.paused {
background-color: #51a37a;
}
#language {
background: #00b093;
color: #740864;
padding: 0 5px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state {
background: #97e1ad;
color: #000000;
padding: 0 0px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state > label {
padding: 0 5px;
}
#keyboard-state > label.locked {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad.empty {
background-color: transparent;
}
#privacy {
padding: 0;
}
#privacy-item {
padding: 0 5px;
color: white;
}
#privacy-item.screenshare {
background-color: #cf5700;
}
#privacy-item.audio-in {
background-color: #1ca000;
}
#privacy-item.audio-out {
background-color: #0069d4;
}

View File

@@ -0,0 +1 @@
/home/work/.config/systemd/user/shikane.service

View File

@@ -0,0 +1,10 @@
[Unit]
Description=shikane
[Service]
ExecStart=/usr/bin/shikane
Restart=always
RestartSec=1
[Install]
WantedBy=default.target

4
.zshrc
View File

@@ -21,7 +21,7 @@ alias l='ls -CF'
# Alias
alias vim='nvim'
alias ssh='ssh -XC'
alias ssh='ssh -YC'
# Config
source <(fzf --zsh)
@@ -32,5 +32,5 @@ precmd_functions+=( precmd_vcs_info )
setopt prompt_subst
RPROMPT='${vcs_info_msg_0_}'
#PROMPT='${vcs_info_msg_0_}%# '
PROMPT='%~%# '
PROMPT='%n@%c%# '
zstyle ':vcs_info:git:*' formats '%b'

View File

@@ -0,0 +1,8 @@
[Desktop Entry]
Type=Application
Name=myAppName
Icon=~/myApp/icon.xpm
Exec=~/myApp/launcher
Comment=brief description
Categories=Development;IDE;
Terminal=false