big big stuff is coming
This commit is contained in:
parent
6d6f665d06
commit
90f831650f
27 changed files with 481 additions and 219 deletions
2
Makefile
2
Makefile
|
|
@ -34,7 +34,7 @@ debug: copy-config
|
|||
# 🌐 Update all flake inputs to their latest versions.
|
||||
# Usage: make up
|
||||
up:
|
||||
nix flake update /etc/nixos
|
||||
sudo nix flake update --flake /etc/nixos
|
||||
|
||||
# 🔍 Update a specific flake input (e.g., `make upp i=home-manager`)
|
||||
# Usage: make upp i=home-manager
|
||||
|
|
|
|||
125
flake.lock
generated
125
flake.lock
generated
|
|
@ -8,11 +8,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754487366,
|
||||
"narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=",
|
||||
"lastModified": 1765835352,
|
||||
"narHash": "sha256-XswHlK/Qtjasvhd1nOa1e8MgZ8GS//jBoTqWtrS1Giw=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18",
|
||||
"rev": "a34fae9c08a15ad73f295041fec82323541400a9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -21,24 +21,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -46,11 +28,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754950654,
|
||||
"narHash": "sha256-30f9MF+zIKLodQRuSLyY4OSDZSOy5O+/FslgPt/prbc=",
|
||||
"lastModified": 1766949189,
|
||||
"narHash": "sha256-t4lRzHDaAvSNIPcZO4NrjnfeYv+Yvr2BUWkUnoCbuzs=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "d19f3213e51469321835a9188adfa20391ff9371",
|
||||
"rev": "398bc87bc89fc05a3c3731884b16e819c52e2b00",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -59,41 +41,13 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"ixx": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"nixvim",
|
||||
"nuschtosSearch",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nuschtosSearch",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1748294338,
|
||||
"narHash": "sha256-FVO01jdmUNArzBS7NmaktLdGA5qA3lUMJ4B7a05Iynw=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "ixx",
|
||||
"rev": "cc5f390f7caf265461d4aab37e98d2292ebbdb85",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"ref": "v0.0.8",
|
||||
"repo": "ixx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1754882787,
|
||||
"narHash": "sha256-Y2nY1s+ZS3vkVS72SsEa/zJe+j9JuwLbev4grzcHTA8=",
|
||||
"lastModified": 1766902047,
|
||||
"narHash": "sha256-5hlaevYkLMeR2+6WThInVkWl0F35ioE4027kXVsglEE=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "59ca61e5a844a0c35cdc272bc671c5d9b6840741",
|
||||
"rev": "652f1b042e5fa87705fb952aad193cefc18446f5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -105,11 +59,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1754725699,
|
||||
"narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=",
|
||||
"lastModified": 1766651565,
|
||||
"narHash": "sha256-QEhk0eXgyIqTpJ/ehZKg9IKS7EtlWxF3N7DXy42zPfU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054",
|
||||
"rev": "3e2499d5539c16d0d173ba53552a4ff8547f4539",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -125,15 +79,14 @@
|
|||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nuschtosSearch": "nuschtosSearch",
|
||||
"systems": "systems_2"
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754921951,
|
||||
"narHash": "sha256-KY+/livAp6l3fI8SdNa+CLN/AA4Z038yL/pQL2PaW7g=",
|
||||
"lastModified": 1766941632,
|
||||
"narHash": "sha256-QB8XEoY5D2iRYntcKzJ5wlvgpqqQSe0P0h5CvBO/rUk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "7b53322d75a1c66f84fb145e4b5f0f411d9edc6b",
|
||||
"rev": "ff75a5d3cc674391814c4703464ea1a3db204078",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -142,29 +95,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nuschtosSearch": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"ixx": "ixx",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754301638,
|
||||
"narHash": "sha256-aRgzcPDd2axHFOuMlPLuzmDptUM2JU8mUL3jfgbBeyc=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"rev": "a60091045273484c040a91f5c229ba298f8ecc27",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
|
|
@ -176,14 +106,14 @@
|
|||
"spicetify-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"systems": "systems_3"
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754801101,
|
||||
"narHash": "sha256-oxWjZ/SfhCvHFNePZcUu+LcE5j4xxuIt/yaoaSvMZk0=",
|
||||
"lastModified": 1766897356,
|
||||
"narHash": "sha256-oKp9luuuXuMoUwpGUKUdt0G7lZGovcyOEI3guG0rNCw=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"rev": "fcbfc21572518c68317df992929b28df9a1d8468",
|
||||
"rev": "6b49c4094e93629af2fcf789e0897450f57e2551",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -221,21 +151,6 @@
|
|||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
|
|||
|
|
@ -31,8 +31,5 @@
|
|||
home.homeDirectory = "/home/elisiei";
|
||||
home.stateVersion = "25.05";
|
||||
|
||||
# workaround
|
||||
nixpkgs.config.allowUnfreePredicate = _: true;
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
}
|
||||
|
|
|
|||
24
home/modules/ide/nvim/config.lua
Normal file
24
home/modules/ide/nvim/config.lua
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
vim.diagnostic.config({ virtual_lines = true })
|
||||
vim.diagnostic.config({ virtual_text = true })
|
||||
vim.o.undofile = true
|
||||
vim.o.undodir = vim.fn.expand("~/.local/state/nvim/undo")
|
||||
vim.diagnostic.config({ signs = false })
|
||||
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = 'TSUpdate',
|
||||
callback = function()
|
||||
require('nvim-treesitter.parsers').crystal = {
|
||||
install_info = {
|
||||
url = 'https://github.com/crystal-lang-tools/tree-sitter-crystal',
|
||||
-- path = '<ts-crystal-install-path>', -- if you want to use a local version instead
|
||||
generate = false,
|
||||
generate_from_json = false,
|
||||
queries = 'queries/nvim'
|
||||
},
|
||||
}
|
||||
end,
|
||||
})
|
||||
|
||||
vim.treesitter.language.register("crystal", { "cr" })
|
||||
|
||||
print("loaded extra config.lua file ;)")
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
./lsp/roslyn.nix
|
||||
|
||||
# keymaps
|
||||
./keymaps.nix
|
||||
# ./keymaps.nix
|
||||
|
||||
# themes
|
||||
./themes.nix
|
||||
|
|
@ -72,12 +72,6 @@
|
|||
shellcheck
|
||||
];
|
||||
|
||||
extraConfigLua = ''
|
||||
vim.diagnostic.config({ virtual_lines = true })
|
||||
vim.diagnostic.config({ virtual_text = true })
|
||||
vim.o.undofile = true
|
||||
vim.o.undodir = vim.fn.expand("~/.local/state/nvim/undo")
|
||||
vim.diagnostic.config({ signs = false })
|
||||
'';
|
||||
extraConfigLua = builtins.readFile ./config.lua;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>qq";
|
||||
mode = [ "n" ];
|
||||
action = "<cmd>qa<CR>";
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
plugins = {
|
||||
ts-autotag.enable = false;
|
||||
ts-comments.enable = false;
|
||||
ts-autotag.enable = true;
|
||||
ts-comments.enable = true;
|
||||
lsp.servers = {
|
||||
html.enable = true;
|
||||
cssls.enable = true;
|
||||
svelte.enable = false;
|
||||
ts_ls.enable = false;
|
||||
ts_ls.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
lsp.servers.roslyn_ls = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
config = {
|
||||
cmd = [
|
||||
"${lib.getExe' pkgs.roslyn-ls "Microsoft.CodeAnalysis.LanguageServer"}"
|
||||
"--logLevel"
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
"alpha"
|
||||
];
|
||||
};
|
||||
theme = "kanagawa";
|
||||
theme = "tokyonight";
|
||||
};
|
||||
sections = {
|
||||
lualine_a = [
|
||||
|
|
|
|||
|
|
@ -2,18 +2,19 @@
|
|||
plugins.neo-tree = {
|
||||
enable = true;
|
||||
|
||||
sources = [
|
||||
"filesystem"
|
||||
"buffers"
|
||||
"git_status"
|
||||
];
|
||||
enableDiagnostics = true;
|
||||
enableGitStatus = true;
|
||||
enableModifiedMarkers = true;
|
||||
enableRefreshOnWrite = true;
|
||||
openFilesInLastWindow = true;
|
||||
settings = {
|
||||
sources = [
|
||||
"filesystem"
|
||||
"buffers"
|
||||
"git_status"
|
||||
];
|
||||
|
||||
enable_diagnostics = true;
|
||||
enable_git_status = true;
|
||||
enable_modified_markers = true;
|
||||
enable_refresh_on_write = true;
|
||||
open_files_in_last_window = true;
|
||||
|
||||
extraOptions = {
|
||||
open_files_do_not_replace_types = [
|
||||
"terminal"
|
||||
"Trouble"
|
||||
|
|
@ -63,14 +64,21 @@
|
|||
expander_expanded = "";
|
||||
expander_highlight = "NeoTreeExpander";
|
||||
};
|
||||
|
||||
git_status.symbols = {
|
||||
unstaged = "";
|
||||
staged = "";
|
||||
unstaged = "";
|
||||
staged = "";
|
||||
};
|
||||
|
||||
icon = {
|
||||
folder_closed = "";
|
||||
folder_open = "";
|
||||
folder_empty = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
eventHandlers = {
|
||||
event_handlers = {
|
||||
file_moved = ''
|
||||
function(data)
|
||||
require("snacks.rename").on_rename_file(data.source, data.destination)
|
||||
|
|
@ -89,7 +97,10 @@
|
|||
key = "<leader>fe";
|
||||
mode = [ "n" ];
|
||||
action = ''
|
||||
<cmd>lua require("neo-tree.command").execute({ toggle = true, dir = vim.fn.getcwd() })<CR>
|
||||
<cmd>lua require("neo-tree.command").execute({
|
||||
toggle = true,
|
||||
dir = vim.fn.getcwd()
|
||||
})<CR>
|
||||
'';
|
||||
options.desc = "Explorer NeoTree (cwd)";
|
||||
}
|
||||
|
|
@ -104,7 +115,10 @@
|
|||
key = "<leader>ge";
|
||||
mode = [ "n" ];
|
||||
action = ''
|
||||
<cmd>lua require("neo-tree.command").execute({ source = "git_status", toggle = true })<CR>
|
||||
<cmd>lua require("neo-tree.command").execute({
|
||||
source = "git_status",
|
||||
toggle = true
|
||||
})<CR>
|
||||
'';
|
||||
options.desc = "Git Explorer";
|
||||
}
|
||||
|
|
@ -112,9 +126,18 @@
|
|||
key = "<leader>be";
|
||||
mode = [ "n" ];
|
||||
action = ''
|
||||
<cmd>lua require("neo-tree.command").execute({ source = "buffers", toggle = true })<CR>
|
||||
<cmd>lua require("neo-tree.command").execute({
|
||||
source = "buffers",
|
||||
toggle = true
|
||||
})<CR>
|
||||
'';
|
||||
options.desc = "Buffer Explorer";
|
||||
}
|
||||
{
|
||||
key = "C-h";
|
||||
mode = [ "n" ];
|
||||
action = "<cmd>Neotree source=filesystem focus<CR>";
|
||||
options.desc = "switch focus";
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
plugins.toggleterm = {
|
||||
enable = true;
|
||||
settings = {
|
||||
direction = "vertical";
|
||||
direction = "float";
|
||||
float_opts = {
|
||||
border = "curved";
|
||||
height = 30;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
auto_scroll = true;
|
||||
close_on_exit = true;
|
||||
insert_mappings = true;
|
||||
shell = "nu";
|
||||
shell = "fish";
|
||||
};
|
||||
};
|
||||
keymaps = [
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
treesitter-textobjects = {
|
||||
enable = true;
|
||||
select = {
|
||||
settings.select = {
|
||||
enable = true;
|
||||
lookahead = true;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -14,11 +14,17 @@
|
|||
};
|
||||
};
|
||||
|
||||
# kanagawa
|
||||
kanagawa = {
|
||||
enable = true;
|
||||
enable = false;
|
||||
settings = {
|
||||
transparent = true;
|
||||
};
|
||||
};
|
||||
|
||||
# oxocarbon
|
||||
oxocarbon = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
159
home/modules/shell/fish/aliases/git.fish
Normal file
159
home/modules/shell/fish/aliases/git.fish
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
# migrating from https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/git/git.plugin.zsh
|
||||
|
||||
# Aliases
|
||||
alias g='git'
|
||||
#compdef g=git
|
||||
alias gst='git status'
|
||||
#compdef _git gst=git-status
|
||||
alias gd='git diff'
|
||||
#compdef _git gd=git-diff
|
||||
alias gdc='git diff --cached'
|
||||
#compdef _git gdc=git-diff
|
||||
alias gl='git pull'
|
||||
#compdef _git gl=git-pull
|
||||
alias gup='git pull --rebase'
|
||||
#compdef _git gup=git-fetch
|
||||
alias gp='git push'
|
||||
#compdef _git gp=git-push
|
||||
alias gd='git diff'
|
||||
|
||||
function gdv
|
||||
git diff -w $argv | view -
|
||||
end
|
||||
|
||||
#compdef _git gdv=git-diff
|
||||
alias gc='git commit -v'
|
||||
#compdef _git gc=git-commit
|
||||
alias gc!='git commit -v --amend'
|
||||
#compdef _git gc!=git-commit
|
||||
alias gca='git commit -v -a'
|
||||
#compdef _git gc=git-commit
|
||||
alias gca!='git commit -v -a --amend'
|
||||
#compdef _git gca!=git-commit
|
||||
alias gcmsg='git commit -m'
|
||||
#compdef _git gcmsg=git-commit
|
||||
alias gco='git checkout'
|
||||
#compdef _git gco=git-checkout
|
||||
alias gcm='git checkout master'
|
||||
alias gr='git remote'
|
||||
#compdef _git gr=git-remote
|
||||
alias grv='git remote -v'
|
||||
#compdef _git grv=git-remote
|
||||
alias grmv='git remote rename'
|
||||
#compdef _git grmv=git-remote
|
||||
alias grrm='git remote remove'
|
||||
#compdef _git grrm=git-remote
|
||||
alias grset='git remote set-url'
|
||||
#compdef _git grset=git-remote
|
||||
alias grup='git remote update'
|
||||
#compdef _git grset=git-remote
|
||||
alias grbi='git rebase -i'
|
||||
#compdef _git grbi=git-rebase
|
||||
alias grbc='git rebase --continue'
|
||||
#compdef _git grbc=git-rebase
|
||||
alias grba='git rebase --abort'
|
||||
#compdef _git grba=git-rebase
|
||||
alias gb='git branch'
|
||||
#compdef _git gb=git-branch
|
||||
alias gba='git branch -a'
|
||||
#compdef _git gba=git-branch
|
||||
alias gcount='git shortlog -sn'
|
||||
#compdef gcount=git
|
||||
alias gcl='git config --list'
|
||||
alias gcp='git cherry-pick'
|
||||
#compdef _git gcp=git-cherry-pick
|
||||
alias glg='git log --stat --max-count=10'
|
||||
#compdef _git glg=git-log
|
||||
alias glgg='git log --graph --max-count=10'
|
||||
#compdef _git glgg=git-log
|
||||
alias glgga='git log --graph --decorate --all'
|
||||
#compdef _git glgga=git-log
|
||||
alias glo='git log --oneline'
|
||||
#compdef _git glo=git-log
|
||||
alias gss='git status -s'
|
||||
#compdef _git gss=git-status
|
||||
alias ga='git add'
|
||||
#compdef _git ga=git-add
|
||||
alias gm='git merge'
|
||||
#compdef _git gm=git-merge
|
||||
alias grh='git reset HEAD'
|
||||
alias grhh='git reset HEAD --hard'
|
||||
alias gclean='git reset --hard; and git clean -dfx'
|
||||
alias gwc='git whatchanged -p --abbrev-commit --pretty=medium'
|
||||
|
||||
#remove the gf alias
|
||||
#alias gf='git ls-files | grep'
|
||||
|
||||
alias gpoat='git push origin --all; and git push origin --tags'
|
||||
alias gmt='git mergetool --no-prompt'
|
||||
#compdef _git gm=git-mergetool
|
||||
|
||||
alias gg='git gui citool'
|
||||
alias gga='git gui citool --amend'
|
||||
alias gk='gitk --all --branches'
|
||||
|
||||
alias gsts='git stash show --text'
|
||||
alias gsta='git stash'
|
||||
alias gstp='git stash pop'
|
||||
alias gstd='git stash drop'
|
||||
|
||||
# Will cd into the top of the current repository
|
||||
# or submodule.
|
||||
alias grt='cd (git rev-parse --show-toplevel; or echo ".")'
|
||||
|
||||
# Git and svn mix
|
||||
alias git-svn-dcommit-push='git svn dcommit; and git push github master:svntrunk'
|
||||
#compdef git-svn-dcommit-push=git
|
||||
|
||||
alias gsr='git svn rebase'
|
||||
alias gsd='git svn dcommit'
|
||||
#
|
||||
# Will return the current branch name
|
||||
# Usage example: git pull origin $(current_branch)
|
||||
#
|
||||
function current_branch
|
||||
set ref (git symbolic-ref HEAD 2> /dev/null); or \
|
||||
set ref (git rev-parse --short HEAD 2> /dev/null); or return
|
||||
echo ref | sed s-refs/heads--
|
||||
end
|
||||
|
||||
function current_repository
|
||||
set ref (git symbolic-ref HEAD 2> /dev/null); or \
|
||||
set ref (git rev-parse --short HEAD 2> /dev/null); or return
|
||||
echo (git remote -v | cut -d':' -f 2)
|
||||
end
|
||||
|
||||
# these aliases take advantage of the previous function
|
||||
alias ggpull='git pull origin (current_branch)'
|
||||
#compdef ggpull=git
|
||||
alias ggpur='git pull --rebase origin (current_branch)'
|
||||
#compdef ggpur=git
|
||||
alias ggpush='git push origin (current_branch)'
|
||||
#compdef ggpush=git
|
||||
alias ggpnp='git pull origin (current_branch); and git push origin (current_branch)'
|
||||
#compdef ggpnp=git
|
||||
|
||||
# Pretty log messages
|
||||
function _git_log_prettily
|
||||
if ! [ -z $1 ]; then
|
||||
git log --pretty=$1
|
||||
end
|
||||
end
|
||||
|
||||
alias glp="_git_log_prettily"
|
||||
#compdef _git glp=git-log
|
||||
|
||||
# Work In Progress (wip)
|
||||
# These features allow to pause a branch development and switch to another one (wip)
|
||||
# When you want to go back to work, just unwip it
|
||||
#
|
||||
# This function return a warning if the current branch is a wip
|
||||
function work_in_progress
|
||||
if git log -n 1 | grep -q -c wip; then
|
||||
echo "WIP!!"
|
||||
end
|
||||
end
|
||||
|
||||
# these alias commit and uncomit wip branches
|
||||
alias gwip='git add -A; git ls-files --deleted -z | xargs -0 git rm; git commit -m "wip"'
|
||||
alias gunwip='git log -n 1 | grep -q -c wip; and git reset HEAD~1'
|
||||
|
|
@ -5,4 +5,9 @@ fish_config prompt choose informative_vcs
|
|||
direnv hook fish | source
|
||||
|
||||
# set theme
|
||||
source ~/.config/fish/themes/kanagawa.fish
|
||||
source ~/.config/fish/themes/bw.fish
|
||||
|
||||
# set aliases
|
||||
source ~/.config/fish/aliases/git.fish
|
||||
|
||||
~/bin/gotcha
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.file.".config/fish/themes".source = ./themes;
|
||||
home.file.".config/fish/aliases".source = ./aliases;
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
package = pkgs.fishMinimal;
|
||||
|
|
|
|||
32
home/modules/shell/fish/themes/bw.fish
Normal file
32
home/modules/shell/fish/themes/bw.fish
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
#!/usr/bin/fish
|
||||
|
||||
set -l fg ffffff # primary foreground
|
||||
set -l fg_dim bbbbbb # dim text
|
||||
set -l fg_faint 888888 # comments / autosuggestions
|
||||
set -l fg_dark 666666 # secondary elements
|
||||
set -l bg_sel 333333 # selection background
|
||||
set -l bg_match 2a2a2a # search match background
|
||||
set -l error ffffff # errors
|
||||
|
||||
set -g fish_color_normal $fg
|
||||
set -g fish_color_command $fg --bold
|
||||
set -g fish_color_keyword $fg --bold
|
||||
set -g fish_color_quote $fg_dim
|
||||
set -g fish_color_redirection $fg
|
||||
set -g fish_color_end $fg
|
||||
set -g fish_color_option $fg_dim
|
||||
set -g fish_color_error $error --reverse
|
||||
set -g fish_color_param $fg
|
||||
set -g fish_color_comment $fg_faint
|
||||
set -g fish_color_selection --background=$bg_sel
|
||||
set -g fish_color_search_match --background=$bg_match
|
||||
set -g fish_color_operator $fg
|
||||
set -g fish_color_escape $fg_dim
|
||||
set -g fish_color_autosuggestion $fg_faint
|
||||
|
||||
set -g fish_pager_color_progress $fg_faint
|
||||
set -g fish_pager_color_prefix $fg --bold
|
||||
set -g fish_pager_color_completion $fg
|
||||
set -g fish_pager_color_description $fg_faint
|
||||
set -g fish_pager_color_selected_background --background=$bg_sel
|
||||
|
||||
37
home/modules/shell/fish/themes/tokyonight_night.fish
Normal file
37
home/modules/shell/fish/themes/tokyonight_night.fish
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
#!/usr/bin/fish
|
||||
|
||||
# tokyonight color palette
|
||||
set -l foreground c0caf5
|
||||
set -l selection 283457
|
||||
set -l comment 565f89
|
||||
set -l red f7768e
|
||||
set -l orange ff9e64
|
||||
set -l yellow e0af68
|
||||
set -l green 9ece6a
|
||||
set -l purple 9d7cd8
|
||||
set -l cyan 7dcfff
|
||||
set -l pink bb9af7
|
||||
|
||||
# syntax highlighting colors
|
||||
set -g fish_color_normal $foreground
|
||||
set -g fish_color_command $cyan
|
||||
set -g fish_color_keyword $pink
|
||||
set -g fish_color_quote $yellow
|
||||
set -g fish_color_redirection $foreground
|
||||
set -g fish_color_end $orange
|
||||
set -g fish_color_option $pink
|
||||
set -g fish_color_error $red
|
||||
set -g fish_color_param $purple
|
||||
set -g fish_color_comment $comment
|
||||
set -g fish_color_selection --background=$selection
|
||||
set -g fish_color_search_match --background=$selection
|
||||
set -g fish_color_operator $green
|
||||
set -g fish_color_escape $pink
|
||||
set -g fish_color_autosuggestion $comment
|
||||
|
||||
# completion pager colors
|
||||
set -g fish_pager_color_progress $comment
|
||||
set -g fish_pager_color_prefix $cyan
|
||||
set -g fish_pager_color_completion $foreground
|
||||
set -g fish_pager_color_description $comment
|
||||
set -g fish_pager_color_selected_background --background=$selection
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
shell = "fish";
|
||||
pad = "0x0center";
|
||||
font = "Maple Mono NF:size=12";
|
||||
include = "${config.xdg.configHome}/foot/themes/kanagawa.ini";
|
||||
include = "${config.xdg.configHome}/foot/themes/bw.ini";
|
||||
};
|
||||
scrollback = {
|
||||
lines = 100000;
|
||||
|
|
|
|||
24
home/modules/terminal/foot/themes/bw.ini
Normal file
24
home/modules/terminal/foot/themes/bw.ini
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
[colors]
|
||||
# alpha=1.0
|
||||
background=000000
|
||||
foreground=ffffff
|
||||
|
||||
## Normal/regular colors (color palette 0-7)
|
||||
regular0=000000 # black
|
||||
regular1=5a5a5a # dark gray
|
||||
regular2=6a6a6a # dark gray
|
||||
regular3=7a7a7a # gray
|
||||
regular4=8a8a8a # gray
|
||||
regular5=9a9a9a # light gray
|
||||
regular6=aaaaaa # light gray
|
||||
regular7=ffffff # white
|
||||
|
||||
## Bright colors (color palette 8-15)
|
||||
bright0=3a3a3a # bright black
|
||||
bright1=6a6a6a # bright gray
|
||||
bright2=7a7a7a
|
||||
bright3=8a8a8a
|
||||
bright4=9a9a9a
|
||||
bright5=bababa
|
||||
bright6=dadada
|
||||
bright7=ffffff # bright white
|
||||
44
home/modules/terminal/foot/themes/oxocarbon.ini
Normal file
44
home/modules/terminal/foot/themes/oxocarbon.ini
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
# oxocarbon-foot
|
||||
# oxocarbon foot template by Boyd Kelly
|
||||
# include in foot.ini like so:
|
||||
# include=~/.config/foot/colours.ini
|
||||
# must be included under [main], or untitled section at beginning of file
|
||||
|
||||
#dark reference
|
||||
#base00: "#161616"
|
||||
#base01: "#262626"
|
||||
#base02: "#393939"
|
||||
#base03: "#525252"
|
||||
#base04: "#dde1e6"
|
||||
#base05: "#f2f4f8"
|
||||
#base06: "#ffffff"
|
||||
#base07: "#08bdba"
|
||||
#base08: "#3ddbd9"
|
||||
#base09: "#78a9ff"
|
||||
#base0A: "#ee5396"
|
||||
#base0B: "#33b1ff"
|
||||
#base0C: "#ff7eb6"
|
||||
#base0D: "#42be65"
|
||||
#base0E: "#be95ff"
|
||||
#base0F: "#82cfff"
|
||||
|
||||
[colors]
|
||||
foreground=ffffff #base06 white
|
||||
background=161616 #base01 black
|
||||
|
||||
regular0=262626 # black
|
||||
regular1=ff7eb6 # magenta
|
||||
regular2=42be65 # green
|
||||
regular3=ffe97b # yellow
|
||||
regular4=33b1ff # blue
|
||||
regular5=ee5396 # red
|
||||
regular6=3ddbd9 # cyan
|
||||
regular7=dde1e6 # white
|
||||
bright0=393939 # black
|
||||
bright1=ff7eb6 # magenta
|
||||
bright2=42be65 # green
|
||||
bright3=ffe97b # yellow
|
||||
bright4=33b1ff # blue
|
||||
bright5=ee5396 # red
|
||||
bright6=3ddbd9 # cyan
|
||||
bright7=ffffff # white
|
||||
|
|
@ -1,7 +1,10 @@
|
|||
[colors]
|
||||
foreground=c0caf5
|
||||
background=1a1b26
|
||||
selection-foreground=c0caf5
|
||||
selection-background=283457
|
||||
urls=73daca
|
||||
cursor=c0caf5 283457
|
||||
|
||||
regular0=15161e
|
||||
regular1=f7768e
|
||||
|
|
@ -23,3 +26,5 @@ bright7=c0caf5
|
|||
|
||||
16=ff9e64
|
||||
17=db4b4b
|
||||
|
||||
# night variant.
|
||||
|
|
|
|||
|
|
@ -2,18 +2,23 @@
|
|||
programs.git = {
|
||||
enable = true;
|
||||
|
||||
userName = "Elisiei Yehorov";
|
||||
userEmail = "yehorovye@disroot.org";
|
||||
|
||||
signing = {
|
||||
key = "BA1D158DCE3DF089";
|
||||
signByDefault = true;
|
||||
};
|
||||
|
||||
extraConfig = {
|
||||
settings = {
|
||||
user = {
|
||||
name = "Elisiei Yehorov";
|
||||
email = "yehorovye@disroot.org";
|
||||
};
|
||||
|
||||
tag.gpgSign = true;
|
||||
credential.helper = "store";
|
||||
push.default = "current";
|
||||
init.defaultBranch = "main";
|
||||
pull.rebase = true;
|
||||
fetch.prune = true;
|
||||
|
||||
# @elisiei
|
||||
url."git@github.com-elisiei:".insteadOf = "https://github.com/elisiei/";
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
programs.tofi = {
|
||||
enable = true;
|
||||
settings = {
|
||||
background-color = "#000000";
|
||||
background-color = "#000000cc";
|
||||
border-width = 0;
|
||||
font = "monospace";
|
||||
height = "100%";
|
||||
|
|
|
|||
|
|
@ -4,16 +4,17 @@
|
|||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
wallpaperScript = pkgs.writeShellScriptBin "random-wallpaper" ''
|
||||
WALP=$(find "$HOME/wallpapers" -type f \( -iname "*.jpg" -o -iname "*.png" \) | shuf -n 1)
|
||||
[ -n "$WALP" ] && ${pkgs.swaybg}/bin/swaybg -i "$WALP" --mode fill &
|
||||
pkill -x wbg 2>/dev/null || true
|
||||
|
||||
walp=$(find "$HOME/wallpapers" -type f \( -iname "*.jpg" -o -iname "*.png" \) | shuf -n 1)
|
||||
[ -n "$walp" ] && ${pkgs.wbg}/bin/wbg "$walp" &
|
||||
'';
|
||||
in
|
||||
{
|
||||
home.packages = [
|
||||
wallpaperScript
|
||||
];
|
||||
home.packages = [ wallpaperScript ];
|
||||
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
|
|
@ -24,46 +25,36 @@ in
|
|||
terminal = "foot";
|
||||
menu = "exec $(tofi-drun)";
|
||||
|
||||
# monitor configuration
|
||||
output = {
|
||||
"*" = {
|
||||
resolution = "1920x1080";
|
||||
scale = "1";
|
||||
};
|
||||
# outputs
|
||||
output."*" = {
|
||||
resolution = "1920x1080";
|
||||
scale = "1";
|
||||
};
|
||||
|
||||
# startup commands
|
||||
# startup
|
||||
startup = [
|
||||
{ command = "${wallpaperScript}/bin/random-wallpaper"; }
|
||||
];
|
||||
|
||||
# input configuration
|
||||
input = {
|
||||
"type:keyboard" = {
|
||||
xkb_layout = "es,ru";
|
||||
xkb_options = "grp:alt_space_toggle";
|
||||
xkb_numlock = "enabled";
|
||||
};
|
||||
# input
|
||||
input."type:keyboard" = {
|
||||
xkb_layout = "es,ru";
|
||||
xkb_options = "grp:alt_space_toggle";
|
||||
xkb_numlock = "enabled";
|
||||
};
|
||||
|
||||
# window appearance
|
||||
# gaps
|
||||
gaps = {
|
||||
inner = 0;
|
||||
outer = 0;
|
||||
inner = 3;
|
||||
outer = 3;
|
||||
};
|
||||
|
||||
window = {
|
||||
border = 0;
|
||||
};
|
||||
# borders
|
||||
window.border = 1;
|
||||
floating.border = 1;
|
||||
|
||||
floating = {
|
||||
border = 0;
|
||||
};
|
||||
|
||||
# focus settings
|
||||
focus = {
|
||||
followMouse = true;
|
||||
};
|
||||
# focus
|
||||
focus.followMouse = true;
|
||||
|
||||
# keybindings
|
||||
keybindings = lib.mkOptionDefault {
|
||||
|
|
@ -71,25 +62,25 @@ in
|
|||
"${modifier}+Shift+Print" = "exec ~/bin/grimblast copy screen";
|
||||
"${modifier}+Print" = "exec ~/bin/grimblast copy area";
|
||||
|
||||
# application launchers
|
||||
# launchers
|
||||
"${modifier}+space" = "exec ${menu}";
|
||||
"${modifier}+w" = "exec ${wallpaperScript}/bin/random-wallpaper";
|
||||
"${modifier}+s" = "sticky toggle";
|
||||
"${modifier}+t" = "exec ${terminal}";
|
||||
"${modifier}+z" = "exec librewolf";
|
||||
|
||||
# Window management
|
||||
# window
|
||||
"${modifier}+q" = "kill";
|
||||
"${modifier}+Shift+m" = "exit";
|
||||
"${modifier}+v" = "floating toggle";
|
||||
"${modifier}+s" = "sticky toggle";
|
||||
"${modifier}+Shift+m" = "exit";
|
||||
|
||||
# focus movement
|
||||
# focus move
|
||||
"${modifier}+Left" = "focus left";
|
||||
"${modifier}+Right" = "focus right";
|
||||
"${modifier}+Up" = "focus up";
|
||||
"${modifier}+Down" = "focus down";
|
||||
|
||||
# workspace switching
|
||||
# workspaces
|
||||
"${modifier}+1" = "workspace number 1";
|
||||
"${modifier}+2" = "workspace number 2";
|
||||
"${modifier}+3" = "workspace number 3";
|
||||
|
|
@ -114,35 +105,44 @@ in
|
|||
"${modifier}+Shift+0" = "move container to workspace number 10";
|
||||
};
|
||||
|
||||
# mouse bindings for moving/resizing windows
|
||||
modes = {
|
||||
resize = {
|
||||
Left = "resize shrink width 10 px";
|
||||
Right = "resize grow width 10 px";
|
||||
Up = "resize shrink height 10 px";
|
||||
Down = "resize grow height 10 px";
|
||||
Escape = "mode default";
|
||||
Return = "mode default";
|
||||
};
|
||||
# resize mode
|
||||
modes.resize = {
|
||||
Left = "resize shrink width 10 px";
|
||||
Right = "resize grow width 10 px";
|
||||
Up = "resize shrink height 10 px";
|
||||
Down = "resize grow height 10 px";
|
||||
Escape = "mode default";
|
||||
Return = "mode default";
|
||||
};
|
||||
|
||||
bars = [ ];
|
||||
};
|
||||
|
||||
extraConfig = ''
|
||||
# window borders
|
||||
default_border pixel 0
|
||||
default_floating_border pixel 0
|
||||
set $opacity 0.97
|
||||
for_window [class=".*"] opacity $opacity
|
||||
for_window [app_id=".*"] opacity $opacity
|
||||
|
||||
# mouse bindings
|
||||
floating_modifier ${config.wayland.windowManager.sway.config.modifier} normal
|
||||
# borders
|
||||
default_border pixel 1
|
||||
default_floating_border pixel 1
|
||||
|
||||
# cursor theme
|
||||
seat seat0 xcursor_theme macOS 24
|
||||
# colors
|
||||
client.focused #3a3a3a #000000 #ffffff #3a3a3a #3a3a3a
|
||||
client.focused_inactive #2a2a2a #000000 #bbbbbb #2a2a2a #2a2a2a
|
||||
client.unfocused #1e1e1e #000000 #888888 #1e1e1e #1e1e1e
|
||||
client.urgent #5a5a5a #000000 #ffffff #5a5a5a #5a5a5a
|
||||
client.placeholder #1e1e1e #000000 #888888 #1e1e1e #1e1e1e
|
||||
|
||||
# mouse
|
||||
floating_modifier ${config.wayland.windowManager.sway.config.modifier} normal
|
||||
|
||||
# cursor
|
||||
seat seat0 xcursor_theme macOS 24
|
||||
'';
|
||||
};
|
||||
|
||||
# environment variables
|
||||
# env
|
||||
home.sessionVariables = {
|
||||
XCURSOR_THEME = "macOS";
|
||||
XCURSOR_SIZE = "24";
|
||||
|
|
|
|||
|
|
@ -9,6 +9,5 @@
|
|||
zig
|
||||
kdePackages.dolphin
|
||||
gnome.gvfs
|
||||
discord
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{ pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
|
||||
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system};
|
||||
in
|
||||
{
|
||||
environment.sessionVariables = {
|
||||
|
|
@ -19,6 +19,7 @@ in
|
|||
environment.systemPackages = with pkgs; [
|
||||
# essential
|
||||
curl
|
||||
pavucontrol
|
||||
|
||||
# useful
|
||||
wl-clipboard
|
||||
|
|
@ -40,7 +41,7 @@ in
|
|||
librewolf
|
||||
|
||||
# wayland
|
||||
swaybg
|
||||
wbg
|
||||
apple-cursor
|
||||
];
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue