This commit is contained in:
meml0rz
2024-11-14 23:34:03 +01:00
parent 2be3e96705
commit ef1cf270f5
10 changed files with 164 additions and 85 deletions

View File

@ -42,6 +42,7 @@
xserver = {
enable = true;
displayManager.startx.enable = true;
windowManager.bspwm.enable = true;
};
pipewire = {
enable = true;
@ -110,6 +111,7 @@
xdg-desktop-portal-hyprland
grim
slurp
feh
# cli
neofetch

View File

@ -1,37 +1,45 @@
{
description = "My first flake!";
description = "My first flake!";
inputs = {
nixpkgs-stable.url = "nixpkgs/nixos-24.05";
nixpkgs.url = "nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/release-24.05";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
nixvim = {
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
inputs = {
nixpkgs-stable.url = "nixpkgs/nixos-24.05";
nixpkgs.url = "nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/release-24.05";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
nixvim = {
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
outputs = inputs@{ nixpkgs, nixpkgs-stable, home-manager, nixvim, ... }: {
nixosConfigurations = {
poggers = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.fabian = import ./modules/home.nix;
home-manager.extraSpecialArgs = {
inherit nixvim;
inherit inputs;
};
}
];
};
specialArgs = {
};
outputs =
inputs@{
nixpkgs,
nixpkgs-stable,
home-manager,
nixvim,
...
}:
{
nixosConfigurations = {
poggers = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.fabian = import ./modules/home.nix;
home-manager.extraSpecialArgs = {
inherit nixvim;
inherit inputs;
};
};
}
];
};
};
specialArgs = {
inherit inputs;
};
};
};
}

View File

@ -3,8 +3,7 @@
imports = [
./nix/user.nix
./nix/nvim/default.nix
./nix/hypr/default.nix
#./nix/hypr/default.nix
./nix/bspwm/default.nix
];

View File

@ -0,0 +1,45 @@
{ config, pkgs, ... }:
{
programs = {
alacritty = {
enable = true;
settings = {
color = {
primary = {
background = "#282828";
foreground = "#ebdbb2";
};
normal = {
black = "#282828";
red = "#cc241d";
green = "#98971a";
yellow = "#d79921";
blue = "#458588";
magenta = "#b16286";
cyan = "#689d6a";
white = "#a89984";
};
bright = {
black = "#928374";
red = "#fb4934";
green = "#b8bb26";
yellow = "#fabd2f";
blue = "#83a598";
magenta = "#d3869b";
cyan = "#8ec07c";
white = "#ebdbb2";
};
};
window = {
decorations = "Full";
};
font = {
size = "16";
normal = {
family = "Dina";
};
};
};
};
};
}

View File

