wip: move various programs to nix

This commit is contained in:
DashieTM 2024-04-16 01:41:58 +02:00
parent 17a2a04b96
commit f4e8c1725a
65 changed files with 2460 additions and 2229 deletions

View file

@ -1 +0,0 @@
/nix/store/3l33jmknaxv3ri2f9qxcp3kb7vsszk6k-home-manager-files/.config/anyrun/config.ron

View file

@ -1 +0,0 @@
/nix/store/3l33jmknaxv3ri2f9qxcp3kb7vsszk6k-home-manager-files/.config/anyrun/style.css

View file

@ -39,16 +39,16 @@ https://github.com/GradienceTeam/Gradience
@define-color popover_fg_color #c0caf5;
@define-color shade_color rgba(0, 0, 0, 0.36);
@define-color scrollbar_outline_color rgba(0, 0, 0, 0.5);
@define-color secondary_sidebar_backdrop_color #1a1b26;
@define-color secondary_sidebar_shade_color rgba(0,0,0,0.5);
@define-color sidebar_backdrop_color #1a1b26;
@define-color sidebar_shade_color rgba(0,0,0,0.5);
@define-color sidebar_bg_color #1a1b26;
@define-color sidebar_fg_color #c0caf5;
@define-color secondary_sidebar_bg_color #1a1b26;
@define-color secondary_sidebar_fg_color #c0caf5;
@define-color sidebar_shade_color rgba(0, 0, 0, 0.36);
@define-color secondary_sidebar_shade_color rgba(0, 0, 0, 0.36);
@define-color thumbnail_bg_color #1a1b26;
@define-color thumbnail_fg_color #c0caf5;
@define-color sidebar_backdrop_color rgba(192, 202, 245, 0.12);
@define-color secondary_sidebar_backdrop_color rgba(192, 202, 245, 0.12);
@define-color blue_1 #99c1f1;
@define-color blue_2 #62a0ea;
@define-color blue_3 #3584e4;
@ -94,11 +94,7 @@ https://github.com/GradienceTeam/Gradience
@define-color dark_3 #3d3846;
@define-color dark_4 #241f31;
@define-color dark_5 #000000;
/*
Generated with Gradience
Issues caused by theming should be reported to Gradience repository, and not to upstream
https://github.com/GradienceTeam/Gradience
*/
.navigation-sidebar {
background-color: #1a1b26;
}

View file

@ -39,16 +39,6 @@ https://github.com/GradienceTeam/Gradience
@define-color popover_fg_color #c0caf5;
@define-color shade_color rgba(0, 0, 0, 0.36);
@define-color scrollbar_outline_color rgba(0, 0, 0, 0.5);
@define-color secondary_sidebar_backdrop_color #1a1b26;
@define-color secondary_sidebar_shade_color #c0caf5;
@define-color sidebar_backdrop_color #1a1b26;
@define-color sidebar_shade_color #c0caf5;
@define-color sidebar_bg_color #1a1b26;
@define-color sidebar_fg_color #c0caf5;
@define-color secondary_sidebar_bg_color #1a1b26;
@define-color secondary_sidebar_fg_color #c0caf5;
@define-color thumbnail_bg_color #1a1b26;
@define-color thumbnail_fg_color #c0caf5;
@define-color blue_1 #99c1f1;
@define-color blue_2 #62a0ea;
@define-color blue_3 #3584e4;
@ -94,3 +84,7 @@ https://github.com/GradienceTeam/Gradience
@define-color dark_3 #3d3846;
@define-color dark_4 #241f31;
@define-color dark_5 #000000;
.navigation-sidebar {
background-color: #1a1b26;
}

View file

@ -1,16 +0,0 @@
exec-once=gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
monitor=DP-1,3440x1440@180,0x0,1
monitor=DP-2,disable
monitor=HDMI-A-1,disable
input {
force_no_accel = true
}
misc {
disable_splash_rendering = true
disable_hyprland_logo = true
}
exec-once=regreet --config /home/dashie/.config/hypr/regreet.toml --style /home/dashie/.config/gtk-3.0/gtk.css; hyprctl dispatch exit

View file

@ -1 +0,0 @@
/nix/store/3l33jmknaxv3ri2f9qxcp3kb7vsszk6k-home-manager-files/.config/hypr/hyprland.conf

View file

@ -1,16 +0,0 @@
# wallpaper
# preload = /home/dashie/Pictures/backgrounds/tree_1200.jpg
preload = /home/dashie/Pictures/backgrounds/shinobu_2k.jpg
# preload = /home/dashie/Pictures/backgrounds/pxfuel.jpg
preload = /home/dashie/Pictures/backgrounds/shino_wide.png
# preload = /home/dashie/Pictures/backgrounds/pxfuel(3).jpg
preload = /home/dashie/Pictures/backgrounds/shinobu_1200.jpg
# wallpaper = HDMI-A-1,/home/dashie/Pictures/backgrounds/tree_1200.jpg
# wallpaper = DP-1,/home/dashie/Pictures/backgrounds/pxfuel.jpg
wallpaper = DP-2,/home/dashie/Pictures/backgrounds/shinobu_2k.jpg
wallpaper = DP-1,/home/dashie/Pictures/backgrounds/shino_wide.png
wallpaper = HDMI-A-1,/home/dashie/Pictures/backgrounds/shinobu_1200.jpg
# wallpaper = DP-2,/home/dashie/Pictures/backgrounds/pxfuel(3).jpg
splash = true

View file

@ -1,17 +0,0 @@
[background]
# path = "/usr/share/backgrounds/greeter.jpg"
fit = "Contain"
[env]
QT_QPA_PLATFORMTHEME = "qt5ct"
PATH = "/home/dashie/.cargo/bin:PATH"
[GTK]
application_prefer_dark_theme = true
cursor_theme_name = "Adwaita"
icon_theme_name = "Adwaita"
theme_name = "adw-gtk3"
[commands]
reboot = ["systemctl", "reboot"]
poweroff = ["systemctl", "poweroff"]

View file

@ -1,32 +0,0 @@
[monitors.DP-1]
end = [
{ type = "sys_info", format = [
" {memory_percent}",
], interval.memory = 30, class = "memory-usage" },
{ type = "custom", bar = [
{ type = "button", class = "popup-button", label = "", on_click = "popup:toggle" },
], class = "popup-button-box", popup = [
{ type = "box", orientation = "vertical", class = "audio-box", widgets = [
{ type = "box", orientation = "horizontal", widgets = [
{ type = "button", class = "audio-button", label = "", on_click = "!/home/dashie/.config/eww/scripts/audio_control.sh bluetooth" },
{ type = "button", class = "audio-button", label = "󰋋", on_click = "!/home/dashie/.config/eww/scripts/audio_control.sh internal" },
], class = "audio-button-box" },
{ type = "label", label = "Output" },
{ type = "slider", class = "audio-slider", step = 1.0, length = 200, value = "pactl get-sink-volume @DEFAULT_SINK@ | awk -F'/' '{ print $2 }' | tr -d ' %'", on_change = "!pactl set-sink-volume @DEFAULT_SINK@ $0%" },
{ type = "label", label = "Input" },
{ type = "slider", class = "audio-slider", step = 1.0, length = 200, value = "pactl get-source-volume @DEFAULT_SOURCE@ | awk -F'/' '{ print $2 }' | tr -d ' %'", on_change = "!pactl set-source-volume @DEFAULT_SOURCE@ $0%" },
] },
] },
{ type = "custom", bar = [
{ type = "button", class = "popup-button", label = "", on_click = "!oxidash --css /home/dashie/gits/oxidash/style.css" },
], class = "popup-button-box" },
{ type = "clock", format = "%I:%M", format_popup = "%I:%M:%S", locale = "en_US" },
{ type = "tray" },
]
position = "top"
height = 10
anchor_to_edges = true
start = [{ type = "workspaces", all_monitors = true }]
center = [
{ type = "focused", show_icon = true, show_title = true, icon_size = 20, truncate = "end" },
]

View file

@ -1,132 +0,0 @@
@import url("/home/dashie/.config/gtk-3.0/gtk.css");
* {
color: #71bbe6;
padding: 0px;
margin: 0px;
}
.background {
background-color: rgba(0, 0, 0, 0);
}
.workspaces {
margin: 2px 0px 0px 5px;
border-radius: 10px;
/* background-color: #2b2c3b; */
background-color: #1E1E2E;
padding: 2px 5px 2px 5px;
}
.workspaces .item {
margin: 0px 3px 0px 3px;
font-size: 13px;
border-radius: 100%;
padding: 0px 2px 0px 3px;
background-color: rgba(0, 0, 0, 0);
}
.workspaces .item:hover {
background-color: #3e4152;
}
.workspaces .item.focused {
background-color: #3e4152;
}
.audio-box {
padding: 2em;
background-color: #1E1E2E;
border-radius: 5px;
}
.audio-slider {
padding: 5px;
margin: 5px;
}
.audio-button {
padding: 5px 10px 5px 10px;
margin: 0px 1em 20px 1em;
border-radius: 100%;
font-size: 17px;
}
.audio-button-box {
padding: 0px 2.5em 0px 2.5em;
}
.focused {
/* margin: 2px 0px 0px 0px; */
padding: 0px 5px 0px 5px;
/* background-color: 1a1b26; */
background-color: #1E1E2E;
font-size: 17px;
border-radius: 10px;
}
#bar #end {
margin: 0px 5px 0px 0px;
padding: 0px 5px 0px 5px;
background-color: #1E1E2E;
border-radius: 10px;
}
.popup-button {
padding: 0px 5px 0px 3px;
margin: 0em 3px;
border-radius: 100%;
font-size: 13px;
background-color: #1E1E2E;
}
.popup-button-box {
padding: 2px 0px 2px 0px;
}
.clock {
padding: 0px 5px 0px 5px;
font-size: 17px;
background-color: #1E1E2E;
}
.clock:hover {
background-color: #3e4152;
}
.custom button {
background-color: #1E1E2E;
}
.custom button:hover {
background-color: #3e4152;
}
.memory-usage {
font-size: 15px;
margin: 0px 5px 0px 0px;
}
.memory-usage:hover {
background-color: #3e4152;
}
.popup-clock {
background-color: #1E1E2E;
border-radius: 5px;
padding: 2px 8px 10px 8px;
}
.popup-clock .calendar-clock {
font-size: 2.5em;
padding-bottom: 0.1em;
}
.popup-clock .calendar {
border-radius: 5px;
font-size: 1.05em;
}
.popup-clock .calendar:selected {
background-color: #3e4152;
}

View file

@ -1,12 +1,10 @@
{ lib
, pkgs
, ...
{ ...
}: {
imports = [
./login_manager.nix
./big_g.nix
./env.nix
./xkb_layout.nix
../hardware/streamdeck.nix
./login_manager.nix
./big_g.nix
./env.nix
./xkb_layout.nix
../hardware/streamdeck.nix
];
}

View file

@ -1,23 +1,49 @@
{pkgs,
config,
lib,
...
{ pkgs
, ...
}: {
# greetd display manager
services.greetd = let
session = {
command = "${pkgs.hyprland}/bin/Hyprland --config /home/dashie/.config/hypr/hyprgreet.conf";
user = "dashie";
services.greetd =
let
session = {
command = "${pkgs.hyprland}/bin/Hyprland --config /home/dashie/.config/hypr/hyprgreet.conf";
user = "dashie";
};
in
{
enable = true;
settings = {
terminal.vt = 1;
default_session = session;
initial_session = session;
};
};
in {
programs.regreet = {
enable = true;
settings = {
terminal.vt = 1;
default_session = session;
initial_session = session;
background = {
fit = "Contain";
};
env = {
QT_QPA_PLATFORMTHEME = "qt5ct";
PATH = "/home/dashie/.cargo/bin:PATH";
};
GTK = {
application_prefer_dark_theme = true;
cursor_theme_name = "Adwaita";
icon_theme_name = "Adwaita";
theme_name = "adw-gtk3";
command = {
reboot = [ "systemctl" "reboot" ];
poweroff = [ "systemctl" "poweroff" ];
};
};
};
};
programs.regreet.enable = true;
# unlock GPG keyring on login
security.pam.services.greetd.enableGnomeKeyring = true;

134
nix/flake.lock generated
View file

@ -47,6 +47,27 @@
"type": "github"
}
},
"crane": {
"inputs": {
"nixpkgs": [
"ironbar",
"nixpkgs"
]
},
"locked": {
"lastModified": 1711681752,
"narHash": "sha256-LEg6/dmEFxx6Ygti5DO9MOhGNpyB7zdxdWtzv/FCTXk=",
"owner": "ipetkov",
"repo": "crane",
"rev": "ada0fb4dcce4561acb1eb17c59b7306d9d4a95f3",
"type": "github"
},
"original": {
"owner": "ipetkov",
"repo": "crane",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
@ -68,6 +89,24 @@
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -221,6 +260,47 @@
"type": "github"
}
},
"ironbar": {
"inputs": {
"crane": "crane",
"naersk": "naersk",
"nixpkgs": [
"nixpkgs"
],
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1713218218,
"narHash": "sha256-f2GOHnoLe9PeVI0Itvm0RVPxc102ZdHabNDYUxoL/RY=",
"owner": "JakeStanger",
"repo": "ironbar",
"rev": "3fea6e3254a8cda16b32443d1f8f3282218b07c5",
"type": "github"
},
"original": {
"owner": "JakeStanger",
"repo": "ironbar",
"type": "github"
}
},
"naersk": {
"inputs": {
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1698420672,
"narHash": "sha256-/TdeHMPRjjdJub7p7+w55vyABrsJlt5QkznPYy55vKA=",
"owner": "nix-community",
"repo": "naersk",
"rev": "aeb58d5e8faead8980a807c840232697982d47b9",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "naersk",
"type": "github"
}
},
"nix-flatpak": {
"locked": {
"lastModified": 1711997375,
@ -237,6 +317,20 @@
}
},
"nixpkgs": {
"locked": {
"lastModified": 1711715736,
"narHash": "sha256-9slQ609YqT9bT/MNX9+5k5jltL9zgpn36DpFB7TkttM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "807c549feabce7eddbf259dbdcec9e0600a0660d",
"type": "github"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1713088362,
"narHash": "sha256-ttDSOqkEBinjA1dlMWkBjaXzTqjiAPt5lNkoONbz25Y=",
@ -257,8 +351,31 @@
"anyrun": "anyrun",
"home-manager": "home-manager",
"hyprland": "hyprland",
"ironbar": "ironbar",
"nix-flatpak": "nix-flatpak",
"nixpkgs": "nixpkgs"
"nixpkgs": "nixpkgs_2"
}
},
"rust-overlay": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"ironbar",
"nixpkgs"
]
},
"locked": {
"lastModified": 1711851236,
"narHash": "sha256-EJ03x3N9ihhonAttkaCrqxb0djDq3URCuDpmVPbNZhA=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "f258266af947599e8069df1c2e933189270f143a",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"systems": {
@ -276,6 +393,21 @@
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"wlroots": {
"flake": false,
"locked": {

View file

@ -17,12 +17,16 @@
url = "github:KZDKM/Hyprspace";
inputs.hyprland.follows = "hyprland";
};
ironbar = {
url = "github:JakeStanger/ironbar";
inputs.nixpkgs.follows = "nixpkgs";
};
anyrun.url = "github:Kirottu/anyrun";
anyrun.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = inputs @ { self, nixpkgs, home-manager, nix-flatpak, hyprland, anyrun, ... }:
outputs = inputs @ { self, nixpkgs, home-manager, nix-flatpak, hyprland, anyrun, ironbar, ... }:
let
pkgs = import nixpkgs {
system = "x86_64-linux";
@ -68,6 +72,7 @@
./programs/default.nix
hyprland.homeManagerModules.default
anyrun.homeManagerModules.default
ironbar.homeManagerModules.default
./programs/hyprland/default.nix #{inherit Hyprspace; }
nix-flatpak.homeManagerModules.nix-flatpak
./programs/flatpak.nix

170
nix/nvim/default.nix Normal file
View file

@ -0,0 +1,170 @@
{ lib, pkgs, ... }:
{
programs.neovim = {
enable = true;
extraPackages = with pkgs; [
# Telescope
ripgrep
# lua
lua-language-server
stylua
# nix
nil
# go
gopls
# jafuck
jdt-language-server
taplo
typst-lsp
sqls
shfmt
texlab
nixpkgs-fmt
crate2nix
ruff-lsp
nodePackages.pyright
lemminx
marksman
clang-tools_18
];
plugins = with pkgs.vimPlugins; [
lazy-nvim
];
extraLuaConfig =
let
plugins = with pkgs.vimPlugins; [
# LazyVim
LazyVim
bufferline-nvim
cmp-buffer
cmp-nvim-lsp
cmp-path
cmp_luasnip
conform-nvim
dashboard-nvim
dressing-nvim
flash-nvim
friendly-snippets
gitsigns-nvim
indent-blankline-nvim
lualine-nvim
neo-tree-nvim
neoconf-nvim
neodev-nvim
noice-nvim
nui-nvim
nvim-cmp
nvim-lint
nvim-lspconfig
nvim-notify
nvim-spectre
nvim-treesitter
nvim-treesitter-context
nvim-treesitter-textobjects
nvim-ts-autotag
nvim-ts-context-commentstring
nvim-web-devicons
persistence-nvim
plenary-nvim
telescope-fzf-native-nvim
telescope-nvim
todo-comments-nvim
tokyonight-nvim
trouble-nvim
vim-illuminate
vim-startuptime
which-key-nvim
{ name = "LuaSnip"; path = luasnip; }
#{ name = "catppuccin"; path = catppuccin-nvim; }
{ name = "mini.ai"; path = mini-nvim; }
{ name = "mini.bufremove"; path = mini-nvim; }
{ name = "mini.comment"; path = mini-nvim; }
{ name = "mini.indentscope"; path = mini-nvim; }
{ name = "mini.pairs"; path = mini-nvim; }
{ name = "mini.surround"; path = mini-nvim; }
];
mkEntryFromDrv = drv:
if lib.isDerivation drv then
{ name = "${lib.getName drv}"; path = drv; }
else
drv;
lazyPath = pkgs.linkFarm "lazy-plugins" (builtins.map mkEntryFromDrv plugins);
in
''
require("lazy").setup({
defaults = {
lazy = true,
},
dev = {
-- reuse files from pkgs.vimPlugins.*
path = "${lazyPath}",
patterns = { "." },
-- fallback to download
fallback = true,
},
spec = {
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
{ import = "lazyvim.plugins.extras.ui.alpha" },
{ import = "plugins" },
{ import = "plugins.plugins" },
{ import = "lazyvim.plugins.extras.lang.rust" },
{ import = "lazyvim.plugins.extras.lang.tailwind" },
{ import = "lazyvim.plugins.extras.lang.java" },
{ import = "lazyvim.plugins.extras.lang.go" },
{ import = "lazyvim.plugins.extras.lang.clangd" },
{ import = "lazyvim.plugins.extras.lang.typescript" },
{ import = "lazyvim.plugins.extras.lang.python" },
{ import = "lazyvim.plugins.extras.lang.markdown" },
{ import = "lazyvim.plugins.extras.lang.cmake" },
{ import = "lazyvim.plugins.extras.lang.omnisharp" },
{ import = "lazyvim.plugins.extras.lang.json" },
{ import = "lazyvim.plugins.extras.lang.tex" },
{ import = "lazyvim.plugins.extras.util.dot" },
{ import = "lazyvim.plugins.extras.dap.core" },
{ import = "lazyvim.plugins.extras.test.core" },
{ "nvim-telescope/telescope-fzf-native.nvim", enabled = true },
-- disable mason.nvim, use programs.neovim.extraPackages
{ "williamboman/mason-lspconfig.nvim", enabled = false },
{ "williamboman/mason.nvim", enabled = false },
-- import/override with your plugins
{ import = "plugins" },
-- treesitter handled by xdg.configFile."nvim/parser", put this line at the end of spec to clear ensure_installed
{ "nvim-treesitter/nvim-treesitter", opts = { ensure_installed = {} } },
},
install = { colorscheme = { "tokyonight" } },
checker = { enabled = true, notify = false },
change_detection = { enabled = true, notify = false },
performance = {
rtp = {
disabled_plugins = {
"gzip",
"netrw",
"tarPlugin",
"tohtml",
"tutor",
"zipPlugin",
},
},
},
})
'';
};
# https://github.com/nvim-treesitter/nvim-treesitter#i-get-query-error-invalid-node-type-at-position
xdg.configFile."nvim/parser".source =
let
parsers = pkgs.symlinkJoin {
name = "treesitter-parsers";
paths = (pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins: with plugins; [
c
lua
])).dependencies;
};
in
"${parsers}/parser";
# Normal LazyVim config here, see https://github.com/LazyVim/starter/tree/main/lua
xdg.configFile."nvim/lua".source = ./lua;
}

View file

@ -1,4 +1,10 @@
return {
{
"williamboman/mason.nvim",
opts = {
ensure_installed = {},
},
},
{
"neovim/nvim-lspconfig",
---@class PluginLspOpts
@ -13,6 +19,27 @@ return {
rust_analyzer = {
mason = false,
},
marksman = {
mason = false,
},
clangd = {
mason = false,
},
jdtls = {
mason = false,
},
gopls = {
mason = false,
},
pyright = {
mason = false,
},
ruff_lsp = {
mason = false,
},
texlab = {
mason = false,
},
taplo = {
keys = {
{
@ -27,23 +54,28 @@ return {
desc = "Show Crate Documentation",
},
},
mason = false,
},
bashls = {
mason = false,
},
ansiblels = {
mason = false,
},
bashls = {},
ansiblels = {},
-- asm_lsp = {},
typst_lsp = {
settings = {
experimentalFormatterMode = "on",
exportPdf = "onSave",
},
mason = false,
},
nil_ls = {
settings ={
['nil'] = {
formatting = {
command = {"nixpkgs-fmt"}
},
},
settings = {
["nil"] = {
formatting = {
command = { "nixpkgs-fmt" },
},
},
},
mason = false,
},
@ -66,23 +98,32 @@ return {
"typst",
"typ",
},
mason = false,
},
sqlls = {
mason = false,
},
lemminx = {
mason = false,
},
opencl_ls = {
mason = false,
},
yamlls = {
mason = false,
},
sqlls = {},
lemminx = {},
opencl_ls = {},
yamlls = {},
lua_ls = {
mason = false
-- {
-- Lua = {
-- workspace = {
-- checkThirdParty = false,
-- },
-- completion = {
-- callSnippet = "Replace",
-- },
-- },
-- },
mason = false,
{
Lua = {
workspace = {
checkThirdParty = false,
},
completion = {
callSnippet = "Replace",
},
},
},
},
},
},
@ -113,36 +154,9 @@ return {
formatters_by_ft = {
typst = { "typstfmt" },
nix = { "nixpkgs-fmt" },
lua = { "stylua" },
sh = { "shfmt" },
},
},
},
-- {
-- "mrcjkb/rustaceanvim",
-- opts = {
-- default_settings = {
-- -- rust-analyzer language server configuration
-- ["rust-analyzer"] = {
-- cargo = {
-- allFeatures = true,
-- loadOutDirsFromCheck = true,
-- runBuildScripts = true,
-- },
-- -- Add clippy lints for Rust.
-- checkOnSave = {
-- allFeatures = true,
-- command = "cargo-clippy",
-- extraArgs = { "--no-deps" },
-- },
-- procMacro = {
-- enable = true,
-- ignored = {
-- ["async-trait"] = { "async_trait" },
-- ["napi-derive"] = { "napi" },
-- ["async-recursion"] = { "async_recursion" },
-- },
-- },
-- },
-- },
-- },
-- },
}

View file

@ -2,6 +2,10 @@
, ...
}:
{
imports = [
../nvim/default.nix
];
home.packages = with pkgs; [
git
gcc
@ -12,17 +16,12 @@
nodejs_20
deno
python3
neovim
typst
neovide
tree-sitter
dotnet-runtime_8
unzip
pkg-config
lua-language-server
nil
nixpkgs-fmt
crate2nix
sqlite
];
}

View file

@ -30,11 +30,9 @@
dbus
killall
adw-gtk3
gradience
qt5ct
qt6ct
libadwaita
yazi
gnutar
fishPlugins.tide
nix-index

View file

@ -1,4 +1,3 @@
{ pkgs, ... }:
{
imports = [
./common.nix
@ -7,6 +6,8 @@
./xdg.nix
./media.nix
./utils.nix
./yazi.nix
./oxi/default.nix
#./gtk.nix
#./cargo.nix
];

View file

@ -19,5 +19,18 @@
};
};
xsession.cursor = {
name = "Bibata-Moder-Classic";
package = pkgs.bibata-cursors;
size = 24;
};
home.pointerCursor = {
gtk.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 24;
};
home.sessionVariables.GTK_THEME = "adw-gtk3";
}

