Compare commits
10 commits
7545885942
...
a90cb37e69
Author | SHA1 | Date | |
---|---|---|---|
a90cb37e69 | |||
d249ab216f | |||
0e60d4acac | |||
33f4d22664 | |||
4cd16133e9 | |||
c7b07f2130 | |||
8b19a173fe | |||
78de462017 | |||
3ec1ba5f9b | |||
4d66a5e231 |
19 changed files with 327 additions and 114 deletions
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
temp/
|
||||
result
|
||||
*.png
|
||||
*.jpg
|
||||
*.bak
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
### Dotfiles for Me - Migrating to Nix
|
||||
|
||||
Heavy wip, not ready for use.
|
||||
Heavy wip, not ready for use.
|
||||
|
||||
Will eventually manage my servers and computers.
|
||||
|
|
|
@ -11,10 +11,10 @@ if [[ "$mute" == "" ]]; then
|
|||
# Change the volume
|
||||
$(wpctl set-volume @DEFAULT_AUDIO_SINK@ $@)
|
||||
|
||||
# Query Pipewire and Parse Volume as an Int
|
||||
# Query Pipewire and Parse Volume as an Int
|
||||
volume="$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print $2}')"
|
||||
vol=${volume//.}
|
||||
|
||||
|
||||
# Send the notification
|
||||
$(dunstify -h int:value:"$vol" Volume: $vol -h string:x-dunst-stack-tag:volume)
|
||||
$(echo $vol > ${XDG_CACHE_HOME:-~/.cache}/eww/vol)
|
||||
|
|
|
@ -19,12 +19,12 @@
|
|||
border-style: solid;
|
||||
border-color: #cac;
|
||||
margin: 2px;
|
||||
|
||||
|
||||
&.empty {
|
||||
|
||||
}
|
||||
|
||||
&.occupied{
|
||||
&.occupied{
|
||||
}
|
||||
|
||||
&.current {
|
||||
|
@ -45,6 +45,9 @@
|
|||
border-radius: 15px;
|
||||
}
|
||||
|
||||
.cal {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.clock {
|
||||
background-color: #536;
|
||||
|
|
|
@ -1,13 +1,11 @@
|
|||
;;;; (defpoll time :interval "1s" 'date +%s')
|
||||
;; VARIABLE DEFINITIONS
|
||||
|
||||
(defwidget clock []
|
||||
(box :orientation "vertical"
|
||||
:halign "center"
|
||||
:valign "end"
|
||||
(box :class "clock" {formattime(EWW_TIME, "%H")})
|
||||
(box :class "clock" {formattime(EWW_TIME, "%M")})
|
||||
))
|
||||
|
||||
;; Audio
|
||||
(deflisten vol "cat ~/.cache/eww/vol && inotifywait -q -m -e close_write ~/.cache/eww/vol | while read -r filename event; do cat ~/.cache/eww/vol; done")
|
||||
(defpoll micvol :interval "1m" "wpctl get-volume @DEFAULT_AUDIO_SOURCE@ | awk '{print $2}'")
|
||||
|
||||
;; Workspace Stuff
|
||||
(deflisten workspaces :initial "[]" "bash ~/.config/eww/scripts/get-workspaces")
|
||||
(deflisten current_workspace :initial "..." "bash ~/.config/eww/scripts/get-active-workspace")
|
||||
(deflisten urgent_workspace :initial "..." "bash ~/.config/eww/scripts/get-urgent-workspaces")
|
||||
|
@ -21,13 +19,28 @@
|
|||
(label :text "${workspace.id}")
|
||||
))))))
|
||||
|
||||
;; Screen
|
||||
(deflisten backlight "brightnessctl g && inotifywait -q -m -e modify /sys/class/backlight/intel_backlight/actual_brightness | while read -r filename event; do cat /sys/class/backlight/intel_backlight/actual_brightness; done")
|
||||
|
||||
(defwidget circle [val prog sty char]
|
||||
|
||||
;; Widgets
|
||||
|
||||
(defwidget clock []
|
||||
(eventbox
|
||||
:onhover "eww open cal"
|
||||
(box :orientation "vertical"
|
||||
:halign "center"
|
||||
:valign "end"
|
||||
(box :class "clock" {formattime(EWW_TIME, "%H")})
|
||||
(box :class "clock" {formattime(EWW_TIME, "%M")})
|
||||
)))
|
||||
|
||||
(defwidget circle [val prog sty char]
|
||||
(box :halign "center"
|
||||
:orientation "vertical"
|
||||
:valign "end"
|
||||
(circular-progress :value prog
|
||||
:start-at 10
|
||||
(circular-progress :value prog
|
||||
:start-at 10
|
||||
:clockwise false
|
||||
:thickness 3
|
||||
:width 30
|
||||
|
@ -38,34 +51,36 @@
|
|||
(box :class "circle" :style sty char)))
|
||||
|
||||
(defwidget battery []
|
||||
(circle :prog {EWW_BATTERY.BAT1.capacity * (77778 /100000)}
|
||||
(circle :prog {EWW_BATTERY.BAT1.capacity * (77778 /100000)}
|
||||
:sty "color: ${EWW_BATTERY.BAT1.status == 'Charging' ? '#1a1': EWW_BATTERY.BAT1.capacity < 20 ? '#a11': '#cac'};"
|
||||
:val {EWW_BATTERY.BAT1.capacity}
|
||||
:char ""))
|
||||
|
||||
(deflisten vol "cat ~/.cache/eww/vol && inotifywait -q -m -e close_write ~/.cache/eww/vol | while read -r filename event; do cat ~/.cache/eww/vol; done")
|
||||
|
||||
(defwidget volume []
|
||||
(circle :prog {vol * 7/10}
|
||||
:sty "font-size: 12; margin-right: 2px;"
|
||||
:val {vol + 1 - 1}
|
||||
:char ""))
|
||||
|
||||
(defpoll micvol :interval "1m" "wpctl get-volume @DEFAULT_AUDIO_SOURCE@ | awk '{print $2}'")
|
||||
(defwidget volume []
|
||||
(eventbox
|
||||
:onclick "hyprctl dispatch exec 'pavucontrol -t 3'"
|
||||
:onscroll "if [ {} == 'up' ]; then /etc/nixos/config/dunst/scripts/volumeNotify.sh 1%+; else /etc/nixos/config/dunst/scripts/volumeNotify.sh 1%-; fi"
|
||||
(circle :prog {vol * 7/10}
|
||||
:sty "font-size: 12; margin-right: 2px;"
|
||||
:val {vol + 1 - 1}
|
||||
:char "")))
|
||||
|
||||
(defwidget mic []
|
||||
(circle :prog {micvol * 70}
|
||||
:sty "margin-left: 1px;"
|
||||
:val {micvol *100}
|
||||
:char ""))
|
||||
|
||||
(deflisten backlight "brightnessctl g && inotifywait -q -m -e modify /sys/class/backlight/intel_backlight/actual_brightness | while read -r filename event; do cat /sys/class/backlight/intel_backlight/actual_brightness; done")
|
||||
(eventbox
|
||||
:onclick "hyprctl dispatch exec 'pavucontrol -t 4'"
|
||||
:onscroll "if [ {} == 'up' ]; then wpctl set-volume -l 1 @DEFAULT_SOURCE@ 1%+; else wpctl set-volume @DEFAULT_SOURCE@ 1%-; fi"
|
||||
(circle :prog {micvol * 70}
|
||||
:sty "margin-left: 1px;"
|
||||
:val {micvol *100}
|
||||
:char "")))
|
||||
|
||||
(defwidget brightness []
|
||||
(circle :prog {(backlight / 960) * 7/10}
|
||||
:sty "font-size: 12; margin-right: 3px;"
|
||||
:val {round( backlight / 960, 0) - 1}
|
||||
:char ""))
|
||||
(eventbox
|
||||
:onscroll "if [ {} == 'up' ]; then brightnessctl -d intel_backlight set 1%+; else brightnessctl -d intel_backlight set 1%-; fi"
|
||||
(circle :prog {(backlight / 960) * 7/10}
|
||||
:sty "font-size: 12; margin-right: 3px;"
|
||||
:val {round( backlight / 960, 0) - 1}
|
||||
:char "")))
|
||||
|
||||
(defwidget power []
|
||||
(box :class "power" :valign "end" "⏻"))
|
||||
|
@ -73,28 +88,51 @@
|
|||
(defwidget tray []
|
||||
(systray :orientation "v" :icon-size 20))
|
||||
|
||||
|
||||
;; Upper Level Widgets
|
||||
|
||||
|
||||
(defwidget bar []
|
||||
(centerbox :orientation "vertical"
|
||||
:halign "center"
|
||||
:space-evenly false
|
||||
(_workspaces)
|
||||
(clock)
|
||||
(box :orientation "vertical" :spacing -25 :valign "end"
|
||||
(brightness)
|
||||
(mic)
|
||||
(volume)
|
||||
(battery)
|
||||
(tray)
|
||||
(power))))
|
||||
:halign "center"
|
||||
:space-evenly false
|
||||
(_workspaces)
|
||||
(clock)
|
||||
(box :orientation "vertical" :spacing -25 :valign "end"
|
||||
(brightness)
|
||||
(mic)
|
||||
(volume)
|
||||
(battery)
|
||||
(tray)
|
||||
(power))))
|
||||
|
||||
(defwidget cal []
|
||||
(box
|
||||
:class "cal"
|
||||
(eventbox
|
||||
:onhoverlost "eww close cal"
|
||||
(calendar))))
|
||||
|
||||
|
||||
;; Windows
|
||||
|
||||
(defwindow bar
|
||||
:monitor 0
|
||||
:geometry (geometry :x "4px"
|
||||
:y "1%"
|
||||
:height "98%"
|
||||
:anchor "left center")
|
||||
:stacking "fg"
|
||||
:exclusive true
|
||||
:class "bar"
|
||||
:monitor 0
|
||||
:geometry (geometry :x "4px"
|
||||
:y "1%"
|
||||
:height "98%"
|
||||
:anchor "left center")
|
||||
:stacking "fg"
|
||||
:exclusive true
|
||||
:class "bar"
|
||||
(bar))
|
||||
|
||||
(defwindow cal
|
||||
:monitor 0
|
||||
:geometry (geometry :x "1%"
|
||||
:y "5%"
|
||||
:anchor "left center")
|
||||
:stacking "fg"
|
||||
:exclusive false
|
||||
:class "bar"
|
||||
(cal))
|
||||
|
|
|
@ -1,32 +1,39 @@
|
|||
# Binding Config File for Hyprland
|
||||
|
||||
# Main Bindings
|
||||
#
|
||||
# Foot, you done goofed
|
||||
bind=ALT,RETURN,exec,foot
|
||||
#bind=ALT,RETURN,exec,kitty
|
||||
|
||||
bind=ALT,Q,killactive,
|
||||
bind=SUPER,M,exec,hyprctl dispatch exit 0
|
||||
# Programs
|
||||
bind=ALT,B,exec,swaylock
|
||||
bind=ALT,E,exec,dolphin
|
||||
bind=ALT,F,exec,${XDG_CONFIG_HOME:-~/.config}/hypr/plumbing.sh
|
||||
bind=ALT,G,exec,${XDG_CONFIG_HOME:-~/.config}/hypr/plumbing.sh clip
|
||||
bind=ALT,RETURN,exec,footclient
|
||||
bindr=ALTSHIFT,RETURN,exec,pkill wofi || wofi -S drun --allow-images
|
||||
|
||||
|
||||
# Basic Actions
|
||||
bind=ALT,Q,killactive,
|
||||
bind=ALT,V,togglefloating,
|
||||
bindr=ALTSHIFT,RETURN,exec,pkill wofi || wofi -S drun --allow-images
|
||||
bind=ALTSHIFT,F,fullscreen,1
|
||||
bind=ALTSHIFT,M,fullscreen,0
|
||||
bind=,Print,exec,grim -g "$(slurp)" -t jpeg - | wl-copy
|
||||
bind=SHIFT,Print,exec,grim -g "$(slurp)" -t jpeg Downloads/screenshot.jpeg
|
||||
bind=SUPER,M,exec,hyprctl dispatch exit 0
|
||||
|
||||
# Screenshots
|
||||
bind=,Print,exec,slurp | grim -t jpeg -g - - | wl-copy
|
||||
bind=SHIFT,Print,exec,slurp | grim -t jpeg -g - Downloads/screenshot.jpeg
|
||||
bind=SHIFTSUPER,Print,exec,hyprctl -j activewindow | jq -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"' | grim -t jpeg -g - - | wl-copy
|
||||
bind=SUPER,Print,exec,hyprctl -j activewindow | jq -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"' | grim -g - Downloads/screenshot.jpeg
|
||||
|
||||
# trigger when the switch is toggled
|
||||
bindl=,switch:Lid Switch,exec,swaylock --effect-greyscale
|
||||
|
||||
|
||||
|
||||
# Games
|
||||
bind=ALTSHIFT,T,exec,gamescope -w 1280 -h 960 -f -r 60 wine "/home/flyingstitchman/Documents/Games/Touhou 15 - Legacy of Lunatic Kingdom/th15.exe"
|
||||
bind=ALTSHIFT,O,exec,osu-lazer
|
||||
bind=ALTSHIFT,C,exec,"/home/flyingstitchman/Documents/Games/Celeste/Celeste"
|
||||
bind=ALTSHIFT,S,exec,"/home/flyingstitchman/Documents/Games/Stardew Valley/StardewValley"
|
||||
bind=ALTSHIFT,O,exec,osu-lazer
|
||||
bind=ALTSHIFT,R,exec,"/home/flyingstitchman/Documents/Games/factorio/bin/x64/factorio"
|
||||
bind=ALTSHIFT,S,exec,"/home/flyingstitchman/Documents/Games/Stardew Valley/StardewValley"
|
||||
bind=ALTSHIFT,T,exec,gamescope -w 1280 -h 960 -f -r 60 wine "/home/flyingstitchman/Documents/Games/Touhou 15 - Legacy of Lunatic Kingdom/th15.exe"
|
||||
|
||||
|
||||
# Window Moving
|
||||
|
@ -35,7 +42,7 @@ bindm=SUPER,mouse:273,resizewindow
|
|||
|
||||
# Quick Bindings
|
||||
bindle=,XF86MonBrightnessDown,exec,brightnessctl -d intel_backlight set 1%-
|
||||
bindle=,XF86MonBrightnessUp,exec,brightnessctl -d intel_backlight set +1%
|
||||
bindle=,XF86MonBrightnessUp,exec,brightnessctl -d intel_backlight set +1%
|
||||
|
||||
bindle=,XF86AudioRaiseVolume,exec,${XDG_CONFIG_HOME:-~/.config}/dunst/scripts/volumeNotify.sh 1%+
|
||||
bindle=,XF86AudioLowerVolume,exec,${XDG_CONFIG_HOME:-~/.config}/dunst/scripts/volumeNotify.sh 1%-
|
||||
|
|
|
@ -26,7 +26,7 @@ input {
|
|||
sensitivity=.4
|
||||
accel_profile=adaptive
|
||||
|
||||
touchpad {
|
||||
touchpad {
|
||||
natural_scroll=false
|
||||
disable_while_typing=false
|
||||
}
|
||||
|
@ -58,11 +58,11 @@ decoration {
|
|||
shadow_range=15
|
||||
shadow_render_power=2
|
||||
shadow_ignore_window=1
|
||||
col.shadow=0xdb331153
|
||||
col.shadow=0xdb331153
|
||||
col.shadow_inactive=0x99333333
|
||||
shadow_offset=3 2
|
||||
|
||||
# Other
|
||||
|
||||
# Other
|
||||
rounding=15
|
||||
inactive_opacity=.8
|
||||
fullscreen_opacity=1 multiplier
|
||||
|
@ -70,7 +70,7 @@ decoration {
|
|||
|
||||
animations {
|
||||
enabled=true
|
||||
|
||||
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
|
||||
animation = windows, 1, 7, myBezier
|
||||
|
@ -78,7 +78,7 @@ animations {
|
|||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
|
||||
dwindle {
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
# Window Rule Config File
|
||||
|
||||
# WLogout Configuration
|
||||
# Might move to separate file cause screen resolutions whack
|
||||
# Application Fixes
|
||||
# Foot Fullscreen Transparency Fix
|
||||
windowrulev2 = syncfullscreen 0, class:(foot), title:(foot)
|
||||
|
||||
windowrule=nofocus,ibus,^(Ibus-ui-gtk3)$
|
||||
|
||||
# WLogout Configuration
|
||||
# Might move to separate file cause screen resolutions whack
|
||||
windowrule=move 720 222,wlogout
|
||||
windowrule=size 2000 1000,wlogout
|
||||
windowrule=tile,xyz
|
||||
|
|
|
@ -3,6 +3,7 @@ local map = vim.keymap.set
|
|||
|
||||
-- jk exit from insert mode
|
||||
map("i", "jk", "<cmd>noh<cr><Esc>", { silent = true })
|
||||
map({"n", "x"}, "<Esc>", "<cmd>noh<cr><Esc>", { silent = true })
|
||||
|
||||
----
|
||||
-- Movements
|
||||
|
@ -17,13 +18,13 @@ map({ "n", "x" }, "<S-k>", "6k")
|
|||
map({ "n", "x" }, "M", "J", { desc = "Merge" }) -- Replace the join command
|
||||
map("n", "gh", vim.lsp.buf.hover, { desc = "Hover" }) -- Code action hover
|
||||
|
||||
|
||||
|
||||
-- Move to window using the <ctrl> hjkl keys
|
||||
map("n", "<C-h>", "<C-w>h", { desc = "Go to left window", remap = true })
|
||||
map("n", "<C-j>", "<C-w>j", { desc = "Go to lower window", remap = true })
|
||||
map("n", "<C-k>", "<C-w>k", { desc = "Go to upper window", remap = true })
|
||||
map("n", "<C-l>", "<C-w>l", { desc = "Go to right window", remap = true })
|
||||
|
||||
|
||||
-- Move between buffers
|
||||
map("n", "<S-h>", "<cmd>BufferLineCyclePrev<CR>", { desc = "Move buffer left", silent = true })
|
||||
map("n", "<S-l>", "<cmd>BufferLineCycleNext<CR>", { desc = "Move buffer right", silent = true })
|
||||
|
@ -33,6 +34,8 @@ map("n", "<leader>>", "<cmd>BufferLineMoveNext<CR>", { desc = "Move buffer right
|
|||
-- ToggleTerm Bindings
|
||||
map("n", "<leader>a", "<cmd>ToggleTerm name=main<CR>", { desc = "Floating Terminal", silent = true })
|
||||
|
||||
-- Undotree
|
||||
map('n', '<leader>fu', vim.cmd.UndotreeToggle)
|
||||
----
|
||||
-- Cool Macros
|
||||
----
|
||||
|
@ -50,6 +53,72 @@ map("n", "<leader>e", function()
|
|||
require("neo-tree.command").execute({ action = "show", position = "right", toggle = true, dir = vim.loop.cwd() })
|
||||
end, { desc = "Open Neotree", remap = true })
|
||||
|
||||
|
||||
-- Conform Formatting
|
||||
map({ "n", "v" }, "<leader>mp", function()
|
||||
require("conform").format({
|
||||
lsp_fallback = true,
|
||||
async = false,
|
||||
timeout_ms = 500,
|
||||
})
|
||||
end, { desc = "Format file or range (in visual mode)" })
|
||||
|
||||
-- diagnostic
|
||||
---@param next "f"|"b"
|
||||
---@param severity "ERROR"|"WARN"?
|
||||
local diagnostic_goto = function(next, severity)
|
||||
local go = (next == "f") and vim.diagnostic.goto_next or vim.diagnostic.goto_prev
|
||||
local severity_index = severity and vim.diagnostic.severity[severity] or nil
|
||||
return function()
|
||||
go({ severity = severity_index })
|
||||
end
|
||||
end
|
||||
map("n", "<leader>cd", vim.diagnostic.open_float, { desc = "Line Diagnostics" })
|
||||
map("n", "]d", diagnostic_goto("f"), { desc = "Next Diagnostic" })
|
||||
map("n", "[d", diagnostic_goto("b"), { desc = "Prev Diagnostic" })
|
||||
map("n", "]e", diagnostic_goto("f", "ERROR"), { desc = "Next Error" })
|
||||
map("n", "[e", diagnostic_goto("b", "ERROR"), { desc = "Prev Error" })
|
||||
map("n", "]w", diagnostic_goto("f", "WARN"), { desc = "Next Warning" })
|
||||
map("n", "[w", diagnostic_goto("b", "WARN"), { desc = "Prev Warning" })
|
||||
|
||||
----
|
||||
-- Plugins
|
||||
----
|
||||
|
||||
-- Telescope (fuzzy finder)
|
||||
local function telescope_git_fallback()
|
||||
vim.fn.system("git rev-parse --is-inside-work-tree")
|
||||
local is_git_repo = vim.v.shell_error == 0
|
||||
|
||||
if is_git_repo then
|
||||
require("telescope.builtin").git_files()
|
||||
else
|
||||
require("telescope.builtin").find_files()
|
||||
end
|
||||
end
|
||||
local function telescope_files()
|
||||
require("telescope.builtin").find_files({ cwd = vim.uv.cwd() })
|
||||
end
|
||||
local function telescope_oldfiles()
|
||||
require("telescope.builtin").oldfiles({ cwd = vim.uv.cwd() })
|
||||
end
|
||||
local function telescope_live_grep()
|
||||
vim.fn.system("git rev-parse --is-inside-work-tree")
|
||||
local is_git_repo = vim.v.shell_error == 0
|
||||
local git_root = vim.fn.fnamemodify(vim.fn.finddir(".git", ".;"), ":h")
|
||||
|
||||
require("telescope.builtin").live_grep({
|
||||
cwd = is_git_repo and git_root or vim.uv.cwd(),
|
||||
})
|
||||
end
|
||||
map("n", "<leader><space>", telescope_git_fallback, { desc = "Find files (git/fallback, cwd)" })
|
||||
map("n", "<leader>ff", telescope_files, { desc = "Find files (cwd)" })
|
||||
map("n", "<leader>fo", telescope_oldfiles, { desc = "Find files (cwd)" })
|
||||
map("n", "<leader>/", telescope_live_grep, { desc = "Live grep (cwd)" })
|
||||
map("n", "<leader>,", require("telescope.builtin").buffers, { desc = "Find buffers" })
|
||||
map("n", "<leader>\"", require("telescope.builtin").registers, { desc = "Find registers" })
|
||||
|
||||
|
||||
----
|
||||
-- Fixes
|
||||
----
|
||||
|
@ -80,3 +149,5 @@ map("t", "<C-k>", "<cmd>wincmd k<cr>", { desc = "Go to upper window" })
|
|||
map("t", "<C-l>", "<cmd>wincmd l<cr>", { desc = "Go to right window" })
|
||||
map("t", "<C-/>", "<cmd>close<cr>", { desc = "Hide Terminal" })
|
||||
map("t", "<c-_>", "<cmd>close<cr>", { desc = "which_key_ignore" })
|
||||
|
||||
|
||||
|
|
|
@ -6,18 +6,18 @@ require'lspconfig'.texlab.setup{}
|
|||
require'lspconfig'.svls.setup{}
|
||||
require'lspconfig'.pylsp.setup{
|
||||
settings = {
|
||||
formatCommand = {"black"},
|
||||
pylsp = {
|
||||
plugins = {
|
||||
pycodestyle = {
|
||||
ignore = {'W391'},
|
||||
maxLineLength = 100
|
||||
jedai_completion = {
|
||||
fuzzy = true
|
||||
},
|
||||
pylint = {
|
||||
enabled = false
|
||||
},
|
||||
pyflakes = {
|
||||
enabled = true
|
||||
}
|
||||
pyflakes = {
|
||||
enabled = true
|
||||
},
|
||||
pylsp_mypy = {
|
||||
enabled = true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -105,6 +105,15 @@ cmp.setup {
|
|||
package.path = package.path .. ";/etc/nixos/config/nvim"
|
||||
|
||||
-- Funky plugins
|
||||
require("conform").setup({
|
||||
formatters_by_ft = {
|
||||
python = { "isort", "black" },
|
||||
},
|
||||
format_on_save = {
|
||||
timeout_ms = 500,
|
||||
lsp_format = "fallback",
|
||||
},
|
||||
})
|
||||
require("bufferline").setup({ options = {
|
||||
always_show_bufferline = true,
|
||||
show_buffer_close_icons = false,
|
||||
|
|
|
@ -12,4 +12,4 @@ inside-color 00000088
|
|||
separator-color 00000000
|
||||
fade-in=0.2
|
||||
datestr="%a, %b %e %Y"
|
||||
greyscale
|
||||
greyscale
|
||||
|
|
|
@ -102,7 +102,7 @@ compinit
|
|||
# End of lines added by compinstall
|
||||
eval "$(zoxide init zsh)"
|
||||
|
||||
|
||||
|
||||
# Default Programs
|
||||
export EDITOR=nvim
|
||||
|
||||
|
|
102
flake.lock
102
flake.lock
|
@ -1,5 +1,40 @@
|
|||
{
|
||||
"nodes": {
|
||||
"flake-compat": {
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"revCount": 57,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"nixpkgs-xr",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730504689,
|
||||
"narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "506278e768c2a08bec68eb62932193e341f55c90",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -7,11 +42,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730450782,
|
||||
"narHash": "sha256-0AfApF8aexgB6o34qqLW2cCX4LaWJajBVdU6ddiWZBM=",
|
||||
"lastModified": 1730837930,
|
||||
"narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "8ca921e5a806b5b6171add542defe7bdac79d189",
|
||||
"rev": "2f607e07f3ac7e53541120536708e824acccfaa8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -24,11 +59,11 @@
|
|||
"mobile-nixos": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1730307383,
|
||||
"narHash": "sha256-EJYo2VPXVMGQbY+bI4Xav14fXXioBt3KICtXNI6i76o=",
|
||||
"lastModified": 1730912712,
|
||||
"narHash": "sha256-T5A9I6Tfh9zrv9sRWfu/ZKN6VkE670YQ6bjC5sbpTzk=",
|
||||
"owner": "nixos",
|
||||
"repo": "mobile-nixos",
|
||||
"rev": "0516be85630befa2c1e8042ac873342ce186b2f6",
|
||||
"rev": "2268e358ed407d9c0a4499ae767d105eeaeec586",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -39,11 +74,11 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1730368399,
|
||||
"narHash": "sha256-F8vJtG389i9fp3k2/UDYHMed3PLCJYfxCqwiVP7b9ig=",
|
||||
"lastModified": 1730919458,
|
||||
"narHash": "sha256-yMO0T0QJlmT/x4HEyvrCyigGrdYfIXX3e5gWqB64wLg=",
|
||||
"owner": "Nixos",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "da14839ac5f38ee6adbdb4e6db09b5eef6d6ccdc",
|
||||
"rev": "e1cc1f6483393634aee94514186d21a4871e78d7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -55,15 +90,15 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1730200266,
|
||||
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
|
||||
"owner": "Nixos",
|
||||
"lastModified": 1730785428,
|
||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
|
||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Nixos",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
|
@ -85,13 +120,50 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-xr": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730942067,
|
||||
"narHash": "sha256-F+MvnvRlRcL8BktdqOK6LRoVhyFX/jzWfcm0mPbJNeY=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs-xr",
|
||||
"rev": "87d61362cb82ed15d54dd56b24944f3404646c72",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs-xr",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1730785428,
|
||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"mobile-nixos": "mobile-nixos",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-quartus": "nixpkgs-quartus"
|
||||
"nixpkgs-quartus": "nixpkgs-quartus",
|
||||
"nixpkgs-xr": "nixpkgs-xr"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
{
|
||||
description = "System Configuration Flake";
|
||||
|
||||
|
||||
outputs = inputs@{
|
||||
outputs = inputs@{
|
||||
nixpkgs,
|
||||
nixpkgs-xr,
|
||||
nixos-hardware,
|
||||
|
|
|
@ -15,8 +15,8 @@
|
|||
services.logind.powerKey = "ignore";
|
||||
services.logind.powerKeyLongPress = "poweroff";
|
||||
networking = {
|
||||
hostName = "lappy";
|
||||
networkmanager.enable = true;
|
||||
hostName = "lappy";
|
||||
networkmanager.enable = true;
|
||||
};
|
||||
time.timeZone = "America/Lost_Angeles";
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ config, nixpkgs-xr, pkgs, lib, ... }:
|
||||
let
|
||||
passthrough = pkgs.writeShellApplication {
|
||||
passthrough = pkgs.writeShellApplication {
|
||||
name = "passthrough.sh";
|
||||
runtimeInputs = lib.attrVals [ "coreutils" "kmod" "libvirt" "procps" ] pkgs;
|
||||
text = ''
|
||||
|
@ -116,7 +116,7 @@ in {
|
|||
|
||||
environment.systemPackages = [
|
||||
pkgs.wlx-overlay-s ];
|
||||
|
||||
|
||||
networking.hostName = "malachite";
|
||||
|
||||
time.timeZone = "America/Los_Angeles";
|
||||
|
|
|
@ -87,7 +87,7 @@
|
|||
XRT_COMPOSITOR_COMPUTE = "1";
|
||||
};
|
||||
|
||||
hardware = {
|
||||
hardware = {
|
||||
graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
|
|
|
@ -64,13 +64,17 @@ in
|
|||
|
||||
config = {
|
||||
environment.systemPackages = (lib.attrVals [
|
||||
"black"
|
||||
"btop"
|
||||
"ccls"
|
||||
"eza"
|
||||
"fd"
|
||||
"fzf"
|
||||
"git"
|
||||
"glib"
|
||||
"gnumake"
|
||||
"gnupg"
|
||||
"mypy"
|
||||
"neofetch"
|
||||
"p7zip"
|
||||
"pinentry"
|
||||
|
@ -97,6 +101,7 @@ in
|
|||
customRC = builtins.readFile ../config/nvim/init.vim;
|
||||
packages.myVimPackage = with pkgs.vimPlugins; {
|
||||
start = [
|
||||
conform-nvim
|
||||
bufferline-nvim
|
||||
cmp-nvim-lsp
|
||||
cmp_luasnip
|
||||
|
@ -113,6 +118,7 @@ in
|
|||
toggleterm-nvim
|
||||
tokyonight-nvim
|
||||
typst-vim
|
||||
undotree
|
||||
vim-lsp-cxx-highlight
|
||||
which-key-nvim
|
||||
];
|
||||
|
|
|
@ -60,9 +60,10 @@ in
|
|||
kicad
|
||||
#steamvr?
|
||||
procps
|
||||
ripgrep
|
||||
usbutils
|
||||
yt-dlp
|
||||
(python311.withPackages (lib.attrVals [ "matplotlib" "python-lsp-server" "sympy"]))
|
||||
(python3.withPackages (lib.attrVals [ "matplotlib" "pyflakes" "python-lsp-server" "sympy"]))
|
||||
]
|
||||
++ (lib.optionals (nixosConfig.stitchyconf.form == "handheld") handheldPkgs)
|
||||
++ (lib.optionals (nixosConfig.stitchyconf.form == "pc") pcPkgs);
|
||||
|
|
Loading…
Reference in a new issue