@ -6,11 +6,13 @@
keybindings = {
"super + Return" = "${pkgs.alacritty}/bin/alacritty";
"super + space" = "${pkgs.rofi}/bin/rofi -show drun";
"super + q" = "bspc node -k";
"super + shift + r" = "bspc restart";
"super + shift + r" = "bspc wm -r";
"super + shift + space" = "bspc node focused -t \~floating";
"super + {1,2,3,4,5,6,7,8,9,0}" = "bspc desktop -f {1,2,3,4,5,6,7,8,9,0}";
"super + shift + {1-9,0}" = "bspc node -d '^{1-9,10}'";
"super + Escape" = "pkill -USR1 -x sxhkd";
};
};
};
@ -20,17 +22,18 @@
border_width = 2;
gapless_monocle = false;
split_ratio = 0.52;
window_gap = "10";
focus_follows_pointer = true;
borderless_monocle = true;
};
extraConfig = ''
feh --bg-fill ~/.wp/temple.png &
bspc config focus_follows_pointer false
sxhkd -c ~/.config/sxhkd/sxhkdrc &
${pkgs.feh}/bin/feh --bg-fill ~/.wp/temple.png &
bspc monitor -d 1 2 3 4 5 6 7 8 9 0
'';
rules = {
"gimp" = {
desktop = "^8";
state = "floating";
follow = true;
};
"kupfer.py" = {
focus = true;
};

View File

@ -2,6 +2,7 @@
{
imports = [
./bspwm.nix
./alacritty.nix
];
#home.file = {

View File

@ -31,19 +31,9 @@ in
completeopt = "menu,menuone,noinsert,noselect";
keyword_length = 1;
};
sorting = {
comparators = [
"require('cmp.config.compare').offset"
"require('cmp.config.compare').exact"
"require('cmp.config.compare').score"
"require('clangd_extensions.cmp_scores')"
"require('cmp.config.compare').recently_used"
"require('cmp.config.compare').locality"
"require('cmp.config.compare').kind"
"require('cmp.config.compare').length"
"require('cmp.config.compare').order"
];
};
sorting =
{
};
mapping = {
"<Down>".__raw = ''
cmp.mapping(function(fallback)
@ -55,7 +45,7 @@ in
end, { "i", "s" })
'';
"<Up>".__raw = ''
"<S-Tab>".__raw = ''
cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
@ -64,12 +54,10 @@ in
end
end, { "i", "s" })
'';
"<C-n>" = "cmp.mapping.scroll_docs(-4)";
"<c-Up>" = "cmp.mapping.scroll_docs(4)";
"<C-Space>" = "cmp.mapping.complete()";
"<C-e>" = "cmp.mapping.abort()";
"<C-Left>" = "cmp.mapping.abort()";
"<CR>" = "cmp.mapping.confirm({ select = false })";
};
@ -98,25 +86,10 @@ in
inherit get_bufnrs;
};
}
{
name = "luasnip";
priority = 750;
}
{
name = "buffer";
priority = 500;
option = {
inherit get_bufnrs;
};
}
{
name = "path";
priority = 300;
}
{
name = "cmdline";
priority = 300;
}
];
};
};

View File

@ -18,6 +18,6 @@
];
programs.nixvim = {
enable = true;
colorschemes.oxocarbon.enable = true;
colorschemes.gruvbox.enable = true;
};
}

View File

@ -21,9 +21,8 @@
lua_ls = {
enable = true;
};
rnix = {
nixd = {
enable = true;
package = null;
extraOptions = {
nixos = {
expr = "(builtins.getFlake \"/etc/nixos\").nixosConfigurations.aurelionite.options";

View File

@ -4,22 +4,71 @@
bash = {
enable = true;
enableCompletion = true;
bashrcExtra = ''
PS1="\[\e[35m\][\u@\h:\w] % \[\e[0m\]"
eval "$(${pkgs.fzf}/bin/fzf --bash)"
alias rm="rm -rv"
alias mv="mv -v"
alias ls="${pkgs.eza}/bin/eza -l --icons --absolute"
alias mkdir="mkdir -pv"
alias http="python3 -m http.server 1337"
alias update="sudo nixos-rebuild switch --flake /etc/nixos --impure"
sessionVariables = {
DEVKITPRO = "/opt/devkitpro";
DEVKITPPC = "/opt/devkitpro/devkitPPC";
DEVKITA64 = "/opt/devkitpro/devkitA64";
DEVKITARM = "/opt/devkitpro/devkitARM";
PATH = "/opt/devkitpro/tools/bin:$PATH";
};
shellAliases = {
http = "python3 -m http.server";
rm = "rm -rfv";
ls = "${pkgs.eza}/bin/eza -l --icons";
cp = "cp -rv";
mv = "mv -v";
mkdir = "mkdir -pv";
update = "sudo nixos-rebuild switch";
};
shellOptions = [
"histappend"
"checkwinsize"
"extglob"
"globstar"
"checkjobs"
];
initExtra = ''
eval "$(fzf --bash)"
PS1='\[\e[35m\][\u@\h:\w] % \[\e[0m\]'
if command -v tmux &> /dev/null && [ -z "$TMUX" ]; then
tmux attach-session -t default || tmux new-session -s default
fi
'';
};
git = {
enable = true;
userName = "meml0rz";
userEmail = "meml0rz";
};
tmux = {
enable = true;
plugins = with pkgs; [
tmuxPlugins.net-speed
tmuxPlugins.cpu
tmuxPlugins.battery
tmuxPlugins.gruvbox
];
disableConfirmationPrompt = true;
mouse = true;
keyMode = "vi";
extraConfig = ''
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
bind \\ split-window -h
bind - split-window -v
unbind '"'
unbind %
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
set -g status-position top
'';
};
};
}