View file

@ -1,10 +1,12 @@
{ lib
, pkgs
{ pkgs
, ...
}: {
imports = [
./anyrun.nix
./config.nix
./ironbar.nix
./hyprpaper.nix
./hyprgreet.nix
];
home.packages = with pkgs; [
@ -15,7 +17,6 @@
xdg-desktop-portal-gtk
xdg-desktop-portal-hyprland
hyprpaper
ironbar
copyq
gnome.nautilus
gnome.sushi

View file

@ -0,0 +1,23 @@
{ ... }: {
xdg.configFile."hypr/hyprgreet.conf" = {
text =
''
exec-once=gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
monitor=DP-1,3440x1440@180,0x0,1
monitor=DP-2,disable
monitor=HDMI-A-1,disable
input {
force_no_accel = true
}
misc {
disable_splash_rendering = true
disable_hyprland_logo = true
}
exec-once=regreet --style /home/dashie/.config/gtk-3.0/gtk.css; hyprctl dispatch exit
'';
};
}

View file

@ -0,0 +1,17 @@
{
xdg.configFile."hypr/hyprpaper.conf" = {
text =
''
#load
preload = /home/dashie/Pictures/backgrounds/shinobu_2k.jpg
preload = /home/dashie/Pictures/backgrounds/shino_wide.png
preload = /home/dashie/Pictures/backgrounds/shinobu_1200.jpg
#set
wallpaper = DP-2,/home/dashie/Pictures/backgrounds/shinobu_2k.jpg
wallpaper = DP-1,/home/dashie/Pictures/backgrounds/shino_wide.png
wallpaper = HDMI-A-1,/home/dashie/Pictures/backgrounds/shinobu_1200.jpg
splash = true
'';
};
}

View file

@ -0,0 +1,255 @@
{
programs.ironbar = {
enable = true;
style = ''
@import url("/home/dashie/.config/gtk-3.0/gtk.css");
* {
color: #71bbe6;
padding: 0px;
margin: 0px;
}
.background {
background-color: rgba(0, 0, 0, 0);
}
.workspaces {
margin: 2px 0px 0px 5px;
border-radius: 10px;
/* background-color: #2b2c3b; */
background-color: #1E1E2E;
padding: 2px 5px 2px 5px;
}
.workspaces .item {
margin: 0px 3px 0px 3px;
font-size: 13px;
border-radius: 100%;
padding: 0px 2px 0px 3px;
background-color: rgba(0, 0, 0, 0);
}
.workspaces .item:hover {
background-color: #3e4152;
}
.workspaces .item.focused {
background-color: #3e4152;
}
.audio-box {
padding: 2em;
background-color: #1E1E2E;
border-radius: 5px;
}
.audio-slider {
padding: 5px;
margin: 5px;
}
.audio-button {
padding: 5px 10px 5px 10px;
margin: 0px 1em 20px 1em;
border-radius: 100%;
font-size: 17px;
}
.audio-button-box {
padding: 0px 2.5em 0px 2.5em;
}
.focused {
/* margin: 2px 0px 0px 0px; */
padding: 0px 5px 0px 5px;
/* background-color: 1a1b26; */
background-color: #1E1E2E;
font-size: 17px;
border-radius: 10px;
}
#bar #end {
margin: 0px 5px 0px 0px;
padding: 0px 5px 0px 5px;
background-color: #1E1E2E;
border-radius: 10px;
}
.popup-button {
padding: 0px 5px 0px 3px;
margin: 0em 3px;
border-radius: 100%;
font-size: 13px;
background-color: #1E1E2E;
}
.popup-button-box {
padding: 2px 0px 2px 0px;
}
.clock {
padding: 0px 5px 0px 5px;
font-size: 17px;
background-color: #1E1E2E;
}
.clock:hover {
background-color: #3e4152;
}
.custom button {
background-color: #1E1E2E;
}
.custom button:hover {
background-color: #3e4152;
}
.memory-usage {
font-size: 15px;
margin: 0px 5px 0px 0px;
}
.memory-usage:hover {
background-color: #3e4152;
}
.popup-clock {
background-color: #1E1E2E;
border-radius: 5px;
padding: 2px 8px 10px 8px;
}
.popup-clock .calendar-clock {
font-size: 2.5em;
padding-bottom: 0.1em;
}
.popup-clock .calendar {
border-radius: 5px;
font-size: 1.05em;
}
.popup-clock .calendar:selected {
background-color: #3e4152;
}
'';
features = [
#"another_feature"
];
config = {
monitors.DP-1 = {
end = [
{
type = "sys_info";
format = [
" {memory_percent}"
];
interval.memory = 30;
class = "memory-usage";
}
{
type = "custom";
bar = [
{
type = "button";
class = "popup-button";
label = "";
on_click = "popup:toggle";
}
];
class = "popup-button-box";
popup = [
{
type = "box";
orientation = "vertical";
class = "audio-box";
widgets = [
{
type = "box";
orientation = "horizontal";
widgets = [
{
type = "button";
class = "audio-button";
label = "";
on_click = "!/home/dashie/.config/eww/scripts/audio_control.sh bluetooth";
}
{
type = "button";
class = "audio-button";
label = "󰋋";
on_click = "!/home/dashie/.config/eww/scripts/audio_control.sh internal";
}
];
class = "audio-button-box";
}
{
type = "label";
label = "Output";
}
{
type = "slider";
class = "audio-slider";
step = 1.0;
length = 200;
value = "pactl get-sink-volume @DEFAULT_SINK@ | awk -F'/' '{ print $2 }' | tr -d ' %'";
on_change = "!pactl set-sink-volume @DEFAULT_SINK@ $0%";
}
{
type = "label";
label = "Input";
}
{
type = "slider";
class = "audio-slider";
step = 1.0;
length = 200;
value = "pactl get-source-volume @DEFAULT_SOURCE@ | awk -F'/' '{ print $2 }' | tr -d ' %'";
on_change = "!pactl set-source-volume @DEFAULT_SOURCE@ $0%";
}
];
}
];
}
{
type = "custom";
bar = [
{
type = "button";
class = "popup-button";
label = "";
on_click = "!oxidash --css /home/dashie/gits/oxidash/style.css";
}
];
class = "popup-button-box";
}
{
type = "clock";
format = "%I:%M";
format_popup = "%I:%M:%S";
locale = "en_US";
}
{ type = "tray"; }
];
position = "top";
height = 10;
anchor_to_edges = true;
start = [{
type = "workspaces";
all_monitors = true;
}];
center = [
{
type = "focused";
show_icon = true;
show_title = true;
icon_size = 20;
truncate = "end";
}
];
};
};
};
}

View file

@ -0,0 +1,9 @@
{
imports = [
./oxipaste.nix
./oxinoti.nix
./oxishut.nix
./oxidash.nix
];
}

View file

@ -0,0 +1,53 @@
{
xdg.configFile."oxidash/style.css" = {
text =
''
#MainWindow {
border-radius: 10px;
}
#MainBox {
border-radius: 10px;
}
#MainButtonBox {
padding: 10px;
margin: 5px 0px 5px 0px;
border-radius: 5px;
border: solid 2px #327cd5;
}
#DoNotDisturbButton {
}
#ExitButton {
}
#ClearNotificationsButton {
}
#NotificationsWindow {
}
.debugimage {
border: solid 3px blue;
}
.Notification {
padding: 10px;
margin: 5px 0px 5px 0px;
border: solid 2px #327cd5;
border-radius: 5px;
}
.CloseNotificationButton {
margin: 0px 5px 0px 10px;
}
.PictureButtonBox {
}
.BaseBox {
}
}
'';
};
}

View file

@ -0,0 +1,92 @@
{
xdg.configFile."oxinoti/style.css" = {
text =
''
@import url("/home/dashie/.config/gtk-3.0/gtk.css");
#MainWindow {
background-color: transparent;
padding: 0px;
/* opacity: 0; */
}
.MainBox {
background-color: transparent;
padding: 0px;
/* opacity: 0; */
}
.NotificationBox {
background-color: #353747;
border-radius: 5px;
border: solid 1px;
margin: 0px;
padding: 5px;
}
.NotificationLow {
border-color: green;
}
.NotificationNormal {
border-color: purple;
}
.NotificationUrgent {
border-color: red;
}
.miscbox {
margin: 0px 10px 0px 0px;
}
.bodybox {
}
.imagebox {
margin: 0px 0px 0px 10px;
}
.appname {
font-size: 0.8rem;
}
.timestamp {
font-size: 0.8rem;
}
.summary {
font-size: 0.8rem;
}
.body {
font-size: 1.2rem;
}
.icon {
font-size: 2rem;
}
.image {
}
.bold {
font-weight: bold;
}
.italic {
font-style: italic;
}
.underline {
text-decoration-line: underline;
}
'';
};
xdg.configFile."oxinoti/oxinoti.toml" = {
text = ''
timeout = 3
dnd_override = 2
'';
};
}

View file

@ -0,0 +1,31 @@
{
xdg.configFile."oxipaste/style.css" = {
text =
''
.main-window {
padding: 10px;
border-radius: 10px;
border: 2px solid #2AC3DE;
}
.item-window {
padding: 10px;
border-radius: 10px;
border: 2px solid #C0CAF5;
}
.item-button {
background-color: #1A1B26;
border-radius: 5px;
border: 1px solid #6D728D;
}
.delete-button {
margin: 5px 25px 5px 5px;
}
.item-box {
}
'';
};
}

View file

@ -0,0 +1,25 @@
{
xdg.configFile."oxishut/style.css" = {
text =
''
#mainwindow {
border-radius: 10px;
}
.mainbox {
border-radius: 5px;
padding: 20px;
}
.button {
margin: 5px;
background-color: #2b2c3b;
-gtk-icon-size: 5rem;
}
.button:hover {
background-color: #3e4152;
}
'';
};
}

1494
nix/programs/yazi.nix Normal file

File diff suppressed because it is too large Load diff

8
nvim/.gitignore vendored
View file

@ -1,8 +0,0 @@
tt.*
.tests
doc/tags
debug
.repro
foo.*
*.log
data

View file

@ -1,15 +0,0 @@
{
"neodev": {
"library": {
"enabled": true,
"plugins": true
}
},
"neoconf": {
"plugins": {
"sumneko_lua": {
"enabled": true
}
}
}
}

View file

@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View file

