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]
|
||||
import = [
|
||||
"~/.config/alacritty/dank-theme.toml"
|
||||
"~/.config/alacritty/theme.toml"
|
||||
]
|
||||
|
||||
[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'
|
||||
output_path = '~/.config/kitty/colors.conf'
|
||||
|
||||
[templates.alacritty]
|
||||
input_path = '~/.config/matugen/templates/alacritty/theme.toml'
|
||||
output_path = '~/.config/alacritty/colors.toml'
|
||||
|
||||
|
||||
# My own
|
||||
[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": {
|
||||
"tooltip-format": "<big>CPU</big>\n<tt>Total: {usage}</tt>",
|
||||
"format": "\uf4bc {usage}",
|
||||
"interval": 5
|
||||
"interval": 5,
|
||||
"on-click": "alacritty -e dgop -T dgop"
|
||||
},
|
||||
"memory": {
|
||||
"format": "\uefc5 {percentage}",
|
||||
"interval": 5
|
||||
"interval": 5,
|
||||
"on-click": "alacritty -e dgop -T dgop"
|
||||
},
|
||||
"pulseaudio": {
|
||||
"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
|
||||
echo "$platform" >~/.config/janishutz/platform
|
||||
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
|
||||
|
||||
confirmation=""
|
||||
@@ -36,12 +31,13 @@ if [[ "$confirmation" == "y" ]]; then
|
||||
fi
|
||||
|
||||
rm -rf ~/.config/hypr/*.conf
|
||||
rm ~/.config/platform
|
||||
rm -rf ~/.config/rofi
|
||||
rm -rf ~/.config/ags
|
||||
rm -rf ~/.config/astal
|
||||
rm ~/.config/platform || true
|
||||
rm -rf ~/.config/ags || true
|
||||
rm -rf ~/.config/astal || true
|
||||
|
||||
cp -r ./config/* ~/.config
|
||||
|
||||
cp ./config/zsh/.zshrc ~/.zshrc
|
||||
# Makes kitty use the matugen theme config
|
||||
rm ~/.config/kitty/current-theme.conf
|
||||
cp ./linters/indentconfig_import.yaml ~/.indentconfig.yaml
|
||||
|
||||
Reference in New Issue
Block a user