meta: add at least 24 commits into one

This commit is contained in:
Artur Manuel 2025-03-22 17:36:40 +00:00
commit 6420ebef60
Signed by: amadaluzia
SSH key fingerprint: SHA256:Zwg7gBuZyaG48ucAZneJwltiXu0+tJb7c3lYt9AYlLg
25 changed files with 363 additions and 579 deletions

View file

@ -1,136 +0,0 @@
{
modulesPath,
lib,
inputs,
pkgs,
...
}: let
theme = {
gtk = {
name = "Orchis";
package = pkgs.orchis-theme;
};
};
in {
imports = [
(modulesPath + "/installer/cd-dvd/installation-cd-minimal.nix")
];
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
networking.networkmanager.enable = true;
time.timeZone = lib.mkForce null; # let automatic-timezoned do that job
services.automatic-timezoned.enable = true;
i18n.defaultLocale = "en_US.UTF-8";
console = {
font = "Lat2-Terminus16";
keyMap = "us";
};
services.xserver.desktopManager.gnome.enable = true;
environment.gnome.excludePackages = [
pkgs.gnome-console
];
alqueva.system.dconf = {
luminosity = "dark";
gtk.theme = theme.gtk.name;
icon.theme = "";
extraDconfSettings = {
"org/gnome/desktop/background" = {
picture-uri = inputs.wallpkgs.wallpapers.nature-07.path;
};
};
};
systemd.user.tmpfiles.rules = [
"L+ %h/.config/gtk-4.0 - - - - ${theme.gtk.package}/share/themes/${theme.gtk.name}/gtk-4.0"
];
# Configure keymap in X11
# services.xserver.xkb.layout = "us";
# services.xserver.xkb.options = "eurosign:e,caps:escape";
# Enable CUPS to print documents.
# services.printing.enable = true;
# Enable sound.
# services.pulseaudio.enable = true;
# OR
# services.pipewire = {
# enable = true;
# pulse.enable = true;
# };
# Enable touchpad support (enabled default in most desktopManager).
# services.libinput.enable = true;
# Define a user account. Don't forget to set a password with passwd.
# users.users.alice = {
# isNormalUser = true;
# extraGroups = [ "wheel" ]; # Enable sudo for the user.
# packages = with pkgs; [
# tree
# ];
# };
# programs.firefox.enable = true;
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = [
pkgs.alacritty
pkgs.neovim
pkgs.wget
pkgs.tela-icon-theme
];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.mtr.enable = true;
# programs.gnupg.agent = {
# enable = true;
# enableSSHSupport = true;
# };
# List services that you want to enable:
# Enable the OpenSSH daemon.
# services.openssh.enable = true;
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
# This option defines the first version of NixOS you have installed on this particular machine,
# and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
#
# Most users should NEVER change this value after the initial install, for any reason,
# even if you've upgraded your system to a new NixOS release.
#
# This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
# so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
# to actually do that.
#
# This value being lower than the current NixOS release does NOT mean your system is
# out of date, out of support, or vulnerable.
#
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
# and migrated your data accordingly.
#
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
system.stateVersion = "25.05"; # Did you read the comment?
}

View file