@ -1,170 +0,0 @@
# List of keymaps
## Space as leader
## Motion
| key | Descpription |
| ------- | ------------------------- |
| j | left |
| k | down |
| l | up |
| ; | right |
| \<A-j\> | window left |
| \<A-k\> | window up |
| \<A-l\> | window down |
| \<A-;\> | window right |
| \<A-f\> | open file tree (root |
| \<A-F\> | open file tree (cwd) |
## Debugging
| key | Description |
| ----------- | --------------------- |
| \<leader\>da | run with args |
| \<leader\>db | toggle breakpoint |
| \<leader\>dB | breakpoint condition |
| \<leader\>dC | run to cursoor |
| \<leader\>dc | continue |
| \<leader\>de | eval |
| \<leader\>dg | go to line |
| \<leader\>di | step into |
| \<leader\>k | down |
| \<leader\>l | up |
| \<leader\>; | run last |
| \<leader\>dO | step over |
| \<leader\>do | step out |
| \<leader\>dp | pause |
| \<leader\>dr | toggle repl |
| \<leader\>ds | session |
| \<leader\>dt | terminate |
| \<leader\>du | DAP UI |
| \<leader\>dw | widgets |
## neotest
| key | Description |
| ----------- | ------------------------- |
| \<leader\>tt | execute all tests |
| \<leader\>tT | execute nearest test |
## buffer switching
| key | Description |
| --- | ------------------------- |
| F1 | next buffer (cycles) |
| F2 | previous buffer (cycles) |
## formatting
| key | Description |
| --- | ------------------------- |
| F4 | format this file |
## telescope
| key | Description |
| ----------- | ------------------------- |
| \<leader\>ff | find files |
| \<leader\>fg | live ripgrep |
| \<leader\>fh | help for functions etc |
| \<leader\>fp | find projects |
| \<leader\>fb | file browser |
### telescope git
| key | Description |
| ---------- | ------------------------- |
| \<leader\>gq | show commits |
| \<leader\>gw | show commits with diff |
| \<leader\>gb | show branches |
| \<leader\>gr | show git status |
| \<leader\>ga | show git stash |
| \<leader\>ge | git file tree |
### project telescope
<table> <tr> <th> normal mode </th> <th> insert mode </th></tr>
<tr> <td>
| key | Description |
| --- | --------------------------------- |
| d | delete project |
| r | rename project |
| c | create project |
| s | search files in project |
| b | browse files in project |
| w | change directory to project |
| R | recently opened files in project |
| f | find file within project |
</td> <td>
| key | Description |
| -------- | --------------------------------- |
| \<C-d\> | delete project |
| \<C-v\> | rename project |
| \<C-a\> | create project |
| \<C-s\> | search files in project |
| \<C-b\> | browse files in project |
| \<C-l\> | change directory to project |
| \<C-r\> | recently opened files in project |
| \<C-f\> | find file within project |
</td> </tr> </table>
## toggletrouble
| key | Description |
| ---------- | ------------------------- |
| \<leader\>t | show errors and warnings |
## cmp
Note, these require the cmp list view to be open to do anything!
| key | Description |
| ----------- | --------------------------------------------------------- |
| \<C-b\> | scroll docs up |
| \<C-f\> | scroll docs down |
| \<C-e\> | cancel cmp |
| Enter | write selected suggestion (does nothing if not selected) |
| Tab |scroll down through suggestion list |
| Shift + Tab | scroll up through suggestion list |
## LSP
| key | Description |
| ------------ | ---------------------- |
| \<leader\>ca | go to definition |
| \<leader\>ca | go to declaration |
| \<leader\>cs | find references |
| \<leader\>cd | go to type definition |
| \<leader\>cf | go to implementation |
| \<leader\>cq | fix code action |
| \<leader\>cQ | refactor code action |
| \<leader\>cw | signature help |
| \<leader\>ce | hover |
| \<leader\>cr | rename |
## snippets
These require you to be inside a snippet!
| key | Description |
| -------- | ------------------------- |
| \<C-j\> | jump to next entry |
| \<C-k\> | jump to previous entry |
## Leap
| key | Description |
| -------- | ------------------------------------------------------ |
| s | followed by 2 other characters and the marker to jump |
## Dashboard
only available on dashboard
| key | Description |
| --- | ------------------------- |
| f | file |
| e | new file |
| p | find project |
| r | recently used files |
| t | find text |
| c | open config |
| q | quit |
## Treesitter specials
used to interact with treesitter defined objects.
| key | Description |
| --- | ------------------------------------ |
| dif | Delete the content of a function |
| daf | Delete the entire function |
| dic | Delete the content of a class/struct |
| dac | Delete the entire class/struct |

View file

@ -1 +0,0 @@
vim.cmd [[ autocmd BufRead,BufNewFile *.cl set filetype=cl ]]

View file

@ -1 +0,0 @@
vim.cmd [[ autocmd BufRead,BufNewFile *.typ set filetype=typst ]]

View file

@ -1 +0,0 @@
vim.cmd [[ autocmd BufRead,BufNewFile *.typst set filetype=typst ]]

View file

@ -1,2 +0,0 @@
-- bootstrap lazy.nvim, LazyVim and your plugins
require("config.lazy")

View file

@ -1,86 +0,0 @@
{
"LazyVim": { "branch": "main", "commit": "c901640167ec5b123ff8524b01518c9a370a0d31" },
"LuaSnip": { "branch": "master", "commit": "a7a4b4682c4b3e2ba82b82a4e6e5f5a0e79dec32" },
"SchemaStore.nvim": { "branch": "main", "commit": "c5d5abc86910fb31b9f734cae2547322e81d3a26" },
"alpha-nvim": { "branch": "main", "commit": "41283fb402713fc8b327e60907f74e46166f4cfd" },
"bufferline.nvim": { "branch": "main", "commit": "64e2c5def50dfd6b6f14d96a45fa3d815a4a1eef" },
"catppuccin": { "branch": "main", "commit": "fc98570d85ae772e56dc42cf8d7d6a497a909bdb" },
"clangd_extensions.nvim": { "branch": "main", "commit": "2992ba8c13c2de41f91a7c7488bf1c48bcec31fe" },
"cmake-tools.nvim": { "branch": "master", "commit": "8506c426d5b361dbaa7c61c0490a2589a9c555ce" },
"cmp-async-path": { "branch": "main", "commit": "9d581eec5acf812316913565c135b0d1ee2c9a71" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
"conform.nvim": { "branch": "master", "commit": "9d5ba06d6ee7418c674f498634617416d15b6239" },
"crates.nvim": { "branch": "main", "commit": "b4f4987ccdb1cc3899ee541ef4375c73c48c4570" },
"dressing.nvim": { "branch": "master", "commit": "18e5beb3845f085b6a33c24112b37988f3f93c06" },
"flash.nvim": { "branch": "main", "commit": "48817af25f51c0590653bbc290866e4890fe1cbe" },
"friendly-snippets": { "branch": "main", "commit": "dcd4a586439a1c81357d5b9d26319ae218cc9479" },
"git-blame.nvim": { "branch": "master", "commit": "ad1d1365c9189d89797fe8d559677d5f55dc2830" },
"gitsigns.nvim": { "branch": "main", "commit": "d96ef3bbff0bdbc3916a220f5c74a04c4db033f2" },
"headlines.nvim": { "branch": "master", "commit": "618ef1b2502c565c82254ef7d5b04402194d9ce3" },
"inc-rename.nvim": { "branch": "main", "commit": "5e03e986625961d1fac296d1bf332a6510c3add6" },
"indent-blankline.nvim": { "branch": "master", "commit": "3d08501caef2329aba5121b753e903904088f7e6" },
"instant.nvim": { "branch": "master", "commit": "294b6d08143b3db8f9db7f606829270149e1a786" },
"lazy.nvim": { "branch": "main", "commit": "bef521ac89c8d423f9d092e37b58e8af0c099309" },
"ltex_extra.nvim": { "branch": "master", "commit": "4296c2c7aefbca721d02a011366a1de30598046c" },
"lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "44509689b9bf3984d729cc264aacb31cb7f41668" },
"mason-nvim-dap.nvim": { "branch": "main", "commit": "67210c0e775adec55de9826b038e8b62de554afc" },
"mason.nvim": { "branch": "main", "commit": "751b1fcbf3d3b783fcf8d48865264a9bcd8f9b10" },
"mini.ai": { "branch": "main", "commit": "ee9446a17c160aba6a04ff22097389c41872c878" },
"mini.bufremove": { "branch": "main", "commit": "931a3bb514147d9e812767275c4beba6b779b1d3" },
"mini.comment": { "branch": "main", "commit": "f9f1a646fd3d9df7397aa1b9550a875fe8189eb0" },
"mini.indentscope": { "branch": "main", "commit": "a8274b6ea2d868198d27bd91a31ed5ea3a6a5744" },
"mini.pairs": { "branch": "main", "commit": "04f58f2545ed80ac3b52dd4826e93f33e15b2af6" },
"mini.surround": { "branch": "main", "commit": "d035934958e2605048ee1378ce47cf799f7071d4" },
"neo-tree.nvim": { "branch": "v3.x", "commit": "7aad1bf3f6b849cbf108e02c55ad4d701cb4d33a" },
"neoconf.nvim": { "branch": "main", "commit": "9d61ff423ae5f179ace1823300c4873f38a7c418" },
"neodev.nvim": { "branch": "main", "commit": "ce9a2e8eaba5649b553529c5498acb43a6c317cd" },
"neoscroll.nvim": { "branch": "master", "commit": "21d52973bde32db998fc8b6590f87eb3c3c6d8e4" },
"neotest": { "branch": "master", "commit": "f03a78cef74db5638e4312e18b767294a90de8da" },
"neotest-go": { "branch": "main", "commit": "6a2f996d89fe4631942e035b1c114544ee045043" },
"neotest-python": { "branch": "master", "commit": "2e83d2bc00acbcc1fd529dbf0a0e677cabfe6b50" },
"nui.nvim": { "branch": "main", "commit": "cbd2668414331c10039278f558630ed19b93e69b" },
"nvim-cmp": { "branch": "main", "commit": "97dc716fc914c46577a4f254035ebef1aa72558a" },
"nvim-dap": { "branch": "master", "commit": "405df1dcc2e395ab5173a9c3d00e03942c023074" },
"nvim-dap-go": { "branch": "main", "commit": "36abe1d320cb61bfdf094d4e0fe815ef58f2302a" },
"nvim-dap-python": { "branch": "master", "commit": "3dffa58541d1f52c121fe58ced046268c838d802" },
"nvim-dap-ui": { "branch": "master", "commit": "edfa93f60b189e5952c016eee262d0685d838450" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "3e8e207513e6ef520894950acd76b79902714103" },
"nvim-jdtls": { "branch": "master", "commit": "8eb5f0dbe6e126b392ddcaf45893358619893e45" },
"nvim-lint": { "branch": "master", "commit": "4055dc856d5ac8f6b85748006fd8fa6457e086e8" },
"nvim-lspconfig": { "branch": "master", "commit": "6e5c78ebc9936ca74add66bda22c566f951b6ee5" },
"nvim-nio": { "branch": "master", "commit": "5800f585def265d52f1d8848133217c800bcb25d" },
"nvim-spectre": { "branch": "master", "commit": "2b012554a2536465243c0dff3605b5927c49ed23" },
"nvim-treesitter": { "branch": "master", "commit": "d2f4c7830377d6d036e9621ae696dbd28f089897" },
"nvim-treesitter-context": { "branch": "master", "commit": "ba05c6b753130d96b284d3e8ba8f54c28c0fb6d1" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "6e9bb569a510bdfab6095c217a2f714af7a3d116" },
"nvim-ts-autotag": { "branch": "main", "commit": "531f48334c422222aebc888fd36e7d109cb354cd" },
"nvim-ts-context-commentstring": { "branch": "main", "commit": "734ebad31c81c6198dfe102aa23280937c937c42" },
"nvim-web-devicons": { "branch": "master", "commit": "6e355632387a085f15a66ad68cf681c1d7374a04" },
"omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "6e0aa6465f8fa8ac6c833f6ac4713adfee0202a0" },
"persistence.nvim": { "branch": "main", "commit": "4982499c1636eac254b72923ab826ee7827b3084" },
"plenary.nvim": { "branch": "master", "commit": "8aad4396840be7fc42896e3011751b7609ca4119" },
"rustaceanvim": { "branch": "master", "commit": "701fd234b5f80b56ff827b6394d8773d931cc324" },
"tailwindcss-colorizer-cmp.nvim": { "branch": "main", "commit": "3d3cd95e4a4135c250faf83dd5ed61b8e5502b86" },
"telescope-file-browser.nvim": { "branch": "master", "commit": "5ee5002373655fd684a4ad0d47a3de876ceacf9a" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" },
"telescope-project.nvim": { "branch": "master", "commit": "1aaf16580a614601a7f7077d9639aeb457dc5559" },
"telescope-zoxide": { "branch": "main", "commit": "68966349aa1b8e9ade403e18479ecf79447389a7" },
"telescope.nvim": { "branch": "master", "commit": "4d4ade7f2b8f403e8816ca50c05ed16e259b21fb" },
"test_plugin": { "branch": "main", "commit": "c6100b07b2f7925e5bb639c6b42427f9aa362add" },
"todo-comments.nvim": { "branch": "main", "commit": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d" },
"tokyonight.nvim": { "branch": "main", "commit": "9bf9ec53d5e87b025e2404069b71e7ebdc3a13e5" },
"trouble.nvim": { "branch": "main", "commit": "b9cf677f20bb2faa2dacfa870b084e568dca9572" },
"typst.vim": { "branch": "main", "commit": "7f64019341defe894ea3ec2f5d3b4279a245a450" },
"venv-selector.nvim": { "branch": "main", "commit": "3c57922256e7e26205a25f5a42ecf7104d9f2c78" },
"vim-illuminate": { "branch": "master", "commit": "305bf07b919ac526deb5193280379e2f8b599926" },
"vim-startuptime": { "branch": "master", "commit": "ac2cccb5be617672add1f4f3c0a55ce99ba34e01" },
"vim-visual-multi": { "branch": "master", "commit": "e2ff111f123da6cf97f95b96b10eb95854f953c9" },
"vimtex": { "branch": "master", "commit": "ac0a41b297a70c101df89bc9c8d43341ba00fd4f" },
"which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" },
"yazi.nvim": { "branch": "master", "commit": "b5c9390c733244b10859b940413ef9741955301a" }
}

View file

@ -1,9 +0,0 @@
{
"extras": [
],
"news": {
"NEWS.md": "2850"
},
"version": 3
}

View file

@ -1,55 +0,0 @@
snippet mini \minipg{}{}[]
\\minipg{
$1
}
{${2}}[${3}]
snippet graphics \includegraphics[]{}
\\includegraphics[scale=$1]{${2}}
snippet code "code"
\\begin{lstlisting}
$1
\\end{lstlisting}
snippet list "list"
\\begin{itemize}
\\item \\textcolor{${1}}{${2}}
\\item \\textcolor{${1}}{${3}}
\\item \\textcolor{${1}}{${4}}
\\item \\textcolor{${1}}{${5}}
\\vspace{-3mm}
\\end{itemize}
snippet enum "enumerate"
\\begin{enumerate}
\\item \textcolor{${1}}{${2}}
\\item \textcolor{${1}}{${3}}
\\item \textcolor{${1}}{${4}}
\\item \textcolor{${1}}{${5}}
\\vspace{-3mm}
\\end{enumerate}
snippet table "table"
\\begin{table}[ht!]
\\section{${1}}
\\begin{tabular}{|m{0.2\linewidth}|m{0.755\linewidth}|}
\hline
$2
\hline
\\end{tabular}
\\end{table}
snippet tabular "tabular"
\\begin{tabular}{|m{0.2\linewidth}|m{0.755\linewidth}|}
\hline
$1
\hline
\\end{tabular}
snippet tx "textcolor"
\\textcolor{${1}}{${2}}
snippet bm "vectormatrix"
\\begin{bmatrix} $1 \\ $2 \\ $3 \end{bmatrix}

View file

@ -1,210 +0,0 @@
local ls = require("luasnip")
-- some shorthands...
local s = ls.s
local i = ls.i
local t = ls.t
local d = ls.dynamic_node
local c = ls.choice_node
local f = ls.function_node
local sn = ls.snippet_node
local fmt = require("luasnip.extras.fmt").fmt
local rep = require("luasnip.extras").rep
local snippets, autosnippets = {}, {}
local group = vim.api.nvim_create_augroup("Tex Snippets", { clear = true })
local file_pattern = "*.tex"
------------------------------------------------- boilerplate end
-- snippers go here:
local formSnippet = s(
"form-",
fmt(
[[
\, \newline
\large \textcolor{{purple}}{{\( {1} \)}}\newline
\, \newline
\normalsize Legend: \newline
\begin{{itemize}}
\item {2}
\item {3}
\item {4}
\item {5}
\end{{itemize}}
]],
{
i(1, "formula"),
i(2, "item 1"),
i(3, "item 2"),
i(4, "item 3"),
i(5, "item 4"),
}
)
)
table.insert(snippets, formSnippet)
local listSnippet = s(
"list-",
fmt(
[[
\begin{{itemize}}
\item \textcolor{{{1}}}{{{5}}}
\item \textcolor{{{2}}}{{{6}}}
\item \textcolor{{{3}}}{{{7}}}
\item \textcolor{{{4}}}{{{8}}}
\end{{itemize}}
]],
{
i(1, "color"),
rep(1),
rep(1),
rep(1),
i(2, "item 1"),
i(3, "item 2"),
i(4, "item 3"),
i(5, "item 4"),
}
)
)
table.insert(snippets, listSnippet)
local enumerateSnippet = s(
"enum-",
fmt(
[[
\begin{{enumerate}}
\item \textcolor{{{1}}}{{{5}}}
\item \textcolor{{{2}}}{{{6}}}
\item \textcolor{{{3}}}{{{7}}}
\item \textcolor{{{4}}}{{{8}}}
\end{{enumerate}}
]],
{
i(1, "color"),
rep(1),
rep(1),
rep(1),
i(2, "item 1"),
i(3, "item 2"),
i(4, "item 3"),
i(5, "item 4"),
}
)
)
table.insert(snippets, enumerateSnippet)
local tableSnippet = s(
"table-",
fmt(
[[
\begin{{table}}[ht!]
\section{{{}}}
\begin{{tabular}}{{|m{{0.2\linewidth}}|m{{0.755\linewidth}}|}}
\hline
{}
\hline
\end{{tabular}}
\end{{table}}
]],
{
i(1, "Section Name"),
i(2, "data....."),
}
)
)
table.insert(snippets, tableSnippet)
local tabularSnippet = s(
"tabular-",
fmt(
[[
\begin{{tabular}}{{|m{{0.2\linewidth}}|m{{0.755\linewidth}}|}}
\hline
{}
\hline
\end{{tabular}}
]],
{
i(1, "data....."),
}
)
)
table.insert(snippets, tabularSnippet)
local textcolorSnippet = s(
"tx-",
fmt(
[[
\textcolor{{{1}}}{{{2}}}
]],
{
i(1, "color"),
i(2, "text..."),
}
)
)
table.insert(snippets, textcolorSnippet)
local boldSnippet = s(
"bold-",
fmt(
[[
\textbf{{{1}}}
]],
{
i(1, "text..."),
}
)
)
table.insert(snippets, boldSnippet)
local minipgSnippet = s(
"mini-",
fmt(
[[
\minipg{{
{1}
}}{{
{2}
}}[{3}]
]],
{
i(1, "data..."),
i(2, "data..."),
i(3, "0.25,0.25"),
}
)
)
table.insert(snippets, minipgSnippet)
local graphicSnippet = s(
"graph-",
fmt(
[[
\includegraphics[scale={1}]{{{2}}}
]],
{
i(1, "0.4"),
i(2, "something.png"),
}
)
)
table.insert(snippets, graphicSnippet)
local lstSnippet = s(
"code-",
fmt(
[[
\begin{{lstlisting}}
{}
\end{{lstlisting}}
]],
{
i(1, "data"),
}
)
)
table.insert(snippets, lstSnippet)
------------------------------------------------- snippets end
return snippets, autosnippets

View file

@ -1,163 +0,0 @@
local ls = require("luasnip")
-- some shorthands...
local s = ls.s
local i = ls.i
local t = ls.t
local d = ls.dynamic_node
local c = ls.choice_node
local f = ls.function_node
local sn = ls.snippet_node
local fmt = require("luasnip.extras.fmt").fmt
local rep = require("luasnip.extras").rep
local snippets, autosnippets = {}, {}
local group = vim.api.nvim_create_augroup("Tex Snippets", { clear = true })
local file_pattern = "*.typst"
------------------------------------------------- boilerplate end
-- snippers go here:
local colorSnippet = s(
"tx-",
fmt([[ #text({1})[{2}] ]], {
i(1, "color"),
i(2, "text"),
})
)
table.insert(snippets, colorSnippet)
local imageSnippet = s(
"image-",
fmt(
[[
#image("{1}", width: {2}%)
]],
{
i(1, "../../Screenshots/"),
i(2, "100"),
}
)
)
table.insert(snippets, imageSnippet)
local figureSnippet = s(
"figure-",
fmt(
[[
#align(
center, [#figure(
img("{1}", width: {2}%, extension: "{3}"), caption: [{4}],
)<{5}>],
)
]],
{
i(1, ""),
i(2, "100"),
i(3, "figures"),
i(4, ""),
i(5, ""),
}
)
)
table.insert(snippets, figureSnippet)
local centerImageSnippet = s(
"cimage-",
fmt(
[[
#align(center, [#image("{1}", width: {2}%)])
]],
{
i(1, "../../Screenshots"),
i(2, "100"),
}
)
)
table.insert(snippets, centerImageSnippet)
local colSnippet = s(
"col-",
fmt(
[[
#columns({1}, [{2}])
]],
{
i(1, "col-amount"),
i(2, "content"),
}
)
)
table.insert(snippets, colSnippet)
local codeSnippet = s(
"code-",
fmt(
[[
```{1}
{2}
```
]],
{
i(1, ""),
i(2, ""),
}
)
)
table.insert(snippets, codeSnippet)
local codeFigure = s(
"codefig-",
fmt(
[[
#let code = "
{1}"
#align(
left, [#figure(
sourcecode(raw(code, lang: "{2}")), kind: "code", supplement: "Listing", caption: [{3}],
)<{4}>],
)
]],
{
i(1, ""),
i(2, "rs"),
i(3, ""),
i(4, ""),
}
)
)
table.insert(snippets, codeFigure)
local patternSnippet = s(
"pattern-",
fmt(
[[
#subsection([{1}])
#set text(size: 14pt)
*Problem* | {2}\
*Solution* | {3}\
#set text(size: 11pt)
{4}
#columns(2, [
#text(green)[Benefits]
- {5}
#colbreak()
#text(red)[Liabilities]
- {6}
])
]],
{
i(1, ""),
i(2, ""),
i(3, ""),
i(4, ""),
i(5, ""),
i(6, ""),
}
)
)
table.insert(snippets, patternSnippet)
------------------------------------------------- snippets end
return snippets, autosnippets

