feat: add some ZSH config
This commit is contained in:
@@ -1,8 +0,0 @@
|
|||||||
# TODOs
|
|
||||||
- [ ] Remove `decman` because it's a pain and use smaller scope `archmgr` (only copy all files to locations always and package diff)
|
|
||||||
- [ ] Generate matugen stuff from colour in new script
|
|
||||||
- [X] Finish decman config
|
|
||||||
- [ ] Yazi theming
|
|
||||||
- [X] Kitty theming
|
|
||||||
- [ ] Fish theming
|
|
||||||
- [ ] Fastfetch theming
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
grub_theme = {
|
|
||||||
"desktop": "/usr/share/grub/themes/monterey-grub-theme/theme.txt",
|
|
||||||
"laptop": "/usr/share/grub/themes/monterey-grub-theme/theme.txt",
|
|
||||||
}
|
|
||||||
grub_os_prober = {"desktop": True, "laptop": False}
|
|
||||||
kernel_args_all = {"desktop": "", "laptop": ""}
|
|
||||||
kernel_args_debug_only = {"desktop": "", "laptop": ""}
|
|
||||||
kernel_args_normal_only = {"desktop": "", "laptop": ""}
|
|
||||||
|
|
||||||
user = "janis"
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
[general]
|
[general]
|
||||||
import = [
|
import = [
|
||||||
"~/.config/alacritty/dank-theme.toml"
|
"~/.config/alacritty/theme.toml"
|
||||||
]
|
]
|
||||||
|
|
||||||
[font]
|
[font]
|
||||||
|
|||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors.primary]
|
|
||||||
background = '#0e1513'
|
|
||||||
foreground = '#dde4e1'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
text = '#dde4e1'
|
|
||||||
background = '#005049'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
text = '#0e1513'
|
|
||||||
cursor = '#82d5c9'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#0e1513'
|
|
||||||
red = '#f49c6e'
|
|
||||||
green = '#6ad571'
|
|
||||||
yellow = '#fff372'
|
|
||||||
blue = '#6bcabc'
|
|
||||||
magenta = '#1c6258'
|
|
||||||
cyan = '#82d5c9'
|
|
||||||
white = '#d2dfdd'
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#808a88'
|
|
||||||
red = '#ffc09f'
|
|
||||||
green = '#a5ffab'
|
|
||||||
yellow = '#fff7a5'
|
|
||||||
blue = '#9ceadf'
|
|
||||||
magenta = '#b9fff4'
|
|
||||||
cyan = '#d2fff8'
|
|
||||||
white = '#f8fffe'
|
|
||||||
@@ -30,6 +30,10 @@ output_path = '~/.local/share/color-schemes/Matugen.colors'
|
|||||||
input_path = '~/.config/matugen/templates/kitty/colors.conf'
|
input_path = '~/.config/matugen/templates/kitty/colors.conf'
|
||||||
output_path = '~/.config/kitty/colors.conf'
|
output_path = '~/.config/kitty/colors.conf'
|
||||||
|
|
||||||
|
[templates.alacritty]
|
||||||
|
input_path = '~/.config/matugen/templates/alacritty/theme.toml'
|
||||||
|
output_path = '~/.config/alacritty/colors.toml'
|
||||||
|
|
||||||
|
|
||||||
# My own
|
# My own
|
||||||
[templates.hyprland]
|
[templates.hyprland]
|
||||||
|
|||||||
@@ -0,0 +1,68 @@
|
|||||||
|
[colors.primary]
|
||||||
|
background = '{{colors.background.default.hex}}'
|
||||||
|
foreground = '{{colors.on_surface.default.hex}}'
|
||||||
|
|
||||||
|
[colors.cursor]
|
||||||
|
text = '{{colors.on_surface.default.hex}}'
|
||||||
|
cursor = '{{colors.on_surface_variant.default.hex}}'
|
||||||
|
|
||||||
|
[colors.vi_mode_cursor]
|
||||||
|
text = '{{colors.background.default.hex}}'
|
||||||
|
cursor = '{{colors.primary.default.hex}}'
|
||||||
|
|
||||||
|
[colors.search.matches]
|
||||||
|
foreground = '{{colors.surface_variant.default.hex}}'
|
||||||
|
background = '{{colors.tertiary.default.hex}}'
|
||||||
|
|
||||||
|
[colors.search.focused_match]
|
||||||
|
foreground = '{{colors.surface_variant.default.hex}}'
|
||||||
|
background = '{{colors.primary.default.hex}}'
|
||||||
|
|
||||||
|
[colors.footer_bar]
|
||||||
|
foreground = '{{colors.surface_variant.default.hex}}'
|
||||||
|
background = '{{colors.inverse_surface.default.hex}}'
|
||||||
|
|
||||||
|
[colors.hints.start]
|
||||||
|
foreground = '{{colors.surface_variant.default.hex}}'
|
||||||
|
background = '{{colors.secondary.default.hex}}'
|
||||||
|
|
||||||
|
[colors.hints.end]
|
||||||
|
foreground = '{{colors.surface_variant.default.hex}}'
|
||||||
|
background = '{{colors.secondary.default.hex}}'
|
||||||
|
|
||||||
|
[colors.selection]
|
||||||
|
text = '{{colors.background.default.hex}}'
|
||||||
|
background = '{{colors.primary.default.hex}}'
|
||||||
|
|
||||||
|
|
||||||
|
[colors.normal]
|
||||||
|
black = '#181818'
|
||||||
|
red = '{{colors.error.default.hex}}'
|
||||||
|
green = '{{colors.primary.default.hex}}'
|
||||||
|
yellow = '{{colors.inverse_primary.default.hex}}'
|
||||||
|
blue = '{{colors.primary.default.hex}}'
|
||||||
|
magenta = '{{colors.tertiary.default.hex}}'
|
||||||
|
cyan = '{{colors.secondary.default.hex}}'
|
||||||
|
white = '#BAC2DE'
|
||||||
|
|
||||||
|
|
||||||
|
[colors.bright]
|
||||||
|
black = '#585B70'
|
||||||
|
red = '#F38BA8'
|
||||||
|
green = '#A6E3A1'
|
||||||
|
yellow = '#F9E2AF'
|
||||||
|
blue = '#89B4FA'
|
||||||
|
magenta = '#F5C2E7'
|
||||||
|
cyan = '#94E2D5'
|
||||||
|
white = '#A6ADC8'
|
||||||
|
|
||||||
|
|
||||||
|
[colors.dim]
|
||||||
|
black = '#45475A'
|
||||||
|
red = '#F38BA8'
|
||||||
|
green = '#A6E3A1'
|
||||||
|
yellow = '#F9E2AF'
|
||||||
|
blue = '#89B4FA'
|
||||||
|
magenta = '#F5C2E7'
|
||||||
|
cyan = '#94E2D5'
|
||||||
|
white = '#BAC2DE'
|
||||||
@@ -109,11 +109,13 @@
|
|||||||
"cpu": {
|
"cpu": {
|
||||||
"tooltip-format": "<big>CPU</big>\n<tt>Total: {usage}</tt>",
|
"tooltip-format": "<big>CPU</big>\n<tt>Total: {usage}</tt>",
|
||||||
"format": "\uf4bc {usage}",
|
"format": "\uf4bc {usage}",
|
||||||
"interval": 5
|
"interval": 5,
|
||||||
|
"on-click": "alacritty -e dgop -T dgop"
|
||||||
},
|
},
|
||||||
"memory": {
|
"memory": {
|
||||||
"format": "\uefc5 {percentage}",
|
"format": "\uefc5 {percentage}",
|
||||||
"interval": 5
|
"interval": 5,
|
||||||
|
"on-click": "alacritty -e dgop -T dgop"
|
||||||
},
|
},
|
||||||
"pulseaudio": {
|
"pulseaudio": {
|
||||||
"format": "{icon} {volume}",
|
"format": "{icon} {volume}",
|
||||||
|
|||||||
@@ -0,0 +1,80 @@
|
|||||||
|
# Lines configured by zsh-newuser-install
|
||||||
|
HISTFILE=~/.histfile
|
||||||
|
HISTSIZE=1000
|
||||||
|
SAVEHIST=1000
|
||||||
|
bindkey -e
|
||||||
|
# End of lines configured by zsh-newuser-install
|
||||||
|
# The following lines were added by compinstall
|
||||||
|
zstyle :compinstall filename '/home/janis/.zshrc'
|
||||||
|
|
||||||
|
autoload -Uz compinit
|
||||||
|
compinit
|
||||||
|
autoload -U promptinit
|
||||||
|
promptinit
|
||||||
|
# End of lines added by compinstall
|
||||||
|
ENABLE_CORRECTION=true
|
||||||
|
|
||||||
|
# Handy aliases
|
||||||
|
alias ls='ls -l --color'
|
||||||
|
alias ll='ls -la --color'
|
||||||
|
alias v='nvim'
|
||||||
|
alias c='clear'
|
||||||
|
alias cv='clear && nvim'
|
||||||
|
alias fm='thunar .'
|
||||||
|
alias gl='git ls-files --others --exclude-standard'
|
||||||
|
alias gm='git ls-files -m'
|
||||||
|
alias gp='git pull'
|
||||||
|
alias cfh='nvim ~/projects/system/dotfiles/config/hypr/'
|
||||||
|
alias cfn='nvim ~/projects/system/nvim/'
|
||||||
|
alias cff='nvim ~/projects/system/dotfiles/config/fish/'
|
||||||
|
alias cfa='nvim ~/projects/system/dotfiles/config/astal/'
|
||||||
|
alias cf='nvim ~/projects/system/dotfiles/'
|
||||||
|
alias g='lazygit'
|
||||||
|
alias ff='fastfetch'
|
||||||
|
alias p='nvimpager -p'
|
||||||
|
alias latexdocs='zathura ~/projects/latex/docs/docs.pdf &>> /dev/null & disown'
|
||||||
|
alias gccerr='gcc -Wall -Wextra -Wpedantic -Werror -Wmissing-prototypes -std=c99'
|
||||||
|
alias linecount='cloc --vcs git .'
|
||||||
|
|
||||||
|
# Aliases from ohmyzsh
|
||||||
|
alias cp='nocorrect cp'
|
||||||
|
alias man='nocorrect man'
|
||||||
|
alias mkdir='nocorrect mkdir'
|
||||||
|
alias mv='nocorrect mv'
|
||||||
|
alias sudo='nocorrect sudo'
|
||||||
|
alias su='nocorrect su'
|
||||||
|
alias rm='nocorrect rm'
|
||||||
|
alias -g ...='../..'
|
||||||
|
alias -g ....='../../..'
|
||||||
|
alias -g .....='../../../..'
|
||||||
|
alias -g ......='../../../../..'
|
||||||
|
|
||||||
|
alias -- -='cd -'
|
||||||
|
alias 1='cd -1'
|
||||||
|
alias 2='cd -2'
|
||||||
|
alias 3='cd -3'
|
||||||
|
alias 4='cd -4'
|
||||||
|
alias 5='cd -5'
|
||||||
|
alias 6='cd -6'
|
||||||
|
alias 7='cd -7'
|
||||||
|
alias 8='cd -8'
|
||||||
|
alias 9='cd -9'
|
||||||
|
|
||||||
|
export PATH=$PATH:~/projects/system/dotfiles/scripts/
|
||||||
|
|
||||||
|
# Yazi wrapper
|
||||||
|
function y() {
|
||||||
|
local tmp cwd; tmp="$(mktemp -t "yazi-cwd.XXXXXX")"
|
||||||
|
command yazi "$@" --cwd-file="$tmp"
|
||||||
|
IFS= read -r -d '' cwd < "$tmp"
|
||||||
|
[ "$cwd" != "$PWD" ] && [ -d "$cwd" ] && builtin cd -- "$cwd" || builtin true
|
||||||
|
command rm -f -- "$tmp"
|
||||||
|
}
|
||||||
|
|
||||||
|
source ~/.config/zsh/theme.zsh
|
||||||
|
eval "$(zoxide init --cmd j zsh)"
|
||||||
|
|
||||||
|
# for file in ~/projects/system/dotfiles/system/completions/*
|
||||||
|
# do
|
||||||
|
# source $file
|
||||||
|
# done
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
local return_code="%F{9}%? ↵%{$reset_color%})"
|
||||||
|
local user_host="%B%F{9}%n%F{15}@%F{172}%m%f "
|
||||||
|
local user_symbol='%(!.#.$)'
|
||||||
|
local current_dir="%B%F{2}%1~ %f"
|
||||||
|
local vcs_info=''
|
||||||
|
local venv_prompt=''
|
||||||
|
|
||||||
|
precmd () {
|
||||||
|
vcs_info='git status'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PS1="╭─${user_host}${current_dir}${vcs_info}${venv_prompt}
|
||||||
|
╰─%B${user_symbol}%b "
|
||||||
|
RPROMPT="%B${return_code}%b"
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
import decman
|
|
||||||
from modules.core import utilities
|
|
||||||
from modules.core.system import base, pipewire
|
|
||||||
from modules.core.applications import dev_tools, games, steering_wheel, virtual_machines
|
|
||||||
from modules.core.ui import file_manager, fonts, hyprland, login, shell
|
|
||||||
from modules.coding import latex, neovim
|
|
||||||
|
|
||||||
if decman.aur:
|
|
||||||
decman.aur.ignored_packages |= {"yay"}
|
|
||||||
|
|
||||||
if decman.pacman:
|
|
||||||
decman.pacman.ignored_packages |= {"yay", "aylurs-gtk-shell"}
|
|
||||||
|
|
||||||
decman.modules += [
|
|
||||||
base.BasePackages("desktop"),
|
|
||||||
pipewire.Pipewire(),
|
|
||||||
dev_tools.DevTools(),
|
|
||||||
games.Games(),
|
|
||||||
steering_wheel.SteeringWheel(),
|
|
||||||
file_manager.FileManager(),
|
|
||||||
fonts.Fonts(),
|
|
||||||
hyprland.Hyprland(),
|
|
||||||
login.LoginManager("desktop"),
|
|
||||||
shell.DesktopShell(),
|
|
||||||
neovim.Neovim(),
|
|
||||||
latex.Latex(),
|
|
||||||
utilities.UtilPackages(),
|
|
||||||
virtual_machines.VirtualMachines(),
|
|
||||||
]
|
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman
|
|
||||||
|
|
||||||
import config
|
|
||||||
|
|
||||||
|
|
||||||
class Latex(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("latex")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"biber",
|
|
||||||
"perl-yaml-tiny",
|
|
||||||
"perl-file-homedir",
|
|
||||||
"python-pygments",
|
|
||||||
"texlab",
|
|
||||||
"texlive-basic",
|
|
||||||
"texlive-bibtexextra",
|
|
||||||
"texlive-binextra",
|
|
||||||
"texlive-context",
|
|
||||||
"texlive-fontsextra",
|
|
||||||
"texlive-fontsrecommended",
|
|
||||||
"texlive-fontutils",
|
|
||||||
"texlive-formatsextra",
|
|
||||||
"texlive-games",
|
|
||||||
"texlive-humanities",
|
|
||||||
"texlive-latex",
|
|
||||||
"texlive-latexextra",
|
|
||||||
"texlive-latexrecommended",
|
|
||||||
"texlive-luatex",
|
|
||||||
"texlive-mathscience",
|
|
||||||
"texlive-metapost",
|
|
||||||
"texlive-music",
|
|
||||||
"texlive-pictures",
|
|
||||||
"texlive-plaingeneric",
|
|
||||||
"texlive-pstricks",
|
|
||||||
"texlive-publishers",
|
|
||||||
"texlive-xetex",
|
|
||||||
"texlive-langgerman",
|
|
||||||
}
|
|
||||||
|
|
||||||
def files(self) -> dict[str, decman.File]:
|
|
||||||
return {
|
|
||||||
f"/home/{config.user}.indentconfig.yaml": decman.File(
|
|
||||||
source_file="./linters/indentconfig.yaml"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman, aur
|
|
||||||
|
|
||||||
|
|
||||||
class Neovim(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Neovim Packages"""
|
|
||||||
super().__init__("neovim")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"neovim",
|
|
||||||
"lua",
|
|
||||||
"lua-language-server",
|
|
||||||
"tree-sitter",
|
|
||||||
"tree-sitter-cli",
|
|
||||||
"stylua",
|
|
||||||
}
|
|
||||||
|
|
||||||
# def directories(self) -> dict[str, decman.Directory]:
|
|
||||||
# return { "": decman.Directory() }
|
|
||||||
|
|
||||||
@aur.packages
|
|
||||||
def aurpkgs(self) -> set[str]:
|
|
||||||
return {"shell-color-scripts-git", "nvimpager"}
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
import decman
|
|
||||||
import config
|
|
||||||
from decman.plugins import pacman
|
|
||||||
|
|
||||||
|
|
||||||
class DevTools(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("dev-tools")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"act",
|
|
||||||
"cronie",
|
|
||||||
"cloc",
|
|
||||||
"cmake",
|
|
||||||
"dart-sass",
|
|
||||||
"docker",
|
|
||||||
"docker-buildx",
|
|
||||||
"docker-compose",
|
|
||||||
"filezilla",
|
|
||||||
"git-lfs",
|
|
||||||
"hugo",
|
|
||||||
"helm",
|
|
||||||
"kitty",
|
|
||||||
"kubectl",
|
|
||||||
"lazygit",
|
|
||||||
"meld",
|
|
||||||
"meson",
|
|
||||||
"minisign",
|
|
||||||
"python-argcomplete",
|
|
||||||
"python-black",
|
|
||||||
"python-build",
|
|
||||||
"python-colorama",
|
|
||||||
"python-installer",
|
|
||||||
"python-jsonschema",
|
|
||||||
"python-pip",
|
|
||||||
"python-pyaml",
|
|
||||||
"python-numpy",
|
|
||||||
"python-scipy",
|
|
||||||
"python-sympy",
|
|
||||||
"serpl",
|
|
||||||
"terminator",
|
|
||||||
}
|
|
||||||
|
|
||||||
def directories(self) -> dict[str, decman.Directory]:
|
|
||||||
return {
|
|
||||||
f"/home/{config.user}/.config/lazygit": decman.Directory("./config/lazygit", owner=config.user, group=config.user),
|
|
||||||
f"/home/{config.user}/.config/kitty": decman.Directory("./config/kitty", owner=config.user, group=config.user),
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman, aur
|
|
||||||
|
|
||||||
|
|
||||||
class Games(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("games")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"android-udev",
|
|
||||||
"android-tools",
|
|
||||||
"gamemode",
|
|
||||||
"gamescope",
|
|
||||||
# "lib32-vulkan-radeon",
|
|
||||||
"obs-studio",
|
|
||||||
"obs-studio-plugin-browser",
|
|
||||||
"prismlauncher",
|
|
||||||
"steam",
|
|
||||||
"vulkan-radeon",
|
|
||||||
"v4l2loopback-dkms",
|
|
||||||
}
|
|
||||||
|
|
||||||
@aur.packages
|
|
||||||
def aurpkgs(self) -> set[str]:
|
|
||||||
# Consider switching to WiVRN
|
|
||||||
return {"bs-manager-bin", "alvr-bin"}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import aur
|
|
||||||
|
|
||||||
|
|
||||||
class SteeringWheel(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("steering-wheel")
|
|
||||||
|
|
||||||
@aur.packages
|
|
||||||
def aurpkgs(self) -> set[str]:
|
|
||||||
return {"oversteer", "hid-tmff2-dkms-git"}
|
|
||||||
|
|
||||||
def on_enable(self, store: decman.Store):
|
|
||||||
return super().on_enable(store)
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman
|
|
||||||
|
|
||||||
import config
|
|
||||||
|
|
||||||
|
|
||||||
class VirtualMachines(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Set up virtual machines"""
|
|
||||||
super().__init__("virtualmachines")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"dnsmasq",
|
|
||||||
"libayatana-appindicator",
|
|
||||||
"libvirt-python",
|
|
||||||
"lvm2",
|
|
||||||
"qemu-base",
|
|
||||||
"vde2",
|
|
||||||
"virt-manager",
|
|
||||||
"virt-viewer",
|
|
||||||
}
|
|
||||||
|
|
||||||
def on_enable(self, store: decman.Store):
|
|
||||||
# TODO: Everywhere, make user configurable
|
|
||||||
decman.prg(["usermod", "-G", "libvirt", "-a", config.user])
|
|
||||||
@@ -1,74 +0,0 @@
|
|||||||
from typing import Literal
|
|
||||||
|
|
||||||
import decman
|
|
||||||
from decman.plugins import pacman, aur
|
|
||||||
|
|
||||||
|
|
||||||
class BasePackages(decman.Module):
|
|
||||||
def __init__(self, platform: Literal["desktop", "laptop"]):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
self._platform: Literal["desktop", "laptop"] = platform
|
|
||||||
super().__init__("base")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"base",
|
|
||||||
"base-devel",
|
|
||||||
"cifs-utils",
|
|
||||||
"cups",
|
|
||||||
"dosfstools",
|
|
||||||
"efibootmgr",
|
|
||||||
"exfatprogs",
|
|
||||||
"git",
|
|
||||||
"grub",
|
|
||||||
"gsl",
|
|
||||||
"libisoburn",
|
|
||||||
"libguestfs",
|
|
||||||
"libmicrohttpd",
|
|
||||||
"linux",
|
|
||||||
"linux-firmware",
|
|
||||||
"linux-headers",
|
|
||||||
"lzop",
|
|
||||||
"mesa",
|
|
||||||
"mesa-utils",
|
|
||||||
"mtools",
|
|
||||||
"ntfs-3g",
|
|
||||||
"ntfsprogs",
|
|
||||||
"networkmanager",
|
|
||||||
"pacman-contrib",
|
|
||||||
"plymouth",
|
|
||||||
"reflector",
|
|
||||||
"samba",
|
|
||||||
"sdl12-compat",
|
|
||||||
"sdl2-compat",
|
|
||||||
"sudo",
|
|
||||||
"systemd-resolvconf",
|
|
||||||
"trash-cli",
|
|
||||||
}
|
|
||||||
|
|
||||||
@aur.packages
|
|
||||||
def aurpkgs(self) -> set[str]:
|
|
||||||
return {"decman"}
|
|
||||||
|
|
||||||
# TODO:
|
|
||||||
# def file_variables(self) -> dict[str, str]:
|
|
||||||
# return super().file_variables()
|
|
||||||
|
|
||||||
def files(self) -> dict[str, decman.File]:
|
|
||||||
# TODO: File substitutions (for PC and laptop)
|
|
||||||
if self._platform == "desktop":
|
|
||||||
return {
|
|
||||||
"/etc/mkinitcpio.conf": decman.File(
|
|
||||||
source_file="./system/mkinitcpio.conf"
|
|
||||||
),
|
|
||||||
"/etc/pacman.conf": decman.File(source_file="./system/pacman.conf"),
|
|
||||||
"/etc/default/grub": decman.File(source_file="./system/grub"),
|
|
||||||
"/etc/environment": decman.File(source_file="./system/environment"),
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {}
|
|
||||||
|
|
||||||
def on_change(self, store):
|
|
||||||
decman.prg(["mkinitcpio", "-P"])
|
|
||||||
decman.prg(["grub-mkconfig", "-o", "/boot/grub/grub.cfg"])
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman
|
|
||||||
|
|
||||||
|
|
||||||
class Pipewire(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("pipewire")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"gst-plugin-pipewire",
|
|
||||||
"pavucontrol",
|
|
||||||
"pipewire",
|
|
||||||
"pipewire-alsa",
|
|
||||||
"pipewire-pulse",
|
|
||||||
"pipewire-jack",
|
|
||||||
"wireplumber",
|
|
||||||
}
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman, aur
|
|
||||||
|
|
||||||
import config
|
|
||||||
|
|
||||||
|
|
||||||
class FileManager(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("filemanager")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"ifuse",
|
|
||||||
"libimobiledevice",
|
|
||||||
"fuse2",
|
|
||||||
"movit",
|
|
||||||
"ouch",
|
|
||||||
"resvg",
|
|
||||||
"yazi",
|
|
||||||
}
|
|
||||||
|
|
||||||
@aur.packages
|
|
||||||
def aurpkgs(self) -> set[str]:
|
|
||||||
return {"xdg-desktop-portal-termfilechooser-hunkyburrito-git"}
|
|
||||||
|
|
||||||
def directories(self) -> dict[str, decman.Directory]:
|
|
||||||
return {
|
|
||||||
f"/home/{config.user}/.config/xdg-desktop-portal": decman.Directory(
|
|
||||||
"./config/xdg-desktop-portal", owner=config.user, group=config.user
|
|
||||||
),
|
|
||||||
f"/home/{config.user}/.config/xdg-desktop-portal-termfilechooser": decman.Directory(
|
|
||||||
"./config/xdg-desktop-portal-termfilechooser", owner=config.user, group=config.user
|
|
||||||
),
|
|
||||||
f"/home/{config.user}/.config/yazi": decman.Directory("./config/yazi", owner=config.user, group=config.user),
|
|
||||||
}
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman, aur
|
|
||||||
|
|
||||||
|
|
||||||
class Fonts(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("fonts")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"adobe-source-code-pro-fonts",
|
|
||||||
"ttf-fantasque-nerd",
|
|
||||||
"ttf-jetbrains-mono-nerd",
|
|
||||||
"ttf-iosevka-nerd",
|
|
||||||
"ttf-nerd-fonts-symbols-common",
|
|
||||||
"inter-font",
|
|
||||||
}
|
|
||||||
|
|
||||||
@aur.packages
|
|
||||||
def aurpkgs(self) -> set[str]:
|
|
||||||
return {"ttf-comfortaa"}
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman
|
|
||||||
|
|
||||||
import config
|
|
||||||
|
|
||||||
|
|
||||||
class Hyprland(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
super().__init__("hyprland")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"cliphist",
|
|
||||||
# "grimblast",
|
|
||||||
"hyprland",
|
|
||||||
"hyprlock",
|
|
||||||
"hypridle",
|
|
||||||
"hyprshutdown",
|
|
||||||
"hyprpwcenter",
|
|
||||||
"hyprtoolkit",
|
|
||||||
"hyprpolkitagent",
|
|
||||||
"hyprpaper",
|
|
||||||
"libappindicator",
|
|
||||||
"rtkit",
|
|
||||||
"wl-clipboard",
|
|
||||||
"wev",
|
|
||||||
"xdg-desktop-portal-hyprland",
|
|
||||||
}
|
|
||||||
|
|
||||||
def directories(self) -> dict[str, decman.Directory]:
|
|
||||||
return {
|
|
||||||
f"/home/{config.user}/.config/hypr": decman.Directory(
|
|
||||||
"./config/hypr", owner=config.user, group=config.user
|
|
||||||
),
|
|
||||||
f"/home/{config.user}/.config/wlogout": decman.Directory(
|
|
||||||
"./config/wlogout", owner=config.user, group=config.user
|
|
||||||
)
|
|
||||||
}
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
from typing import Literal
|
|
||||||
|
|
||||||
import decman
|
|
||||||
from decman.plugins import pacman, systemd
|
|
||||||
|
|
||||||
|
|
||||||
class LoginManager(decman.Module):
|
|
||||||
def __init__(self, platform: Literal["desktop", "laptop"]):
|
|
||||||
"""Base packages that should never be uninstalled"""
|
|
||||||
self._platform: Literal["desktop", "laptop"] = platform
|
|
||||||
super().__init__("login")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
if self._platform == "desktop":
|
|
||||||
return {
|
|
||||||
"greetd",
|
|
||||||
"greetd-tuigreet",
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {"gdm"}
|
|
||||||
|
|
||||||
@systemd.units
|
|
||||||
def units(self) -> set[str]:
|
|
||||||
if self._platform == "desktop":
|
|
||||||
return {"greetd.service"}
|
|
||||||
else:
|
|
||||||
return {"gdm.service"}
|
|
||||||
|
|
||||||
def files(self) -> dict[str, decman.File]:
|
|
||||||
if self._platform == "desktop":
|
|
||||||
return {
|
|
||||||
"/etc/greetd/config.toml": decman.File("./system/greetd/config.toml"),
|
|
||||||
"/etc/pam.d/greetd": decman.File("./system/greetd/pam"),
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
# TODO: GDM config files
|
|
||||||
return {}
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# NOTE: Bar may eventually be replaced by custom bar
|
|
||||||
import decman
|
|
||||||
from decman.plugins import pacman
|
|
||||||
|
|
||||||
import config
|
|
||||||
|
|
||||||
|
|
||||||
class DesktopShell(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""DesktopShell"""
|
|
||||||
super().__init__("desktopshell")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {"dms-shell", "cava", "matugen", "papirus-icon-theme", "adw-gtk-theme", "power-profiles-daemon", "qt6ct"}
|
|
||||||
|
|
||||||
# TODO: Copy the config of dms, once done
|
|
||||||
def directories(self) -> dict[str, decman.Directory]:
|
|
||||||
return {
|
|
||||||
f"/home/{config.user}/.config/matugen": decman.Directory("./config/matugen", owner=config.user, group=config.user)
|
|
||||||
}
|
|
||||||
@@ -1,78 +0,0 @@
|
|||||||
import decman
|
|
||||||
from decman.plugins import pacman, aur
|
|
||||||
|
|
||||||
import config
|
|
||||||
|
|
||||||
|
|
||||||
class UtilPackages(decman.Module):
|
|
||||||
def __init__(self):
|
|
||||||
"""Util packages"""
|
|
||||||
super().__init__("util")
|
|
||||||
|
|
||||||
@pacman.packages
|
|
||||||
def pkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"bashtop",
|
|
||||||
"brightnessctl",
|
|
||||||
"bind",
|
|
||||||
"bluez",
|
|
||||||
"clamav",
|
|
||||||
"evince",
|
|
||||||
"fastfetch",
|
|
||||||
"fd",
|
|
||||||
"ffmpeg",
|
|
||||||
"ffmpegthumbnailer",
|
|
||||||
"fish",
|
|
||||||
"fzf",
|
|
||||||
"gdu",
|
|
||||||
"gimp",
|
|
||||||
"go",
|
|
||||||
"gnome-disk-utility",
|
|
||||||
"gwenview",
|
|
||||||
"handbrake",
|
|
||||||
"iptables",
|
|
||||||
"libdvdcss",
|
|
||||||
"man-pages",
|
|
||||||
"man-db",
|
|
||||||
"mpv",
|
|
||||||
"nextcloud-client",
|
|
||||||
"okular",
|
|
||||||
"openconnect",
|
|
||||||
"os-prober",
|
|
||||||
"qalculate-qt",
|
|
||||||
"ripgrep",
|
|
||||||
"simple-scan",
|
|
||||||
"smartmontools",
|
|
||||||
"thunderbird",
|
|
||||||
"tldr",
|
|
||||||
"unzip",
|
|
||||||
"wget",
|
|
||||||
"wine",
|
|
||||||
"xclip",
|
|
||||||
"zathura",
|
|
||||||
"zathura-pdf-poppler",
|
|
||||||
"zip",
|
|
||||||
"zoxide",
|
|
||||||
"networkmanager-openconnect",
|
|
||||||
}
|
|
||||||
|
|
||||||
@aur.packages
|
|
||||||
def aurpkgs(self) -> set[str]:
|
|
||||||
return {
|
|
||||||
"librewolf-bin",
|
|
||||||
"brave-bin",
|
|
||||||
"vesktop-bin",
|
|
||||||
"uxplay",
|
|
||||||
"git-credential-manager-bin",
|
|
||||||
"gradia",
|
|
||||||
"parabolic",
|
|
||||||
}
|
|
||||||
|
|
||||||
def directories(self) -> dict[str, decman.Directory]:
|
|
||||||
return {
|
|
||||||
f"/home/{config.user}/.config/fish": decman.Directory("./config/fish", owner=config.user, group=config.user),
|
|
||||||
f"/home/{config.user}/.config/fastfetch": decman.Directory(
|
|
||||||
"./config/fastfetch", owner=config.user, group=config.user
|
|
||||||
),
|
|
||||||
f"/home/{config.user}/.config/mpv": decman.Directory("./config/mpv", owner=config.user, group=config.user),
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
hyprland
|
||||||
|
hyprlock
|
||||||
|
hypridle
|
||||||
|
hyprpaper
|
||||||
|
hyprpolkitagent
|
||||||
|
waybar
|
||||||
|
wlogout
|
||||||
|
rofi
|
||||||
|
alacritty
|
||||||
|
dgop
|
||||||
|
btui
|
||||||
|
nmtui
|
||||||
|
qt6ct-kde
|
||||||
|
yazi
|
||||||
|
swaync
|
||||||
|
xdg-desktop-portal-hyprland
|
||||||
|
zsh
|
||||||
|
fd
|
||||||
|
rg
|
||||||
|
rga
|
||||||
|
resvg
|
||||||
|
wl-clipboard
|
||||||
|
nextcloud-client
|
||||||
@@ -22,11 +22,6 @@ if ! [[ -f ~/.config/janishutz/platform ]]; then
|
|||||||
fi
|
fi
|
||||||
echo "$platform" >~/.config/janishutz/platform
|
echo "$platform" >~/.config/janishutz/platform
|
||||||
echo "n" >~/.config/janishutz/docked
|
echo "n" >~/.config/janishutz/docked
|
||||||
else
|
|
||||||
platform=$(cat ~/.config/janishutz/platform)
|
|
||||||
if [ $platform == "l" ]; then
|
|
||||||
sed --in-place 's/dpi: 100/dpi: 160' ~/.config/rofi/config.rasi
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
confirmation=""
|
confirmation=""
|
||||||
@@ -36,12 +31,13 @@ if [[ "$confirmation" == "y" ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
rm -rf ~/.config/hypr/*.conf
|
rm -rf ~/.config/hypr/*.conf
|
||||||
rm ~/.config/platform
|
rm ~/.config/platform || true
|
||||||
rm -rf ~/.config/rofi
|
rm -rf ~/.config/ags || true
|
||||||
rm -rf ~/.config/ags
|
rm -rf ~/.config/astal || true
|
||||||
rm -rf ~/.config/astal
|
|
||||||
|
|
||||||
cp -r ./config/* ~/.config
|
cp -r ./config/* ~/.config
|
||||||
|
|
||||||
|
cp ./config/zsh/.zshrc ~/.zshrc
|
||||||
# Makes kitty use the matugen theme config
|
# Makes kitty use the matugen theme config
|
||||||
rm ~/.config/kitty/current-theme.conf
|
rm ~/.config/kitty/current-theme.conf
|
||||||
cp ./linters/indentconfig_import.yaml ~/.indentconfig.yaml
|
cp ./linters/indentconfig_import.yaml ~/.indentconfig.yaml
|
||||||
|
|||||||
Reference in New Issue
Block a user