@ -1,63 +0,0 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{
config,
lib,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [];
fileSystems."/" = {
device = "/dev/disk/by-uuid/62c55ba0-c379-4948-872e-9d51dd63ab06";
fsType = "btrfs";
options = ["subvol=@root"];
};
boot.initrd.luks.devices."utero".device = "/dev/disk/by-uuid/3343076a-6d02-47b6-86fb-395402b297cd";
fileSystems."/nix" = {
device = "/dev/disk/by-uuid/62c55ba0-c379-4948-872e-9d51dd63ab06";
fsType = "btrfs";
options = ["subvol=@nix"];
};
fileSystems."/.swapvol" = {
device = "/dev/disk/by-uuid/62c55ba0-c379-4948-872e-9d51dd63ab06";
fsType = "btrfs";
options = ["subvol=@swap"];
};
fileSystems."/home" = {
device = "/dev/disk/by-uuid/62c55ba0-c379-4948-872e-9d51dd63ab06";
fsType = "btrfs";
options = ["subvol=@home"];
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/139F-0A2E";
fsType = "vfat";
options = ["fmask=0022" "dmask=0022"];
};
swapDevices = [];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
# networking.interfaces.virbr0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -2,9 +2,11 @@
config,
lib,
...
}: let
}:
let
cfg = config.alqueva.programs.direnv;
in {
in
{
options.alqueva.programs.direnv = {
enable = lib.mkEnableOption "direnv";
};

View file

@ -3,65 +3,71 @@
pkgs,
lib,
...
}: let
}:
let
cfg = config.alqueva.system.fonts;
inherit (lib) types mkOption;
mkStringsOption = default: letterform:
mkStringsOption =
default: letterform:
mkOption {
type = types.listOf types.str;
inherit default;
description = "The default fonts for ${letterform}.";
};
mkPackagesOption = default: letterform:
mkPackagesOption =
default: letterform:
mkOption {
type = types.listOf types.package;
inherit default;
description = "The packages you want to use for your ${letterform} fonts.";
};
in {
in
{
options.alqueva.system.fonts = {
enable = lib.mkEnableOption "" // {description = "Whether you want to use this fonts module.";};
enable = lib.mkEnableOption "" // {
description = "Whether you want to use this fonts module.";
};
packages =
{
extra = mkOption {
type = types.listOf types.package;
default = [];
default = [ ];
description = "Extra font packages you want installed.";
};
}
// builtins.mapAttrs (_n: v: mkPackagesOption v.default v.letterform) {
sansSerif = {
default = [pkgs.roboto];
default = [ pkgs.roboto ];
letterform = "sans-serif";
};
monospace = {
default = [pkgs.roboto-mono];
default = [ pkgs.roboto-mono ];
letterform = "monospace";
};
serif = {
default = [pkgs.roboto-serif];
default = [ pkgs.roboto-serif ];
letterform = "serif";
};
emoji = {
default = [pkgs.noto-fonts-color-emoji];
default = [ pkgs.noto-fonts-color-emoji ];
letterform = "emoji";
};
};
names = builtins.mapAttrs (_n: v: mkStringsOption v.default v.letterform) {
sansSerif = {
default = ["Roboto"];
default = [ "Roboto" ];
letterform = "sans-serif";
};
monospace = {
default = ["Roboto Mono"];
default = [ "Roboto Mono" ];
letterform = "monospace";
};
serif = {
default = ["Roboto Serif"];
default = [ "Roboto Serif" ];
letterform = "serif";
};
emoji = {
default = ["Noto Color Emoji"];
default = [ "Noto Color Emoji" ];
letterform = "emoji";
};
};
@ -71,7 +77,12 @@ in {
packages = builtins.concatLists (builtins.attrValues cfg.packages);
fontconfig = {
defaultFonts = {
inherit (cfg.names) sansSerif monospace serif emoji;
inherit (cfg.names)
sansSerif
monospace
serif
emoji
;
};
enable = true;
};

View file

@ -1,116 +0,0 @@
{
config,
lib,
...
}:
let
cfg = config.alqueva.programs.git;
in
{
options.alqueva.programs.git = {
enable = lib.mkEnableOption "git";
};
config = lib.mkIf cfg.enable {
programs.git = {
enable = true;
config = {
alias = {
a = "add";
aa = "add .";
aliases = "! f(){ TOP=$(expr $(grep -n \"^\\\\\\\\[alias\" /etc/gitconfig | sed -e 's|:.*||') + 1) && for LINE_NUMBER in $(grep -n \"^\\\\\\\\[\" /etc/gitconfig | sed -e 's|:.*||'); do [ $TOP -lt $LINE_NUMBER ] && BOTTOM=$(expr $LINE_NUMBER - 2 ) && break; done; sed -n \"\${TOP},\${BOTTOM}p\" /etc/gitconfig; }; f | sed -e 's|^ ||'";
ap = "add -p";
b = "! git for-each-ref --sort='-authordate' --format='%(authordate)%09%(objectname:short)%09%(refname)' refs/heads | sed -e 's|refs/heads/||'";
bD = "branch -D";
ba = "branch -a";
bc = "branch -c";
bd = "branch -d";
br = "branch -r";
c = "! git commit --verbose; git push";
ca = "! git c --amend";
cf = "! git commit --verbose; git push --force";
ch = "switch -C";
change = "switch -C";
cl = "clone";
cm = "commit -m";
co = "checkout "; # old/bad practice - switches branch and can modify worktree
cp = "cherry-pick ; usually abusive; sometimes necessary";
create = "! git bc";
d = "diff";
dc = "diff --cached";
ds = "diff --stat";
expire = "! git fsck --unreachable --dangling --no-reflogs; git reflog expire --expire=now --all; git gc --prune=now";
f = "fetch";
fe = "fetch";
filelog = "log --patch";
find = "! git ls-files | grep -i";
fl = "log --patch";
fp = "fetch --prune ; removes branches not in upstream";
gr = "grep -Ii";
grep = "grep -Ii";
greproot = "! git grr";
grr = "! f() { ROOT=$(git rev-parse --show-toplevel) && cd $ROOT && git grep --full-name -In $1 | xargs -I{} echo $ROOT/{}; }; f";
invert = "revert";
l = "log --oneline --graph --decorate --parents";
lasttag = "describe --tags --abbrev=0";
ll = "log --pretty=format:\"%C(yellow)%h%Cred%d\\\\ %Creset%s%Cblue\\\\ [%cn]\" --decorate --numstat";
lref = "log --oneline --graph --decorate --parents --reflog";
ls = "log --pretty=format:\"%C(yellow)%h\\\\ %ad%Cred%d\\\\ %Creset%s%Cblue\\\\ [%cn]\" --decorate --date=short";
lt = "describe --tags --abbrev=0";
mailmap = "! f(){ printf \\\"$(git config user.name) <$(git config user.email)> <\${1}>\\\" > mailmap; git filter-repo --force --mailmap mailmap; }; f";
one = "log -1 ; no input displays HEAD";
pd = "push -d";
pf = "push --force";
pl = "pull";
pp = "pull --prune ; removes branches not in upstream";
pr = "pull --rebase ; rebases commits onto upstream";
ps = "push";
pt = "! f(){ git push $1 tag $2; }; f";
r = "rebase";
ra = "rebase --skip";
rc = "rebase --continue";
re = "restore";
ref = "reflog";
ri = "rebase --interactive";
rm = "rm -r";
rmf = "! git rm --force";
rq = "rebase --quit";
rs = "rebase --abort";
sh = "show";
st = "status";
sw = "switch ; new checkout - only switching branch w/o restoring worktree";
sync = "! git fe upstream; git rebase upstream/main; git push";
t = "tag";
td = "tag --delete";
un = "restore --staged --worktree";
uncommit = "switch -C";
undo = "restore --staged --worktree";
undo-specific = "! f(){ git restore --source=\\\"$1\\\" $2; }; f";
undo-stage = "restore";
undo-unstaged = "restore";
undo-work = "restore --staged --worktree";
undo-wt = "restore --staged --worktree";
unstage = "restore --staged";
wa = "! f(){ git worktree add ../$1 $1; }; f";
wc = "! f(){ PROJ=$(printf $1 | sed -e 's|.*/||' | sed -e 's|.git||'); mkdir $PROJ; cd $PROJ; if git ls-remote $1 | grep -q \"main\"; then BRANCH=\"main\"; elif git ls-remote $1 | grep -q \"master\"; then BRANCH=\"master\"; elif git ls-remote $1 | grep -q \"trunk\"; then BRANCH=\"trunk\"; fi; git clone $1 $BRANCH; }; f";
wcreate = "! git wc";
wmv = "worktree move";
wnew = "! f(){ git worktree add ../$1; cd ../$1; git push --set-upstream origin $1; }; f";
wr = "worktree remove";
wrm = "! git wr";
wsc = "! f(){ PROJ=$(printf $1 | sed -e 's|.*/||' | sed -e 's|.git||'); mkdir $PROJ; cd $PROJ; if git ls-remote $1 | grep -q \"main\"; then BRANCH=\"main\"; elif git ls-remote $1 | grep -q \"master\"; then BRANCH=\"master\"; elif git ls-remote $1 | grep -q \"trunk\"; then BRANCH=\"trunk\"; fi; git clone --depth=1 --single-branch $1 $BRANCH; }; f";
wshallow = "! git wsc";
};
branch = {
autosetuprebase = "always";
};
color = {
branch = "auto";
diff = "auto";
status = "auto";
};
commit.gpgsign = true;
};
};
};
}

View file

@ -5,21 +5,34 @@
...
}:
let
inherit (lib.options) mkOption mkPackageOption mkEnableOption;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) nullOr str;
cfg = config.alqueva.shells.nushell;
in
{
options.alqueva.shells.nushell = {
enable = lib.mkEnableOption "Nushell";
package = lib.mkPackageOption pkgs "nushell" { };
};
config = lib.mkIf cfg.enable {
environment = {
systemPackages = [ cfg.package ];
shells = [
(lib.getExe' cfg.package "nu")
"/run/current-system/sw/bin/nu"
];
enable = mkEnableOption "Nushell";
package = mkPackageOption pkgs "nushell" { };
config = mkOption {
type = nullOr str;
default = null;
description = "Nushell code to load by default with Nushell.";
};
};
config = mkIf cfg.enable (mkMerge [
{
environment = {
systemPackages = [ cfg.package ];
shells = [
(lib.getExe' cfg.package "nu")
"/run/current-system/sw/bin/nu"
];
};
}
(mkIf (cfg.config != null) {
environment.systemPackages = [ ];
})
]);
}

View file

@ -3,19 +3,21 @@
pkgs,
config,
...
}: let
}:
let
cfg = config.alqueva.programs.waybar;
in {
in
{
options.alqueva.programs.waybar = {
enable = lib.mkEnableOption "waybar, a highly customizable Wayland bar for Sway and Wlroots based compositors";
package = lib.mkPackageOption pkgs "waybar" {};
package = lib.mkPackageOption pkgs "waybar" { };
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [cfg.package];
environment.systemPackages = [ cfg.package ];
systemd = {
packages = [cfg.package];
user.services.waybar.wantedBy = ["graphical-session.target"];
packages = [ cfg.package ];
user.services.waybar.wantedBy = [ "graphical-session.target" ];
};
};
}

View file

@ -20,7 +20,7 @@
programs = {
swaybg = {
enable = true;
wallpaper = inputs.wallpkgs.wallpapers.everforest-foggy_valley_1.path;
wallpaper = inputs.wallpkgs.wallpapers.dracula.dracula-ship.path;
};
waybar = {
enable = true;
@ -34,7 +34,6 @@
sound = ../../media/majoras_mask_bell.wav;
};
direnv.enable = true;
git.enable = true;
openssh.enable = true;
};
shells = {
@ -51,22 +50,28 @@
wms.niri.enable = true;
};
programs.nh = {
enable = true;
clean.enable = true;
package = pkgs.symlinkJoin {
name = "nh";
paths = [
pkgs.nh
];
nativeBuildInputs = [
pkgs.makeWrapper
];
postBuild = ''
wrapProgram $out/bin/nh \
--set FLAKE "/home/artur/.config/nixos"
'';
meta = { inherit (pkgs.nh.meta) mainProgram; };
programs = {
nh = {
enable = true;
clean.enable = true;
package = pkgs.symlinkJoin {
name = "nh";
paths = [
pkgs.nh
];
nativeBuildInputs = [
pkgs.makeWrapper
];
postBuild = ''
wrapProgram $out/bin/nh \
--set FLAKE "/home/artur/.config/nixos"
'';
meta = { inherit (pkgs.nh.meta) mainProgram; };
};
};
git = {
enable = true;
package = pkgs.gitFull;
};
};

View file

@ -28,6 +28,8 @@
inputs.alqages.overlays.default
];
nix.package = pkgs.lix;
console = {
font = "Lat2-Terminus16";
keyMap = "us";

View file

@ -2,16 +2,16 @@
{
alqueva.system.fonts = {
names = {
sansSerif = [ "Iosevka" ];
monospace = [ "Iosevka" ];
serif = [ "IBM Plex Serif" ];
sansSerif = [ "Inter" ];
monospace = [ "Maple Mono" ];
serif = [ "Merriweather" ];
emoji = [ "Twitter Color Emoji" ];
};
packages = {
sansSerif = [ pkgs.inter ];
monospace = [ pkgs.iosevka ];
serif = [ pkgs.ibm-plex ];
emoji = [ pkgs.twemoji-color-font ];
monospace = [ pkgs.maple-mono ];
serif = [ pkgs.merriweather ];
emoji = [ pkgs.twitter-color-emoji ];
extra = [
pkgs.noto-fonts
pkgs.nerd-fonts.symbols-only

View file

@ -1,45 +1,23 @@
{
pkgs,
config,
...
}:
let
themes = {
# gtk-theme = pkgs.everforest-gtk-theme;
gtk-theme = pkgs.everforest-gtk-theme.overrideAttrs (finalAttrs: {
version = "0-unstable-2024-11-06";
src = pkgs.fetchFromGitHub {
owner = "Fausto-Korpsvart";
repo = finalAttrs.pname;
rev = "43cbe4f1aeba8b46e41836de4c8ea7ac398db119";
hash = "sha256-Z46i0Ihpzo4LhFvzKsvnzcHFzeYxJMvQmg2k6lmjGH0=";
};
nativeBuildInputs = (finalAttrs.nativeBuildInputs or [ ]) ++ [
pkgs.sassc
];
installPhase = ''
runHook preInstall
mkdir -p "$out"/share/{icons,themes}
cp -a icons/* "$out"/share/icons/
patchShebangs ./themes/install.sh
./themes/install.sh -d "$out"/share/themes/
runHook postInstall
'';
});
icon-theme = themes.gtk-theme;
cursor-theme = pkgs.simp1e-cursors;
gtk-theme = pkgs.dracula-theme-git;
icon-theme = pkgs.dracula-icon-theme;
cursor-theme = themes.icon-theme;
};
cfg = config.alqueva.system.dconf;
in
{
alqueva.system.dconf = {
enable = true;
luminosity = "dark";
theme = "everforest-gtk-theme-0-unstable-2024-11-06-Dark";
icon.theme = "Everforest-Dark";
theme = "Dracula";
icon.theme = "Dracula";
cursor = {
size = 24;
theme = "Simp1e-Gruvbox-Dark";
theme = "Dracula-cursors";
};
};
@ -50,7 +28,4 @@ in
};
environment.systemPackages = builtins.attrValues themes;
systemd.user.tmpfiles.rules = [
"L+ %h/.config/gtk-4.0 - - - - ${themes.gtk-theme}/share/themes/${cfg.theme}/gtk-4.0"
];
}

View file

@ -333,24 +333,24 @@
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
background = "#2b3339"
foreground = "#d3c6aa"
background = "#282a36"
foreground = "#f8f8f2"
timeout = 10
# Icon for notifications with low urgency
default_icon = dialog-information
[urgency_normal]
background = "#343f44"
foreground = "#d3c6aa"
background = "#44475a"
foreground = "#f8f8f2"
timeout = 10
override_pause_level = 30
# Icon for notifications with normal urgency
default_icon = dialog-information
[urgency_critical]
background = "#543a48"
foreground = "#d3c6aa"
frame_color = "#d3c6aa"
background = "#ff5555"
foreground = "#44475a"
frame_color = "#44475a"
timeout = 0
override_pause_level = 60
# Icon for notifications with critical urgency

View file

@ -1,29 +1,29 @@
[main]
pad=8x8
font=monospace:size=13
font=monospace:size=16.5
[colors]
foreground=e5e9f0
background=2e3440
regular0=3b4252
regular1=bf616a
regular2=a3be8c
regular3=ebcb8b
regular4=81a1c1
regular5=b48ead
regular6=88c0d0
regular7=eceff4
bright0=434c5e
bright1=bf616a
bright2=a3be8c
bright3=ebcb8b
bright4=81a1c1
bright5=b48ead
bright6=88c0d0
bright7=8fbcbb
16=d08770
17=5e81ac
18=3b4252
19=434c5e
20=d8dee9
21=eceff4
foreground=f8f8f2
background=282a36
regular0=363447 # black
regular1=ff5555 # red
regular2=50fa7b # green
regular3=f1fa8c # yellow
regular4=80bfff # blue
regular5=ff79c6 # magenta
regular6=8be9fd # cyan
regular7=f0f1f4 # white
bright0=44475a # bright black
bright1=ff5555 # bright red
bright2=50fa7b # bright green
bright3=f1fa8c # bright yellow
bright4=80bfff # bright blue
bright5=ff79c6 # bright magenta
bright6=8be9fd # bright cyan
bright7=ffffff # bright white
16=ffb86c
17=bd93f9
18=363447
19=44475a
20=9ea8c7
21=f0f1f4

View file

@ -0,0 +1,110 @@
[alias]
a=add
aa=add .
aliases=! f(){ TOP=$(expr $(grep -n "^\\\\[alias" ~/.gitconfig | sed -e 's|:.*||') + 1) && for LINE_NUMBER in $(grep -n "^\\\\[" ~/.gitconfig | sed -e 's|:.*||'); do [ $TOP -lt $LINE_NUMBER ] && BOTTOM=$(expr $LINE_NUMBER - 2 ) && break; done; sed -n "${TOP},${BOTTOM}p" ~/.gitconfig; }; f | sed -e 's|^ ||'
ap=add -p
b=! git for-each-ref --sort='-authordate' --format='%(authordate)%09%(objectname:short)%09%(refname)' refs/heads | sed -e 's|refs/heads/||'
bD=branch -D
ba=branch -a
bc=branch -c
bd=branch -d
br=branch -r
c=! git commit --verbose; git push
ca=! git c --amend
cf=! git commit --verbose; git push --force
ch=switch -C
change=switch -C
cl=clone
cm=commit -m
co=checkout
cp=cherry-pick ; usually abusive; sometimes necessary
create=! git bc
d=diff
dc=diff --cached
ds=diff --stat
expire=! git fsck --unreachable --dangling --no-reflogs; git reflog expire --expire=now --all; git gc --prune=now
f=fetch
fe=fetch
filelog=log --patch
find=! git ls-files | grep -i
fl=log --patch
fp=fetch --prune ; removes branches not in upstream
gr=grep -Ii
grep=grep -Ii
greproot=! git grr
grr=! f() { ROOT=$(git rev-parse --show-toplevel) && cd $ROOT && git grep --full-name -In $1 | xargs -I{} echo $ROOT/{}; }; f
invert=revert
l=log --oneline --graph --decorate --parents
lasttag=describe --tags --abbrev=0
ll=log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
lref=log --oneline --graph --decorate --parents --reflog
ls=log --pretty=format:"%C(yellow)%h\\ %ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short
lt=describe --tags --abbrev=0
mailmap=! f(){ printf \"$(git config user.name) <$(git config user.email)> <${1}>\" > mailmap; git filter-repo --force --mailmap mailmap; }; f
one=log -1 ; no input displays HEAD
pd=push -d
pf=push --force
pl=pull
pp=pull --prune ; removes branches not in upstream
pr=pull --rebase ; rebases commits onto upstream
ps=push
pt=! f(){ git push $1 tag $2; }; f
r=rebase
ra=rebase --skip
rc=rebase --continue
re=restore
ref=reflog
ri=rebase --interactive
rm=rm -r
rmf=! git rm --force
rq=rebase --quit
rs=rebase --abort
sh=show
st=status
sw=switch ; new checkout - only switching branch w/o restoring worktree
sync=! git fe upstream; git rebase upstream/main; git push
t=tag
td=tag --delete
un=restore --staged --worktree
uncommit=switch -C
undo=restore --staged --worktree
undo-specific=! f(){ git restore --source=\"$1\" $2; }; f
undo-stage=restore
undo-unstaged=restore
undo-work=restore --staged --worktree
undo-wt=restore --staged --worktree
unstage=restore --staged
wa=! f(){ git worktree add ../$1 $1; }; f
wc=! f(){ PROJ=$(printf $1 | sed -e 's|.*/||' | sed -e 's|.git||'); mkdir $PROJ; cd $PROJ; if git ls-remote $1 | grep -q "main"; then BRANCH="main"; elif git ls-remote $1 | grep -q "master"; then BRANCH="master"; elif git ls-remote $1 | grep -q "trunk"; then BRANCH="trunk"; fi; git clone $1 $BRANCH; }; f
wcreate=! git wc
wmv=worktree move
wnew=! f(){ git worktree add ../$1; cd ../$1; git push --set-upstream origin $1; }; f
wr=worktree remove
wrm=! git wr
wsc=! f(){ PROJ=$(printf $1 | sed -e 's|.*/||' | sed -e 's|.git||'); mkdir $PROJ; cd $PROJ; if git ls-remote $1 | grep -q "main"; then BRANCH="main"; elif git ls-remote $1 | grep -q "master"; then BRANCH="master"; elif git ls-remote $1 | grep -q "trunk"; then BRANCH="trunk"; fi; git clone --depth=1 --single-branch $1 $BRANCH; }; f
wshallow=! git wsc
[branch]
autosetuprebase=always
[color]
branch=auto
diff=auto
status=auto
[commit]
gpgsign=true
[gpg]
format=ssh
[user]
email=amad@atl.tools
name=Artur Manuel
signingKey=~/.ssh/id_ed25519.pub
[init]
defaultBranch = "main"
[credential]
helper = "git-credential-libsecret"

View file

@ -114,9 +114,9 @@ layout {
// Proportion sets the width as a fraction of the output width, taking gaps into account.
// For example, you can perfectly fit four windows sized "proportion 0.25" on an output.
// The default preset widths are 1/3, 1/2 and 2/3 of the output.
proportion 0.33333
proportion 0.5
proportion 0.66667
proportion 0.4
proportion 0.6
proportion 0.8
// Fixed sets the width in logical pixels exactly.
// fixed 1920
@ -126,7 +126,7 @@ layout {
// preset-window-heights { }
// You can change the default width of the new windows.
default-column-width { proportion 0.5; }
default-column-width { proportion 0.4; }
// If you leave the brackets empty, the windows themselves will decide their initial width.
// default-column-width {}
@ -144,7 +144,7 @@ layout {
// You can change how the focus ring looks.
focus-ring {
// Uncomment this line to disable the focus ring.
// off
off
// How many logical pixels the ring extends out from the windows.
width 2
@ -180,11 +180,11 @@ layout {
border {
// The settings are the same as for the focus ring.
// If you enable the border, you probably want to disable the focus ring.
off
// off
width 0
active-color "#ffc87f"
inactive-color "#505050"
width 1
active-color "#bd93f9"
inactive-color "#6272a4"
// active-gradient from="#ffbb66" to="#ffc880" angle=45 relative-to="workspace-view"
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
@ -293,7 +293,8 @@ binds {
Mod+Shift+Slash { show-hotkey-overlay; }
// Suggested binds for running programs: terminal, app launcher, screen locker.
Mod+T { spawn "emacs"; }
Mod+E { spawn "emacs"; }
Mod+T { spawn "foot"; }
Mod+D { spawn "rofi" "-show" "drun"; }
// Super+Alt+L { spawn "swaylock"; }
@ -510,6 +511,6 @@ binds {
}
cursor {
xcursor-theme "Simp1e-Gruvbox-Dark"
xcursor-theme "Dracula-cursors"
xcursor-size 24
}

View file

@ -2,26 +2,26 @@ from theme import load_theme
config.load_autoconfig()
everforest = {
"base00": "#2b3339",
"base01": "#323c41",
"base02": "#503946",
"base03": "#868d80",
"base04": "#d3c6aa",
"base05": "#d3c6aa",
"base06": "#e9e8d2",
"base07": "#fff9e8",
"base08": "#7fbbb3",
"base09": "#d699b6",
"base0A": "#83c092",
"base0B": "#dbbc7f",
"base0C": "#e69875",
"base0D": "#a7c080",
"base0E": "#e67e80",
"base0F": "#d699b6",
dracula = {
"base00": "#282a36",
"base01": "#363447",
"base02": "#44475a",
"base03": "#6272a4",
"base04": "#9ea8c7",
"base05": "#f8f8f2",
"base06": "#f0f1f4",
"base07": "#ffffff",
"base08": "#ff5555",
"base09": "#ffb86c",
"base0A": "#f1fa8c",
"base0B": "#50fa7b",
"base0C": "#8be9fd",
"base0D": "#80bfff",
"base0E": "#ff79c6",
"base0F": "#bd93f9",
}
load_theme(c, everforest)
load_theme(c, dracula)
c.colors.webpage.preferred_color_scheme = "dark"
c.tabs.position = "top"

View file

@ -12,7 +12,7 @@ configuration{
display-drun: "  Apps ";
}
@theme "nord"
@theme "base16"
element-text, element-icon , mode-switcher {
background-color: inherit;

View file

@ -0,0 +1,11 @@
* {
bg-col: #282a36;
bg-col-light: #44475a;
border-col: #44475a;
selected-col: #44475a;
blue: #bd93f9;
fg-col: #f8f8f2;
fg-col2: #f8f8f2;
grey: #6272a4;
width: 600;
}

View file

@ -1,11 +0,0 @@
* {
bg-col: #2D353B;
bg-col-light: #343F44;
border-col: #343F44;
selected-col: #343F44;
blue: #7FBBB3;
fg-col: #D3C6AA;
fg-col2: #D3C6AA;
grey: #7A8478;
width: 600;
}

View file

@ -1,3 +1,5 @@
:root {
--font: "Monospace";
--font-primary: "sans";
--font-display: "sans";
--font-code: "monospace";
}

View file

@ -1,5 +1,5 @@
{
"position": "bottom",
"position": "top",
"height": 0,
"modules-left": ["custom/nixos", "niri/workspaces"],
"modules-center": ["mpris"],

View file

@ -1,24 +1,25 @@
@define-color base00 #2b3339;
@define-color base01 #323c41;
@define-color base02 #503946;
@define-color base03 #868d80;
@define-color base04 #d3c6aa;
@define-color base05 #d3c6aa;
@define-color base06 #e9e8d2;
@define-color base07 #fff9e8;
@define-color base08 #7fbbb3;
@define-color base09 #d699b6;
@define-color base0A #83c092;
@define-color base0B #dbbc7f;
@define-color base0C #e69875;
@define-color base0D #a7c080;
@define-color base0E #e67e80;
@define-color base0F #d699b6;
@define-color base00 #282a36;
@define-color base01 #363447;
@define-color base02 #44475a;
@define-color base03 #6272a4;
@define-color base04 #9ea8c7;
@define-color base05 #f8f8f2;
@define-color base06 #f0f1f4;
@define-color base07 #ffffff;
@define-color base08 #ff5555;
@define-color base09 #ffb86c;
@define-color base0A #f1fa8c;
@define-color base0B #50fa7b;
@define-color base0C #8be9fd;
@define-color base0D #80bfff;
@define-color base0E #ff79c6;
@define-color base0F #bd93f9;
* {
all: unset;
color: @base05;
min-height: 0px;
font-family: monospace;
}
window#waybar {
@ -52,7 +53,7 @@ tooltip {
#custom-nixos {
padding: 0px 12px;
font-size: 24px;
color: @base08;
color: @base0D;
}
menu {

View file

@ -10,16 +10,6 @@
tmpfiles = [
"L+ %h/.config/qutebrowser/config.py - - - - ${./configs/qutebrowser/config.py}"
"L+ %h/.config/qutebrowser/theme - - - - ${./configs/qutebrowser/theme}"
(
let
theme = pkgs.fetchurl {
url = "https://raw.githubusercontent.com/deathbeam/base16-discord/refs/heads/main/themes/base16-nord.theme.css";
hash = "sha256-LofqgsVl+XKisk/dmb/PpwuLEWdEgchIfIw4xZs6LQw=";
};
in
"L+ %h/.config/vesktop/themes/theme.user.css - - - - ${theme}"
)
"L+ %h/.config/vesktop/settings/quickCss.css - - - - ${./configs/vesktop/quickCss.css}"
"L+ %h/.config/kanshi/ - - - - ${./configs/kanshi}"
"L+ %h/.config/dunst/ - - - - ${./configs/dunst}"
"L+ %h/.config/niri/ - - - - ${./configs/niri}"
@ -27,12 +17,13 @@
"L+ %h/.config/foot - - - - ${./configs/foot}"
"L+ %h/.config/waybar - - - - ${./configs/waybar}"
"L+ %h/.face.icon - - - - ${./.face.icon}"
"L+ %h/.gitconfig - - - - ${./configs/git/gitconfig}"
"L+ %h/.config/vesktop/settings/quickCss.css - - - - ${./configs/vesktop/quickCss.css}"
];
packages = builtins.attrValues {
inherit (pkgs)
eww
wget
vesktop-electron32
mpv
imv
amberol
@ -50,6 +41,7 @@
signal-desktop
dino
polari
vesktop
;
inherit (inputs.hetch.packages.${pkgs.system}) hetch;
inherit (inputs.gimp-nixpkgs.legacyPackages.${pkgs.system}) gimp;