View file

@ -1,3 +0,0 @@
indent_type = "Spaces"
indent_width = 2
column_width = 120

View file

@ -1,45 +0,0 @@
#MainWindow {
border-radius: 10px;
}
#MainBox {
border-radius: 10px;
}
#MainButtonBox {
padding: 10px;
margin: 5px 0px 5px 0px;
border-radius: 5px;
border: solid 2px #327cd5;
}
#DoNotDisturbButton {
}
#ExitButton {
}
#ClearNotificationsButton {
}
#NotificationsWindow {
}
.debugimage {
border: solid 3px blue;
}
.Notification {
padding: 10px;
margin: 5px 0px 5px 0px;
border: solid 2px #327cd5;
border-radius: 5px;
}
.CloseNotificationButton {
margin: 0px 5px 0px 10px;
}
.PictureButtonBox {
}
.BaseBox {
}

View file

@ -1,2 +0,0 @@
timeout = 3
dnd_override = 2

View file

@ -1,79 +0,0 @@
@import url("/home/dashie/.config/gtk-3.0/gtk.css");
#MainWindow {
background-color: transparent;
padding: 0px;
/* opacity: 0; */
}
.MainBox {
background-color: transparent;
padding: 0px;
/* opacity: 0; */
}
.NotificationBox {
background-color: #353747;
border-radius: 5px;
border: solid 1px;
margin: 0px;
padding: 5px;
}
.NotificationLow {
border-color: green;
}
.NotificationNormal {
border-color: purple;
}
.NotificationUrgent {
border-color: red;
}
.miscbox {
margin: 0px 10px 0px 0px;
}
.bodybox {
}
.imagebox {
margin: 0px 0px 0px 10px;
}
.appname {
font-size: 0.8rem;
}
.timestamp {
font-size: 0.8rem;
}
.summary {
font-size: 0.8rem;
}
.body {
font-size: 1.2rem;
}
.icon {
font-size: 2rem;
}
.image {
}
.bold {
font-weight: bold;
}
.italic {
font-style: italic;
}
.underline {
text-decoration-line: underline;
}

View file

@ -1,24 +0,0 @@
.main-window {
padding: 10px;
border-radius: 10px;
border: 2px solid #2AC3DE;
}
.item-window {
padding: 10px;
border-radius: 10px;
border: 2px solid #C0CAF5;
}
.item-button {
background-color: #1A1B26;
border-radius: 5px;
border: 1px solid #6D728D;
}
.delete-button {
margin: 5px 25px 5px 5px;
}
.item-box {
}

View file

@ -1,18 +0,0 @@
#mainwindow {
border-radius: 10px;
}
.mainbox {
border-radius: 5px;
padding: 20px;
}
.button {
margin: 5px;
background-color: #2b2c3b;
-gtk-icon-size: 5rem;
}
.button:hover {
background-color: #3e4152;
}

View file

@ -19,7 +19,7 @@ gui_effects=General, AnimateMenu, AnimateCombo, AnimateTooltip, AnimateToolBox
keyboard_scheme=4
menus_have_icons=true
show_shortcuts_in_context_menus=true
stylesheets=/home/dashie/.config/qt5ct/qss/tab.qss, /usr/share/qt5ct/qss/scrollbar-simple.qss, /usr/share/qt5ct/qss/sliders-simple.qss, /usr/share/qt5ct/qss/tooltip-simple.qss, /usr/share/qt5ct/qss/traynotification-simple.qss
stylesheets=/home/dashie/.config/qt5ct/qss/tab.qss
toolbutton_style=4
underline_shortcut=0
wheel_scroll_lines=3
@ -31,7 +31,7 @@ geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\n\0\0\0\0\0\0\0\fv\0\0\x2\x10\0
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x2\x82\0\0\x1\xf2\0\0\0\0\0\0\0\0\0\0\x2\x82\0\0\x1\xf2\0\0\0\x2\x2\0\0\0\n\0\0\0\0\0\0\0\0\0\0\0\x2\x82\0\0\x1\xf2)
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\n\0\0\0\0\0\0\0\rK\0\0\x2\xaf\0\0\n\0\0\0\0\0\0\0\r[\0\0\x2\xbf\0\0\0\0\x2\0\0\0\rp\0\0\n\0\0\0\0\0\0\0\rK\0\0\x2\xaf)
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\n\0\0\0\0\0\0\0\r\x83\0\0\x2\x94\0\0\n\0\0\0\0\0\0\0\fO\0\0\x2\xbf\0\0\0\0\x2\0\0\0\rp\0\0\n\0\0\0\0\0\0\0\r\x83\0\0\x2\x94)
[Troubleshooting]
force_raster_widgets=1

View file

@ -1,14 +1,10 @@
./copy_dotfiles.sh
sudo pacman -S rustup --noconfirm
rustup default nightly
cargo install paru
pac load
gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3' && gsettings set org.gnome.desktop.interface color-scheme 'default'
gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Classic'
gsettings set org.gnome.desktop.interface cursor-size 24
cargo install oxinoti
cargo install oxidash
cargo install oxishut
cargo install hyprdock
nixos-rebuild switch --flake ./nix/.#$0

View file

@ -1,573 +0,0 @@
[manager]
keymap = [
{ on = [
"<Esc>",
], run = "escape", desc = "Exit visual mode, clear selected, or cancel search" },
{ on = [
"q",
], run = "quit", desc = "Exit the process" },
{ on = [
"Q",
], run = "quit --no-cwd-file", desc = "Exit the process without writing cwd-file" },
{ on = [
"<C-q>",
], run = "close", desc = "Close the current tab, or quit if it is last tab" },
{ on = [
"<C-z>",
], run = "suspend", desc = "Suspend the process" },
# Navigation
{ on = [
"l",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"k",
], run = "arrow 1", desc = "Move cursor down" },
{ on = [
"L",
], run = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [
"K",
], run = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [
"<C-u>",
], run = "arrow -50%", desc = "Move cursor up half page" },
{ on = [
"<C-d>",
], run = "arrow 50%", desc = "Move cursor down half page" },
{ on = [
"<C-b>",
], run = "arrow -100%", desc = "Move cursor up one page" },
{ on = [
"<C-f>",
], run = "arrow 100%", desc = "Move cursor down one page" },
{ on = [
"j",
], run = "leave", desc = "Go back to the parent directory" },
{ on = [
";",
], run = "enter", desc = "Enter the child directory" },
{ on = [
"J",
], run = "back", desc = "Go back to the previous directory" },
{ on = [
"P",
], run = "forward", desc = "Go forward to the next directory" },
{ on = [
"<C-k>",
], run = "peek -5", desc = "Peek up 5 units in the preview" },
{ on = [
"<C-j>",
], run = "peek 5", desc = "Peek down 5 units in the preview" },
{ on = [
"<Up>",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"<Down>",
], run = "arrow 1", desc = "Move cursor down" },
{ on = [
"<Left>",
], run = "leave", desc = "Go back to the parent directory" },
{ on = [
"<Right>",
], run = "enter", desc = "Enter the child directory" },
{ on = [
"g",
"g",
], run = "arrow -99999999", desc = "Move cursor to the top" },
{ on = [
"G",
], run = "arrow 99999999", desc = "Move cursor to the bottom" },
# Selection
{ on = [
"v",
], run = "visual_mode", desc = "Enter visual mode (selection mode)" },
{ on = [
"V",
], run = "visual_mode --unset", desc = "Enter visual mode (unset mode)" },
{ on = [
"<C-a>",
], run = "select_all --state=true", desc = "Select all files" },
{ on = [
"<C-r>",
], run = "select_all --state=none", desc = "Inverse selection of all files" },
# Operation
{ on = [
"o",
], run = "open", desc = "Open the selected files" },
{ on = [
"O",
], run = "open --interactive", desc = "Open the selected files interactively" },
{ on = [
"<Enter>",
], run = "open", desc = "Open the selected files" },
{ on = [
"<C-Enter>",
], run = "open --interactive", desc = "Open the selected files interactively" }, # It's cool if you're using a terminal that supports CSI u
{ on = [
"y",
], run = "yank", desc = "Copy the selected files" },
{ on = [
"x",
], run = "yank --cut", desc = "Cut the selected files" },
{ on = [
"p",
], run = "paste", desc = "Paste the files" },
{ on = [
"P",
], run = "paste --force", desc = "Paste the files (overwrite if the destination exists)" },
{ on = [
"-",
], run = "link", desc = "Symlink the absolute path of files" },
{ on = [
"_",
], run = "link --relative", desc = "Symlink the relative path of files" },
{ on = [
"d",
], run = "remove", desc = "Move the files to the trash" },
{ on = [
"D",
], run = "remove --permanently", desc = "Permanently delete the files" },
{ on = [
"a",
], run = "create", desc = "Create a file or directory (ends with / for directories)" },
{ on = [
"r",
], run = "rename", desc = "Rename a file or directory" },
{ on = [
";",
], run = "shell", desc = "Run a shell command" },
{ on = [
":",
], run = "shell --block", desc = "Run a shell command (block the UI until the command finishes)" },
{ on = [
".",
], run = "hidden toggle", desc = "Toggle the visibility of hidden files" },
{ on = [
"<Space>",
"f",
"g>",
], run = "search fd", desc = "Search files by name using fd" },
{ on = [
"<Space>",
"f",
"G>",
], run = "search rg", desc = "Search files by content using ripgrep" },
{ on = [
"<C-s>",
], run = "search none", desc = "Cancel the ongoing search" },
{ on = [
"z",
], run = "jump zoxide", desc = "Jump to a directory using zoxide" },
{ on = [
"Z",
], run = "jump fzf", desc = "Jump to a directory, or reveal a file using fzf" },
# Copy
{ on = [
"c",
"c",
], run = "copy path", desc = "Copy the absolute path" },
{ on = [
"c",
"d",
], run = "copy dirname", desc = "Copy the path of the parent directory" },
{ on = [
"c",
"f",
], run = "copy filename", desc = "Copy the name of the file" },
{ on = [
"c",
"n",
], run = "copy name_without_ext", desc = "Copy the name of the file without the extension" },
# Find
{ on = [
"/",
], run = "find --smart" },
{ on = [
"?",
], run = "find --previous --smart" },
{ on = [
"n",
], run = "find_arrow" },
{ on = [
"N",
], run = "find_arrow --previous" },
# Sorting
{ on = [
",",
"a",
], run = "sort alphabetical --dir_first", desc = "Sort alphabetically" },
{ on = [
",",
"A",
], run = "sort alphabetical --reverse --dir_first", desc = "Sort alphabetically (reverse)" },
{ on = [
",",
"c",
], run = "sort created --dir_first", desc = "Sort by creation time" },
{ on = [
",",
"C",
], run = "sort created --reverse --dir_first", desc = "Sort by creation time (reverse)" },
{ on = [
",",
"m",
], run = "sort modified --dir_first", desc = "Sort by modified time" },
{ on = [
",",
"M",
], run = "sort modified --reverse --dir_first", desc = "Sort by modified time (reverse)" },
{ on = [
",",
"n",
], run = "sort natural --dir_first", desc = "Sort naturally" },
{ on = [
",",
"N",
], run = "sort natural --reverse --dir_first", desc = "Sort naturally (reverse)" },
{ on = [
",",
"s",
], run = "sort size --dir_first", desc = "Sort by size" },
{ on = [
",",
"S",
], run = "sort size --reverse --dir_first", desc = "Sort by size (reverse)" },
# Tabs
{ on = [
"t",
], run = "tab_create --current", desc = "Create a new tab using the current path" },
{ on = [
"1",
], run = "tab_switch 0", desc = "Switch to the first tab" },
{ on = [
"2",
], run = "tab_switch 1", desc = "Switch to the second tab" },
{ on = [
"3",
], run = "tab_switch 2", desc = "Switch to the third tab" },
{ on = [
"4",
], run = "tab_switch 3", desc = "Switch to the fourth tab" },
{ on = [
"5",
], run = "tab_switch 4", desc = "Switch to the fifth tab" },
{ on = [
"6",
], run = "tab_switch 5", desc = "Switch to the sixth tab" },
{ on = [
"7",
], run = "tab_switch 6", desc = "Switch to the seventh tab" },
{ on = [
"8",
], run = "tab_switch 7", desc = "Switch to the eighth tab" },
{ on = [
"9",
], run = "tab_switch 8", desc = "Switch to the ninth tab" },
{ on = [
"[",
], run = "tab_switch -1 --relative", desc = "Switch to the previous tab" },
{ on = [
"]",
], run = "tab_switch 1 --relative", desc = "Switch to the next tab" },
{ on = [
"{",
], run = "tab_swap -1", desc = "Swap the current tab with the previous tab" },
{ on = [
"}",
], run = "tab_swap 1", desc = "Swap the current tab with the next tab" },
# Tasks
{ on = [
"w",
], run = "tasks_show", desc = "Show the tasks manager" },
# Goto
{ on = [
"g",
"h",
], run = "cd ~", desc = "Go to the home directory" },
{ on = [
"g",
"c",
], run = "cd ~/.config", desc = "Go to the config directory" },
{ on = [
"g",
"d",
], run = "cd ~/Downloads", desc = "Go to the downloads directory" },
{ on = [
"g",
"t",
], run = "cd /tmp", desc = "Go to the temporary directory" },
{ on = [
"g",
"<Space>",
], run = "cd --interactive", desc = "Go to a directory interactively" },
# Help
{ on = [
"~",
], run = "help", desc = "Open help" },
]
[tasks]
keymap = [
{ on = [
"<Esc>",
], run = "close", desc = "Hide the task manager" },
{ on = [
"<C-q>",
], run = "close", desc = "Hide the task manager" },
{ on = [
"w",
], run = "close", desc = "Hide the task manager" },
{ on = [
"k",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"j",
], run = "arrow 1", desc = "Move cursor down" },
{ on = [
"<Up>",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"<Down>",
], run = "arrow 1", desc = "Move cursor down" },
{ on = [
"<Enter>",
], run = "inspect", desc = "Inspect the task" },
{ on = [
"x",
], run = "cancel", desc = "Cancel the task" },
{ on = [
"~",
], run = "help", desc = "Open help" },
]
[select]
keymap = [
{ on = [
"<C-q>",
], run = "close", desc = "Cancel selection" },
{ on = [
"<Esc>",
], run = "close", desc = "Cancel selection" },
{ on = [
"<Enter>",
], run = "close --submit", desc = "Submit the selection" },
{ on = [
"k",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"j",
], run = "arrow 1", desc = "Move cursor down" },
{ on = [
"K",
], run = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [
"J",
], run = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [
"<Up>",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"<Down>",
], run = "arrow 1", desc = "Move cursor down" },
{ on = [
"~",
], run = "help", desc = "Open help" },
]
[input]
keymap = [
{ on = [
"<C-q>",
], run = "close", desc = "Cancel input" },
{ on = [
"<Enter>",
], run = "close --submit", desc = "Submit the input" },
{ on = [
"<Esc>",
], run = "escape", desc = "Go back the normal mode, or cancel input" },
# Mode
{ on = [
"i",
], run = "insert", desc = "Enter insert mode" },
{ on = [
"a",
], run = "insert --append", desc = "Enter append mode" },
{ on = [
"v",
], run = "visual", desc = "Enter visual mode" },
{ on = [
"V",
], run = [
"move -999",
"visual",
"move 999",
], desc = "Enter visual mode and select all" },
# Navigation
{ on = [
"h",
], run = "move -1", desc = "Move cursor left" },
{ on = [
"l",
], run = "move 1", desc = "Move cursor right" },
{ on = [
"0",
], run = "move -999", desc = "Move to the BOL" },
{ on = [
"$",
], run = "move 999", desc = "Move to the EOL" },
{ on = [
"I",
], run = [
"move -999",
"insert",
], desc = "Move to the BOL, and enter insert mode" },
{ on = [
"A",
], run = [
"move 999",
"insert --append",
], desc = "Move to the EOL, and enter append mode" },
{ on = [
"<Left>",
], run = "move -1", desc = "Move cursor left" },
{ on = [
"<Right>",
], run = "move 1", desc = "Move cursor right" },
{ on = [
"b",
], run = "backward", desc = "Move to the beginning of the previous word" },
{ on = [
"w",
], run = "forward", desc = "Move to the beginning of the next word" },
{ on = [
"e",
], run = "forward --end-of-word", desc = "Move to the end of the next word" },
# Deletion
{ on = [
"d",
], run = "delete --cut", desc = "Cut the selected characters" },
{ on = [
"D",
], run = [
"delete --cut",
"move 999",
], desc = "Cut until the EOL" },
{ on = [
"c",
], run = "delete --cut --insert", desc = "Cut the selected characters, and enter insert mode" },
{ on = [
"C",
], run = [
"delete --cut --insert",
"move 999",
], desc = "Cut until the EOL, and enter insert mode" },
{ on = [
"x",
], run = [
"delete --cut",
"move 1 --in-operating",
], desc = "Cut the current character" },
# Yank/Paste
{ on = [
"y",
], run = "yank", desc = "Copy the selected characters" },
{ on = [
"p",
], run = "paste", desc = "Paste the copied characters after the cursor" },
{ on = [
"P",
], run = "paste --before", desc = "Paste the copied characters before the cursor" },
# Undo/Redo
{ on = [
"u",
], run = "undo", desc = "Undo the last operation" },
{ on = [
"<C-r>",
], run = "redo", desc = "Redo the last operation" },
# Help
{ on = [
"~",
], run = "help", desc = "Open help" },
]
[help]
keymap = [
{ on = [
"<Esc>",
], run = "escape", desc = "Clear the filter, or hide the help" },
{ on = [
"q",
], run = "close", desc = "Exit the process" },
{ on = [
"<C-q>",
], run = "close", desc = "Hide the help" },
# Navigation
{ on = [
"k",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"j",
], run = "arrow 1", desc = "Move cursor down" },
{ on = [
"K",
], run = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [
"J",
], run = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [
"<Up>",
], run = "arrow -1", desc = "Move cursor up" },
{ on = [
"<Down>",
], run = "arrow 1", desc = "Move cursor down" },
# Filtering
{ on = [
"/",
], run = "filter", desc = "Apply a filter for the help items" },
]

@ -1 +0,0 @@
Subproject commit 54b34c2b337ab0933130a06f61038398efa9ce65

@ -1 +0,0 @@
Subproject commit a653e7a0e90327b0e8f53544c4af097df2e49bc7

View file

@ -1,149 +0,0 @@
# vim:fileencoding=utf-8:foldmethod=marker
# : Manager {{{
[manager]
cwd = { fg = "#94e2d5" }
# Hovered
hovered = { reversed = true }
preview_hovered = { underline = true }
# Find
find_keyword = { fg = "#f9e2af", bold = true, italic = true, underline = true }
find_position = { fg = "#f5c2e7", bg = "reset", bold = true, italic = true }
# Marker
marker_copied = { fg = "#a6e3a1", bg = "#a6e3a1" }
marker_cut = { fg = "#f38ba8", bg = "#f38ba8" }
marker_marked = { fg = "#f9e2af", bg = "#f9e2af" }
marker_selected = { fg = "#779EF0", bg = "#89b4fa" }
# Tab
tab_active = { fg = "#1e1e2e", bg = "#cdd6f4" }
tab_inactive = { fg = "#cdd6f4", bg = "#45475a" }
tab_width = 1
# Count
count_copied = { fg = "#1e1e2e", bg = "#a6e3a1" }
count_cut = { fg = "#1e1e2e", bg = "#f38ba8" }
count_selected = { fg = "#1e1e2e", bg = "#89b4fa" }
# Border
border_symbol = "│"
border_style = { fg = "#7f849c" }
# : }}}
# : Status {{{
[status]
separator_open = ""
separator_close = ""
separator_style = { fg = "#45475a", bg = "#45475a" }
# Mode
mode_normal = { fg = "#1e1e2e", bg = "#89b4fa", bold = true }
mode_select = { fg = "#1e1e2e", bg = "#a6e3a1", bold = true }
mode_unset = { fg = "#1e1e2e", bg = "#f2cdcd", bold = true }
# Progress
progress_label = { fg = "#ffffff", bold = true }
progress_normal = { fg = "#89b4fa", bg = "#45475a" }
progress_error = { fg = "#f38ba8", bg = "#45475a" }
# Permissions
permissions_t = { fg = "#89b4fa" }
permissions_r = { fg = "#f9e2af" }
permissions_w = { fg = "#f38ba8" }
permissions_x = { fg = "#a6e3a1" }
permissions_s = { fg = "#7f849c" }
# : }}}
# : Input {{{
[input]
border = { fg = "#89b4fa" }
title = {}
value = {}
selected = { reversed = true }
# : }}}
# : Select {{{
[select]
border = { fg = "#89b4fa" }
active = { fg = "#f5c2e7" }
inactive = {}
# : }}}
# : Tasks {{{
[tasks]
border = { fg = "#89b4fa" }
title = {}
hovered = { underline = true }
# : }}}
# : Which {{{
[which]
mask = { bg = "#313244" }
cand = { fg = "#94e2d5" }
rest = { fg = "#9399b2" }
desc = { fg = "#f5c2e7" }
separator = "  "
separator_style = { fg = "#585b70" }
# : }}}
# : Help {{{
[help]
on = { fg = "#f5c2e7" }
exec = { fg = "#94e2d5" }
desc = { fg = "#9399b2" }
hovered = { bg = "#585b70", bold = true }
footer = { fg = "#45475a", bg = "#cdd6f4" }
# : }}}
# : File-specific styles {{{
[filetype]
rules = [
# Images
{ mime = "image/*", fg = "#94e2d5" },
# Videos
{ mime = "video/*", fg = "#f9e2af" },
{ mime = "audio/*", fg = "#f9e2af" },
# Archives
{ mime = "application/zip", fg = "#f5c2e7" },
{ mime = "application/gzip", fg = "#f5c2e7" },
{ mime = "application/x-tar", fg = "#f5c2e7" },
{ mime = "application/x-bzip", fg = "#f5c2e7" },
{ mime = "application/x-bzip2", fg = "#f5c2e7" },
{ mime = "application/x-7z-compressed", fg = "#f5c2e7" },
{ mime = "application/x-rar", fg = "#f5c2e7" },
# Fallback
{ name = "*", fg = "#cdd6f4" },
{ name = "*/", fg = "#89b4fa" }
]
# : }}}

View file

@ -1,78 +0,0 @@
[manager]
layout = [1, 4, 3]
sort_by = "modified"
sort_sensitive = true
sort_reverse = true
sort_dir_first = true
show_hidden = false
show_symlink = true
[preview]
tab_size = 2
max_width = 600
max_height = 900
cache_dir = ""
[opener]
folder = [
{ run = 'open -R "$@"', orphan = true, display_name = "Reveal in Finder" },
{ run = '$EDITOR "$@"', orphan = true },
]
archive = [{ run = 'unar "$1"', display_name = "Extract here" }]
text = [{ run = '$EDITOR "$@"', orphan = true }]
image = [
{ run = 'imv "$@"', orphan = true, display_name = "Open" },
{ run = '''exiftool "$1"; echo "Press enter to exit"; read''', block = true, display_name = "Show EXIF" },
]
pdf = [{ run = 'zathura "$@"', orphan = true, display_name = "Open" }]
video = [
{ run = 'mpv "$@"', orphan = true },
{ run = '''mediainfo "$1"; echo "Press enter to exit"; read''', block = true, display_name = "Show media info" },
]
audio = [
{ run = 'xdg-open "$@"', orphan = true },
{ run = '''mediainfo "$1"; echo "Press enter to exit"; read''', block = true, display_name = "Show media info" },
]
fallback = [
{ run = 'xdg-open "$@"', orphan = true, display_name = "Open" },
{ run = 'xdg-open -R "$@"', orphan = true, display_name = "Reveal in Finder" },
]
[open]
rules = [
{ name = "*/", use = "folder" },
{ mime = "text/*", use = "text" },
{ mime = "image/*", use = "image" },
{ mime = "application/pdf", use = "pdf" },
{ mime = "video/*", use = "video" },
{ mime = "audio/*", use = "audio" },
{ mime = "inode/x-empty", use = "text" },
{ mime = "application/json", use = "text" },
{ mime = "*/javascript", use = "text" },
{ mime = "application/zip", use = "archive" },
{ mime = "application/gzip", use = "archive" },
{ mime = "application/x-tar", use = "archive" },
{ mime = "application/x-bzip", use = "archive" },
{ mime = "application/x-bzip2", use = "archive" },
{ mime = "application/x-7z-compressed", use = "archive" },
{ mime = "application/x-rar", use = "archive" },
{ mime = "*", use = "fallback" },
]
[tasks]
micro_workers = 5
macro_workers = 10
bizarre_retry = 5
[log]
enabled = false
[plugin]
prepend_previewers = [
{ name = "*.md", run = "glow" },
{ mime = "text/csv", run = "miller" },
]