Compare commits
No commits in common. "743258bb44e2af77798ee74c9d4f6ec2d895eb9f" and "8761dae20ce7dd7d2b84b32c952fce4a52e3d5f0" have entirely different histories.
743258bb44
...
8761dae20c
29 changed files with 570 additions and 1271 deletions
800
flake.lock
800
flake.lock
File diff suppressed because it is too large
Load diff
96
flake.nix
96
flake.nix
|
@ -1,85 +1,48 @@
|
||||||
{
|
{
|
||||||
description = "GHOSCHT's NixOS config";
|
description = "Your new nix config";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
# Nixpkgs
|
# Nixpkgs
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
||||||
|
# You can access packages and modules from different nixpkgs revs
|
||||||
|
# at the same time. Here's an working example:
|
||||||
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
# Also see the 'unstable-packages' overlay at 'overlays/default.nix'.
|
||||||
|
|
||||||
# Home manager
|
# Home manager
|
||||||
home-manager = {
|
home-manager.url = "github:nix-community/home-manager/release-24.11";
|
||||||
url = "github:nix-community/home-manager/release-24.11";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware = {
|
hardware.url = "github:nixos/nixos-hardware";
|
||||||
url = "github:nixos/nixos-hardware";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
disko = {
|
disko = {
|
||||||
url = "github:nix-community/disko";
|
url = "github:nix-community/disko";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix-colors.url = "github:misterio77/nix-colors";
|
||||||
firefox-addons = {
|
firefox-addons = {
|
||||||
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
arkenfox = {
|
arkenfox = {
|
||||||
url = "github:dwarfmaster/arkenfox-nixos";
|
url = "github:dwarfmaster/arkenfox-nixos";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
xremap.url = "github:xremap/nix-flake";
|
||||||
xremap = {
|
flatpaks.url = "github:GermanBread/declarative-flatpak/stable-v3";
|
||||||
url = "github:xremap/nix-flake";
|
heliox-cli.url = "git+https://git.ghoscht.com/heliox/cli?ref=custom-dimming";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
picokontroller.url = "git+https://git.ghoscht.com/ghoscht/picoKontroller";
|
||||||
|
sops-nix.url = "github:Mic92/sops-nix";
|
||||||
|
arion.url = "github:hercules-ci/arion";
|
||||||
};
|
};
|
||||||
|
|
||||||
flatpaks = {
|
outputs = {
|
||||||
url = "github:GermanBread/declarative-flatpak/stable-v3";
|
self,
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
nixpkgs,
|
||||||
};
|
home-manager,
|
||||||
|
...
|
||||||
heliox-cli = {
|
} @ inputs: let
|
||||||
url = "git+https://git.ghoscht.com/heliox/cli?ref=custom-dimming";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
picokontroller = {
|
|
||||||
url = "git+https://git.ghoscht.com/ghoscht/picoKontroller";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
sops-nix = {
|
|
||||||
url = "github:Mic92/sops-nix";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
arion = {
|
|
||||||
url = "github:hercules-ci/arion";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
stylix = {
|
|
||||||
url = "github:danth/stylix";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
nixvim = {
|
|
||||||
url = "github:nix-community/nixvim/nixos-24.11";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
outputs =
|
|
||||||
{ self
|
|
||||||
, nixpkgs
|
|
||||||
, home-manager
|
|
||||||
, ...
|
|
||||||
} @ inputs:
|
|
||||||
let
|
|
||||||
inherit (self) outputs;
|
inherit (self) outputs;
|
||||||
# Supported systems for your flake packages, shell, etc.
|
# Supported systems for your flake packages, shell, etc.
|
||||||
systems = [
|
systems = [
|
||||||
|
@ -93,8 +56,7 @@
|
||||||
# pass to it, with each system as an argument
|
# pass to it, with each system as an argument
|
||||||
forAllSystems = nixpkgs.lib.genAttrs systems;
|
forAllSystems = nixpkgs.lib.genAttrs systems;
|
||||||
vars = import ./vars.nix;
|
vars = import ./vars.nix;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
# Your custom packages
|
# Your custom packages
|
||||||
# Accessible through 'nix build', 'nix shell', etc
|
# Accessible through 'nix build', 'nix shell', etc
|
||||||
packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system});
|
packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system});
|
||||||
|
@ -103,7 +65,7 @@
|
||||||
formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.alejandra);
|
formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.alejandra);
|
||||||
|
|
||||||
# Your custom packages and modifications, exported as overlays
|
# Your custom packages and modifications, exported as overlays
|
||||||
overlays = import ./overlays { inherit inputs; };
|
overlays = import ./overlays {inherit inputs;};
|
||||||
# Reusable nixos modules you might want to export
|
# Reusable nixos modules you might want to export
|
||||||
# These are usually stuff you would upstream into nixpkgs
|
# These are usually stuff you would upstream into nixpkgs
|
||||||
nixosModules = import ./modules/nixos;
|
nixosModules = import ./modules/nixos;
|
||||||
|
@ -115,25 +77,25 @@
|
||||||
# Available through 'nixos-rebuild --flake .#your-hostname'
|
# Available through 'nixos-rebuild --flake .#your-hostname'
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
adalbert = nixpkgs.lib.nixosSystem {
|
adalbert = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = { inherit inputs outputs vars; };
|
specialArgs = {inherit inputs outputs vars;};
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/adalbert
|
./hosts/adalbert
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
ludwig = nixpkgs.lib.nixosSystem {
|
ludwig = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = { inherit inputs outputs vars; };
|
specialArgs = {inherit inputs outputs vars;};
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/ludwig
|
./hosts/ludwig
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
leopold = nixpkgs.lib.nixosSystem {
|
leopold = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = { inherit inputs outputs vars; };
|
specialArgs = {inherit inputs outputs vars;};
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/leopold
|
./hosts/leopold
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
franz = nixpkgs.lib.nixosSystem {
|
franz = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = { inherit inputs outputs vars; };
|
specialArgs = {inherit inputs outputs vars;};
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/franz
|
./hosts/franz
|
||||||
];
|
];
|
||||||
|
@ -158,7 +120,7 @@
|
||||||
homeConfigurations = {
|
homeConfigurations = {
|
||||||
"${vars.user}@adalbert" = home-manager.lib.homeManagerConfiguration {
|
"${vars.user}@adalbert" = home-manager.lib.homeManagerConfiguration {
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
||||||
extraSpecialArgs = { inherit inputs outputs vars; };
|
extraSpecialArgs = {inherit inputs outputs vars;};
|
||||||
modules = [
|
modules = [
|
||||||
./home/adalbert.nix
|
./home/adalbert.nix
|
||||||
];
|
];
|
||||||
|
@ -166,14 +128,14 @@
|
||||||
};
|
};
|
||||||
"${vars.user}@ludwig" = home-manager.lib.homeManagerConfiguration {
|
"${vars.user}@ludwig" = home-manager.lib.homeManagerConfiguration {
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
||||||
extraSpecialArgs = { inherit inputs outputs vars; };
|
extraSpecialArgs = {inherit inputs outputs vars;};
|
||||||
modules = [
|
modules = [
|
||||||
./home/ludwig.nix
|
./home/ludwig.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
"${vars.user}@franz" = home-manager.lib.homeManagerConfiguration {
|
"${vars.user}@franz" = home-manager.lib.homeManagerConfiguration {
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
||||||
extraSpecialArgs = { inherit inputs outputs vars; };
|
extraSpecialArgs = {inherit inputs outputs vars;};
|
||||||
modules = [
|
modules = [
|
||||||
./home/franz.nix
|
./home/franz.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -11,8 +11,11 @@ in {
|
||||||
./features/games
|
./features/games
|
||||||
./features/coding
|
./features/coding
|
||||||
./features/desktop/common/3d-printing.nix
|
./features/desktop/common/3d-printing.nix
|
||||||
|
inputs.nix-colors.homeManagerModules.default
|
||||||
];
|
];
|
||||||
|
|
||||||
|
colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha;
|
||||||
|
|
||||||
home.packages = [
|
home.packages = [
|
||||||
inputs.picokontroller.packages.x86_64-linux.default
|
inputs.picokontroller.packages.x86_64-linux.default
|
||||||
# pkgs.citrix_workspace
|
# pkgs.citrix_workspace
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
programs.bat = {
|
programs.bat = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
config.theme = "base16";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
programs.btop = {
|
programs.btop = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
color_theme = "nix-colors";
|
||||||
theme_background = false;
|
theme_background = false;
|
||||||
truecolor = true;
|
truecolor = true;
|
||||||
vim_keys = true;
|
vim_keys = true;
|
||||||
|
@ -9,4 +10,89 @@
|
||||||
proc_gradient = false;
|
proc_gradient = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
xdg.configFile."btop/themes/nix-colors".text = ''
|
||||||
|
# Main background, empty for terminal default, need to be empty if you want transparent background
|
||||||
|
# theme[main_bg]="#${config.colorScheme.colors.base00}"
|
||||||
|
|
||||||
|
# Main text color
|
||||||
|
theme[main_fg]="#${config.colorScheme.colors.base05}"
|
||||||
|
|
||||||
|
# Title color for boxes
|
||||||
|
theme[title]="#${config.colorScheme.colors.base05}"
|
||||||
|
|
||||||
|
# Highlight color for keyboard shortcuts
|
||||||
|
theme[hi_fg]="#${config.colorScheme.colors.base0D}"
|
||||||
|
|
||||||
|
# Background color of selected item in processes box
|
||||||
|
theme[selected_bg]="#${config.colorScheme.colors.base03}"
|
||||||
|
|
||||||
|
# Foreground color of selected item in processes box
|
||||||
|
theme[selected_fg]="#${config.colorScheme.colors.base0D}"
|
||||||
|
|
||||||
|
# Color of inactive/disabled text
|
||||||
|
theme[inactive_fg]="#${config.colorScheme.colors.base02}"
|
||||||
|
|
||||||
|
# Color of text appearing on top of graphs, i.e uptime and current network graph scaling
|
||||||
|
theme[graph_text]="#${config.colorScheme.colors.base06}"
|
||||||
|
|
||||||
|
# Background color of the percentage meters
|
||||||
|
theme[meter_bg]="#${config.colorScheme.colors.base03}"
|
||||||
|
|
||||||
|
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
|
||||||
|
theme[proc_misc]="#${config.colorScheme.colors.base06}"
|
||||||
|
|
||||||
|
# CPU, Memory, Network, Proc box outline colors
|
||||||
|
theme[cpu_box]="#${config.colorScheme.colors.base0E}" #Mauve
|
||||||
|
theme[mem_box]="#${config.colorScheme.colors.base0B}" #Green
|
||||||
|
theme[net_box]="#${config.colorScheme.colors.base08}" #Maroon
|
||||||
|
theme[proc_box]="#${config.colorScheme.colors.base0D}" #Blue
|
||||||
|
|
||||||
|
# Box divider line and small boxes line color
|
||||||
|
theme[div_line]="#${config.colorScheme.colors.base04}"
|
||||||
|
|
||||||
|
# Temperature graph color (Green -> Yellow -> Red)
|
||||||
|
theme[temp_start]="#${config.colorScheme.colors.base0B}"
|
||||||
|
theme[temp_mid]="#${config.colorScheme.colors.base0A}"
|
||||||
|
theme[temp_end]="#${config.colorScheme.colors.base08}"
|
||||||
|
|
||||||
|
# CPU graph colors (Teal -> Lavender)
|
||||||
|
theme[cpu_start]="#${config.colorScheme.colors.base0C}"
|
||||||
|
theme[cpu_mid]="#${config.colorScheme.colors.base0D}"
|
||||||
|
theme[cpu_end]="#${config.colorScheme.colors.base07}"
|
||||||
|
|
||||||
|
# Mem/Disk free meter (Mauve -> Lavender -> Blue)
|
||||||
|
theme[free_start]="#${config.colorScheme.colors.base0E}"
|
||||||
|
theme[free_mid]="#${config.colorScheme.colors.base07}"
|
||||||
|
theme[free_end]="#${config.colorScheme.colors.base0D}"
|
||||||
|
|
||||||
|
# Mem/Disk cached meter (Sapphire -> Lavender)
|
||||||
|
theme[cached_start]="#${config.colorScheme.colors.base0D}"
|
||||||
|
theme[cached_mid]="#${config.colorScheme.colors.base0D}"
|
||||||
|
theme[cached_end]="#${config.colorScheme.colors.base07}"
|
||||||
|
|
||||||
|
# Mem/Disk available meter (Peach -> Red)
|
||||||
|
theme[available_start]="#${config.colorScheme.colors.base0F}"
|
||||||
|
theme[available_mid]="#${config.colorScheme.colors.base09}"
|
||||||
|
theme[available_end]="#${config.colorScheme.colors.base08}"
|
||||||
|
|
||||||
|
# Mem/Disk used meter (Green -> Sky)
|
||||||
|
theme[used_start]="#${config.colorScheme.colors.base0B}"
|
||||||
|
theme[used_mid]="#${config.colorScheme.colors.base0C}"
|
||||||
|
theme[used_end]="#${config.colorScheme.colors.base0D}"
|
||||||
|
|
||||||
|
# Download graph colors (Peach -> Red)
|
||||||
|
theme[download_start]="#${config.colorScheme.colors.base0F}"
|
||||||
|
theme[download_mid]="#${config.colorScheme.colors.base09}"
|
||||||
|
theme[download_end]="#${config.colorScheme.colors.base08}"
|
||||||
|
|
||||||
|
# Upload graph colors (Green -> Sky)
|
||||||
|
theme[upload_start]="#${config.colorScheme.colors.base0B}"
|
||||||
|
theme[upload_mid]="#${config.colorScheme.colors.base0C}"
|
||||||
|
theme[upload_end]="#${config.colorScheme.colors.base0D}"
|
||||||
|
|
||||||
|
# Process box color gradient for threads, mem and cpu usage (Sapphire -> Mauve)
|
||||||
|
theme[process_start]="#${config.colorScheme.colors.base0D}"
|
||||||
|
theme[process_mid]="#${config.colorScheme.colors.base0C}"
|
||||||
|
theme[process_end]="#${config.colorScheme.colors.base0E}"
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,21 @@
|
||||||
{config, ...}: {
|
{config, ...}: {
|
||||||
programs.lazygit = {
|
programs.lazygit = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
settings = with config.colorScheme.colors; {
|
||||||
|
gui = {
|
||||||
|
theme = {
|
||||||
|
activeBorderColor = ["#${base0D}" "bold"];
|
||||||
|
inactiveBorderColor = ["#${base05}"];
|
||||||
|
optionsTextColor = ["#${base0D}"];
|
||||||
|
selectedLineBgColor = ["${base02}"];
|
||||||
|
selectedRangeBgColor = ["${base02}"];
|
||||||
|
cherryPickedCommitBgColor = ["#${base03}"];
|
||||||
|
cherryPickedCommitFgColor = ["#${base0D}"];
|
||||||
|
unstagedChangesColor = ["#${base08}"];
|
||||||
|
defaultFgColor = ["#${base05}"];
|
||||||
|
searchingActiveBorderColor = ["#${base0A}"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
imports = [
|
imports = [
|
||||||
# ./nvim
|
./nvim
|
||||||
./nixvim
|
|
||||||
./vscode.nix
|
./vscode.nix
|
||||||
./intellij.nix
|
./intellij.nix
|
||||||
./tmux.nix
|
./tmux.nix
|
||||||
|
|
|
@ -1,95 +0,0 @@
|
||||||
{
|
|
||||||
programs.nixvim.plugins = {
|
|
||||||
cmp-emoji = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
cmp = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
completion = {
|
|
||||||
completeopt = "menu,menuone,noinsert";
|
|
||||||
};
|
|
||||||
autoEnableSources = true;
|
|
||||||
experimental = {ghost_text = true;};
|
|
||||||
performance = {
|
|
||||||
debounce = 60;
|
|
||||||
fetchingTimeout = 200;
|
|
||||||
maxViewEntries = 30;
|
|
||||||
};
|
|
||||||
snippet = {
|
|
||||||
expand = ''
|
|
||||||
function(args)
|
|
||||||
require('luasnip').lsp_expand(args.body)
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
formatting = {fields = ["kind" "abbr" "menu"];};
|
|
||||||
sources = [
|
|
||||||
{name = "nvim_lsp";}
|
|
||||||
{name = "emoji";}
|
|
||||||
{
|
|
||||||
name = "buffer"; # text within current buffer
|
|
||||||
option.get_bufnrs.__raw = "vim.api.nvim_list_bufs";
|
|
||||||
keywordLength = 3;
|
|
||||||
}
|
|
||||||
# { name = "copilot"; } # enable/disable copilot
|
|
||||||
{
|
|
||||||
name = "path"; # file system paths
|
|
||||||
keywordLength = 3;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "luasnip"; # snippets
|
|
||||||
keywordLength = 3;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
window = {
|
|
||||||
completion = {border = "solid";};
|
|
||||||
documentation = {border = "solid";};
|
|
||||||
};
|
|
||||||
|
|
||||||
mapping = {
|
|
||||||
"<Tab>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
|
|
||||||
"<C-j>" = "cmp.mapping.select_next_item()";
|
|
||||||
"<C-k>" = "cmp.mapping.select_prev_item()";
|
|
||||||
"<C-e>" = "cmp.mapping.abort()";
|
|
||||||
"<C-b>" = "cmp.mapping.scroll_docs(-4)";
|
|
||||||
"<C-f>" = "cmp.mapping.scroll_docs(4)";
|
|
||||||
"<C-Space>" = "cmp.mapping.complete()";
|
|
||||||
"<CR>" = "cmp.mapping.confirm({ select = true })";
|
|
||||||
"<S-CR>" = "cmp.mapping.confirm({ behavior = cmp.ConfirmBehavior.Replace, select = true })";
|
|
||||||
"<C-l>" = ''
|
|
||||||
cmp.mapping(function()
|
|
||||||
if luasnip.expand_or_locally_jumpable() then
|
|
||||||
luasnip.expand_or_jump()
|
|
||||||
end
|
|
||||||
end, { 'i', 's' })
|
|
||||||
'';
|
|
||||||
"<C-h>" = ''
|
|
||||||
cmp.mapping(function()
|
|
||||||
if luasnip.locally_jumpable(-1) then
|
|
||||||
luasnip.jump(-1)
|
|
||||||
end
|
|
||||||
end, { 'i', 's' })
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
cmp-nvim-lsp = {
|
|
||||||
enable = true; # LSP
|
|
||||||
};
|
|
||||||
cmp-buffer = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
cmp-path = {
|
|
||||||
enable = true; # file system paths
|
|
||||||
};
|
|
||||||
cmp_luasnip = {
|
|
||||||
enable = true; # snippets
|
|
||||||
};
|
|
||||||
cmp-cmdline = {
|
|
||||||
enable = true; # autocomplete for cmdline
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{inputs, ...}: {
|
|
||||||
imports = [
|
|
||||||
inputs.nixvim.homeManagerModules.nixvim
|
|
||||||
./options.nix
|
|
||||||
./plugins.nix
|
|
||||||
./cmp.nix
|
|
||||||
./lsp.nix
|
|
||||||
./none-ls.nix
|
|
||||||
./keymaps.nix
|
|
||||||
];
|
|
||||||
programs.nixvim.enable = true;
|
|
||||||
}
|
|
|
@ -1,112 +0,0 @@
|
||||||
{
|
|
||||||
programs.nixvim.keymaps = [
|
|
||||||
{
|
|
||||||
mode = [
|
|
||||||
"n"
|
|
||||||
"v"
|
|
||||||
];
|
|
||||||
key = "<leader>fc";
|
|
||||||
action = "<cmd>lua vim.lsp.buf.format()<cr>";
|
|
||||||
options = {
|
|
||||||
silent = true;
|
|
||||||
desc = "Format Code";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<leader>ch";
|
|
||||||
action = "<cmd>noh<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Clear Highlighting";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<C-p>";
|
|
||||||
action = "<cmd>Telescope live_grep<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Telescope LiveGrep";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<leader>fg";
|
|
||||||
action = "<cmd>Telescope find_files<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Telescope File Search";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<C-n>";
|
|
||||||
action = "<Cmd>Neotree toggle<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Toggle Neotree";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<leader><tab><tab>";
|
|
||||||
action = "<cmd>tabnew<cr>";
|
|
||||||
options = {
|
|
||||||
desc = "New Tab";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<leader><tab>]";
|
|
||||||
action = "<cmd>BufferNext<cr>";
|
|
||||||
options = {
|
|
||||||
desc = "Next Tab";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<leader><tab>d";
|
|
||||||
action = "<cmd>BufferClose<cr>";
|
|
||||||
options = {
|
|
||||||
desc = "Close Tab";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<leader><tab>[";
|
|
||||||
action = "<cmd>BufferPrevious<cr>";
|
|
||||||
options = {
|
|
||||||
desc = "Previous Tab";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<c-k>";
|
|
||||||
action = ":wincmd k<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Go Up";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<c-j>";
|
|
||||||
action = ":wincmd j<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Go Down";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<c-h>";
|
|
||||||
action = ":wincmd h<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Go Left";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
key = "<c-l>";
|
|
||||||
action = ":wincmd l<CR>";
|
|
||||||
options = {
|
|
||||||
desc = "Go Right";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,25 +0,0 @@
|
||||||
{
|
|
||||||
programs.nixvim.plugins.lsp = {
|
|
||||||
enable = true;
|
|
||||||
inlayHints = true;
|
|
||||||
|
|
||||||
servers = {
|
|
||||||
ts_ls.enable = true; # TS/JS
|
|
||||||
cssls.enable = true; # CSS
|
|
||||||
html.enable = true; # HTML
|
|
||||||
pyright.enable = true; # Python
|
|
||||||
marksman.enable = true; # Markdown
|
|
||||||
nil_ls.enable = true; # Nix
|
|
||||||
dockerls.enable = true; # Docker
|
|
||||||
bashls.enable = true; # Bash
|
|
||||||
clangd.enable = true; # C/C++
|
|
||||||
yamlls.enable = true; # YAML
|
|
||||||
|
|
||||||
lua_ls = {
|
|
||||||
# Lua
|
|
||||||
enable = true;
|
|
||||||
settings.telemetry.enable = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,42 +0,0 @@
|
||||||
{
|
|
||||||
programs.nixvim.plugins = {
|
|
||||||
none-ls = {
|
|
||||||
enable = true;
|
|
||||||
sources = {
|
|
||||||
code_actions = {
|
|
||||||
statix.enable = true;
|
|
||||||
gitsigns.enable = true;
|
|
||||||
};
|
|
||||||
diagnostics = {
|
|
||||||
statix.enable = true;
|
|
||||||
deadnix.enable = true;
|
|
||||||
pylint.enable = true;
|
|
||||||
checkstyle.enable = true;
|
|
||||||
};
|
|
||||||
formatting = {
|
|
||||||
alejandra.enable = true;
|
|
||||||
stylua.enable = true;
|
|
||||||
shfmt.enable = true;
|
|
||||||
nixpkgs_fmt.enable = true;
|
|
||||||
google_java_format.enable = false;
|
|
||||||
prettier = {
|
|
||||||
enable = true;
|
|
||||||
disableTsServerFormatter = true;
|
|
||||||
};
|
|
||||||
black = {
|
|
||||||
enable = true;
|
|
||||||
settings = ''
|
|
||||||
{
|
|
||||||
extra_args = { "--fast" },
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
completion = {
|
|
||||||
luasnip.enable = true;
|
|
||||||
spell.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
{
|
|
||||||
programs.nixvim = {
|
|
||||||
config = {
|
|
||||||
# System clipboard support, needs xclip/wl-clipboard
|
|
||||||
clipboard = {
|
|
||||||
providers = {
|
|
||||||
wl-copy.enable = true; # Wayland
|
|
||||||
xsel.enable = true; # For X11
|
|
||||||
};
|
|
||||||
register = "unnamedplus";
|
|
||||||
};
|
|
||||||
globals.mapleader = " ";
|
|
||||||
opts = {
|
|
||||||
number = true; # Show line numbers
|
|
||||||
relativenumber = true; # Show relative line numbers
|
|
||||||
shiftwidth = 2; # Tab width should be 2
|
|
||||||
|
|
||||||
# Always show the signcolumn, otherwise text would be shifted when displaying error icons
|
|
||||||
signcolumn = "yes";
|
|
||||||
|
|
||||||
# Enable mouse
|
|
||||||
mouse = "a";
|
|
||||||
|
|
||||||
# Search
|
|
||||||
ignorecase = true;
|
|
||||||
smartcase = true;
|
|
||||||
|
|
||||||
# Save undo history
|
|
||||||
undofile = true;
|
|
||||||
|
|
||||||
# Global substitution by default
|
|
||||||
gdefault = true;
|
|
||||||
|
|
||||||
# Start scrolling when the cursor is X lines away from the top/bottom
|
|
||||||
scrolloff = 8;
|
|
||||||
|
|
||||||
# Enable 24-bit RGB color in the TUI
|
|
||||||
termguicolors = true;
|
|
||||||
|
|
||||||
# Wrap long lines at a character in 'breakat'
|
|
||||||
linebreak = true;
|
|
||||||
|
|
||||||
smartindent = true;
|
|
||||||
|
|
||||||
# Remove EOB
|
|
||||||
fillchars = {
|
|
||||||
eob = " ";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,112 +0,0 @@
|
||||||
{ pkgs, ... }: {
|
|
||||||
programs.nixvim.plugins = {
|
|
||||||
lualine.enable = true;
|
|
||||||
oil.enable = true;
|
|
||||||
nvim-surround.enable = true;
|
|
||||||
|
|
||||||
treesitter = {
|
|
||||||
enable = true;
|
|
||||||
grammarPackages = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [
|
|
||||||
markdown
|
|
||||||
# nix
|
|
||||||
vim
|
|
||||||
bash
|
|
||||||
lua
|
|
||||||
python
|
|
||||||
json
|
|
||||||
java
|
|
||||||
rust
|
|
||||||
cpp
|
|
||||||
c
|
|
||||||
css
|
|
||||||
csv
|
|
||||||
dockerfile
|
|
||||||
diff
|
|
||||||
gitignore
|
|
||||||
git_config
|
|
||||||
gitattributes
|
|
||||||
make
|
|
||||||
yaml
|
|
||||||
toml
|
|
||||||
typescript
|
|
||||||
xml
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
# Autopairs
|
|
||||||
nvim-autopairs = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
luasnip.enable = true;
|
|
||||||
lazygit.enable = true;
|
|
||||||
barbar.enable = true;
|
|
||||||
rainbow-delimiters.enable = true;
|
|
||||||
web-devicons.enable = true;
|
|
||||||
|
|
||||||
telescope = {
|
|
||||||
enable = true;
|
|
||||||
extensions = {
|
|
||||||
fzf-native = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Dashboard
|
|
||||||
alpha = {
|
|
||||||
enable = true;
|
|
||||||
theme = "dashboard";
|
|
||||||
};
|
|
||||||
# File tree
|
|
||||||
neo-tree = {
|
|
||||||
enable = true;
|
|
||||||
enableDiagnostics = false;
|
|
||||||
enableGitStatus = true;
|
|
||||||
enableModifiedMarkers = true;
|
|
||||||
enableRefreshOnWrite = true;
|
|
||||||
closeIfLastWindow = true;
|
|
||||||
popupBorderStyle = "rounded"; # Type: null or one of “NC”, “double”, “none”, “rounded”, “shadow”, “single”, “solid” or raw lua code
|
|
||||||
buffers = {
|
|
||||||
bindToCwd = false;
|
|
||||||
followCurrentFile = {
|
|
||||||
enabled = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
window = {
|
|
||||||
width = 40;
|
|
||||||
height = 15;
|
|
||||||
autoExpandWidth = false;
|
|
||||||
mappings = {
|
|
||||||
"<space>" = "none";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Todo comments
|
|
||||||
todo-comments = {
|
|
||||||
enable = true;
|
|
||||||
settings.colors = {
|
|
||||||
error = [ "DiagnosticError" "ErrorMsg" "#DC2626" ];
|
|
||||||
warning = [ "DiagnosticWarn" "WarningMsg" "#FBBF24" ];
|
|
||||||
info = [ "DiagnosticInfo" "#2563EB" ];
|
|
||||||
hint = [ "DiagnosticHint" "#10B981" ];
|
|
||||||
default = [ "Identifier" "#7C3AED" ];
|
|
||||||
test = [ "Identifier" "#FF00FF" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Highlight word under cursor
|
|
||||||
illuminate = {
|
|
||||||
enable = true;
|
|
||||||
underCursor = false;
|
|
||||||
filetypesDenylist = [
|
|
||||||
"Outline"
|
|
||||||
"TelescopePrompt"
|
|
||||||
"alpha"
|
|
||||||
"harpoon"
|
|
||||||
"reason"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -6,6 +6,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
vars = import ../../../../vars.nix;
|
vars = import ../../../../vars.nix;
|
||||||
|
colors = config.colorScheme.colors;
|
||||||
stableExtraPkgs = with pkgs; [
|
stableExtraPkgs = with pkgs; [
|
||||||
# LSP
|
# LSP
|
||||||
lua-language-server
|
lua-language-server
|
||||||
|
@ -133,6 +134,18 @@ in {
|
||||||
|
|
||||||
vim-nix
|
vim-nix
|
||||||
|
|
||||||
|
{
|
||||||
|
plugin = base16-nvim;
|
||||||
|
config = ''
|
||||||
|
require('base16-colorscheme').setup({
|
||||||
|
base00 = '#${colors.base00}', base01 = '#${colors.base01}', base02 = '#${colors.base02}', base03 = '#${colors.base03}',
|
||||||
|
base04 = '#${colors.base04}', base05 = '#${colors.base05}', base06 = '#${colors.base06}', base07 = '#${colors.base07}',
|
||||||
|
base08 = '#${colors.base08}', base09 = '#${colors.base09}', base0A = '#${colors.base0A}', base0B = '#${colors.base0B}',
|
||||||
|
base0C = '#${colors.base0C}', base0D = '#${colors.base0D}', base0E = '#${colors.base0E}', base0F = '#${colors.base0F}',
|
||||||
|
})'';
|
||||||
|
type = "lua";
|
||||||
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = lualine-nvim;
|
plugin = lualine-nvim;
|
||||||
config = builtins.readFile ./plugin/lualine.lua;
|
config = builtins.readFile ./plugin/lualine.lua;
|
||||||
|
|
|
@ -44,7 +44,7 @@ require("lspconfig").nixd.setup({
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
})
|
})
|
||||||
|
|
||||||
require("lspconfig").ts_lsp.setup({
|
require("lspconfig").tsserver.setup({
|
||||||
on_attach = on_attach,
|
on_attach = on_attach,
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
})
|
})
|
||||||
|
|
|
@ -31,6 +31,9 @@ in {
|
||||||
];
|
];
|
||||||
userSettings = {
|
userSettings = {
|
||||||
#Theming
|
#Theming
|
||||||
|
"workbench.colorTheme" = "Catppuccin Mocha";
|
||||||
|
"catppuccin.accentColor" = "green";
|
||||||
|
"workbench.iconTheme" = "material-icon-theme";
|
||||||
"window.menuBarVisibility" = "toggle";
|
"window.menuBarVisibility" = "toggle";
|
||||||
"editor.minimap.autohide" = false;
|
"editor.minimap.autohide" = false;
|
||||||
#Extensions - General
|
#Extensions - General
|
||||||
|
|
|
@ -1,9 +1,47 @@
|
||||||
{
|
{pkgs, ...}: {
|
||||||
programs.zathura = {
|
programs.zathura = {
|
||||||
enable = true;
|
enable = true;
|
||||||
options = {
|
options = {
|
||||||
selection-clipboard = "clipboard";
|
selection-clipboard = "clipboard";
|
||||||
statusbar-home-tilde = true;
|
statusbar-home-tilde = true;
|
||||||
|
|
||||||
|
default-fg = "#CDD6F4";
|
||||||
|
default-bg = "#1E1E2E";
|
||||||
|
|
||||||
|
completion-bg = "#313244";
|
||||||
|
completion-fg = "#CDD6F4";
|
||||||
|
completion-highlight-bg = "#575268";
|
||||||
|
completion-highlight-fg = "#CDD6F4";
|
||||||
|
completion-group-bg = "#313244";
|
||||||
|
completion-group-fg = "#89B4FA";
|
||||||
|
|
||||||
|
statusbar-fg = "#CDD6F4";
|
||||||
|
statusbar-bg = "#313244";
|
||||||
|
|
||||||
|
notification-bg = "#313244";
|
||||||
|
notification-fg = "#CDD6F4";
|
||||||
|
notification-error-bg = "#313244";
|
||||||
|
notification-error-fg = "#F38BA8";
|
||||||
|
notification-warning-bg = "#313244";
|
||||||
|
notification-warning-fg = "#FAE3B0";
|
||||||
|
|
||||||
|
inputbar-fg = "#CDD6F4";
|
||||||
|
inputbar-bg = "#313244";
|
||||||
|
|
||||||
|
recolor-lightcolor = "#1E1E2E";
|
||||||
|
recolor-darkcolor = "#CDD6F4";
|
||||||
|
|
||||||
|
index-fg = "#CDD6F4";
|
||||||
|
index-bg = "#1E1E2E";
|
||||||
|
index-active-fg = "#CDD6F4";
|
||||||
|
index-active-bg = "#313244";
|
||||||
|
|
||||||
|
render-loading-bg = "#1E1E2E";
|
||||||
|
render-loading-fg = "#CDD6F4";
|
||||||
|
|
||||||
|
highlight-color = "#575268";
|
||||||
|
highlight-fg = "#F5C2E7";
|
||||||
|
highlight-active-color = "#F5C2E7";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
imports = [
|
imports = [
|
||||||
|
./theming.nix
|
||||||
./firefox.nix
|
./firefox.nix
|
||||||
|
./alacritty.nix
|
||||||
./wezterm.nix
|
./wezterm.nix
|
||||||
./font.nix
|
./font.nix
|
||||||
./playerctl.nix
|
./playerctl.nix
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
{ inputs
|
{
|
||||||
, pkgs
|
inputs,
|
||||||
, vars
|
pkgs,
|
||||||
, ...
|
vars,
|
||||||
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [ inputs.arkenfox.hmModules.default ];
|
imports = [inputs.arkenfox.hmModules.default];
|
||||||
home.file.".mozilla/native-messaging-hosts/org.kde.plasma.browser_integration.json".source = "${pkgs.plasma5Packages.plasma-browser-integration}/lib/mozilla/native-messaging-hosts/org.kde.plasma.browser_integration.json";
|
home.file.".mozilla/native-messaging-hosts/org.kde.plasma.browser_integration.json".source = "${pkgs.plasma5Packages.plasma-browser-integration}/lib/mozilla/native-messaging-hosts/org.kde.plasma.browser_integration.json";
|
||||||
|
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
|
@ -21,10 +22,6 @@
|
||||||
darkreader
|
darkreader
|
||||||
tabliss
|
tabliss
|
||||||
consent-o-matic
|
consent-o-matic
|
||||||
floccus
|
|
||||||
gesturefy
|
|
||||||
plasma-integration
|
|
||||||
libredirect
|
|
||||||
# bypass-paywalls-clean
|
# bypass-paywalls-clean
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -47,13 +44,13 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
definedAliases = [ "@np" ];
|
definedAliases = ["@np"];
|
||||||
};
|
};
|
||||||
|
|
||||||
"Home Manager" = {
|
"Home Manager" = {
|
||||||
urls = [
|
urls = [
|
||||||
{
|
{
|
||||||
template = "https://home-manager-options.extranix.com";
|
template = "https://mipmip.github.io/home-manager-option-search";
|
||||||
params = [
|
params = [
|
||||||
{
|
{
|
||||||
name = "query";
|
name = "query";
|
||||||
|
@ -64,7 +61,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
definedAliases = [ "@hm" ];
|
definedAliases = ["@hm"];
|
||||||
};
|
};
|
||||||
|
|
||||||
"Searx" = {
|
"Searx" = {
|
||||||
|
@ -81,7 +78,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
iconUpdateURL = "https://paulgo.io/favicon.ico";
|
iconUpdateURL = "https://paulgo.io/favicon.ico";
|
||||||
definedAliases = [ "@sx" ];
|
definedAliases = ["@sx"];
|
||||||
};
|
};
|
||||||
|
|
||||||
"Amazon" = {
|
"Amazon" = {
|
||||||
|
@ -98,7 +95,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
iconUpdateURL = "https://amazon.de/favicon.ico";
|
iconUpdateURL = "https://amazon.de/favicon.ico";
|
||||||
definedAliases = [ "@a" ];
|
definedAliases = ["@a"];
|
||||||
};
|
};
|
||||||
|
|
||||||
"YouTube" = {
|
"YouTube" = {
|
||||||
|
@ -115,7 +112,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
iconUpdateURL = "https://piped.video/favicon.ico";
|
iconUpdateURL = "https://piped.video/favicon.ico";
|
||||||
definedAliases = [ "yt" ];
|
definedAliases = ["yt"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
search.force = true;
|
search.force = true;
|
||||||
|
@ -190,9 +187,9 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.mimeApps.defaultApplications = {
|
xdg.mimeApps.defaultApplications = {
|
||||||
"text/html" = [ "firefox.desktop" ];
|
"text/html" = ["firefox.desktop"];
|
||||||
"text/xml" = [ "firefox.desktop" ];
|
"text/xml" = ["firefox.desktop"];
|
||||||
"x-scheme-handler/http" = [ "firefox.desktop" ];
|
"x-scheme-handler/http" = ["firefox.desktop"];
|
||||||
"x-scheme-handler/https" = [ "firefox.desktop" ];
|
"x-scheme-handler/https" = ["firefox.desktop"];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
services.flatpak = {
|
services.flatpak = {
|
||||||
remotes.flathub = "https://flathub.org/repo/flathub.flatpakrepo";
|
remotes.flathub = "https://flathub.org/repo/flathub.flatpakrepo";
|
||||||
packages = [
|
packages = [
|
||||||
|
"flathub:app/us.zoom.Zoom//stable"
|
||||||
|
"flathub:app/com.discordapp.Discord//stable"
|
||||||
"flathub:app/md.obsidian.Obsidian//stable"
|
"flathub:app/md.obsidian.Obsidian//stable"
|
||||||
"flathub:app/com.github.iwalton3.jellyfin-media-player//stable"
|
"flathub:app/com.github.iwalton3.jellyfin-media-player//stable"
|
||||||
];
|
];
|
||||||
|
|
33
home/features/desktop/common/theming.nix
Normal file
33
home/features/desktop/common/theming.nix
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
{pkgs, ...}: {
|
||||||
|
home.pointerCursor = {
|
||||||
|
package = pkgs.bibata-cursors;
|
||||||
|
name = "Bibata-Modern-Ice";
|
||||||
|
size = 25;
|
||||||
|
x11.enable = true;
|
||||||
|
gtk.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# gtk.cursorTheme.package = pkgs.bibata-cursors;
|
||||||
|
# gtk.cursorTheme.name = "Bibata-Modern-Ice";
|
||||||
|
# home.file.".icons/bibata".source = "${pkgs.bibata-cursors}/share/icons/Bibata-Modern-Classic";
|
||||||
|
# xdg.dataFile."icons/bibata".source = "${pkgs.bibata-cursors}/share/icons/Bibata-Modern-Classic";
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
theme.package = pkgs.adw-gtk3;
|
||||||
|
theme.name = "adw-gtk3-dark";
|
||||||
|
iconTheme.package = pkgs.papirus-icon-theme;
|
||||||
|
iconTheme.name = "Papirus";
|
||||||
|
};
|
||||||
|
|
||||||
|
qt = {
|
||||||
|
enable = true;
|
||||||
|
platformTheme.name = "gtk";
|
||||||
|
style.package = with pkgs; [adwaita-qt adwaita-qt6];
|
||||||
|
style.name = "adwaita-dark";
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
libsForQt5.qt5.qtquickcontrols2
|
||||||
|
libsForQt5.qt5.qtgraphicaleffects
|
||||||
|
];
|
||||||
|
}
|
|
@ -5,11 +5,44 @@
|
||||||
}: {
|
}: {
|
||||||
programs.wezterm = {
|
programs.wezterm = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
colorSchemes = {
|
||||||
|
"${config.colorscheme.slug}" = with config.colorScheme; {
|
||||||
|
foreground = "#${colors.base05}";
|
||||||
|
background = "#${colors.base00}";
|
||||||
|
|
||||||
|
ansi = [
|
||||||
|
"#${colors.base00}"
|
||||||
|
"#${colors.base08}"
|
||||||
|
"#${colors.base0B}"
|
||||||
|
"#${colors.base0A}"
|
||||||
|
"#${colors.base0D}"
|
||||||
|
"#${colors.base0E}"
|
||||||
|
"#${colors.base0C}"
|
||||||
|
"#${colors.base05}"
|
||||||
|
];
|
||||||
|
brights = [
|
||||||
|
"#${colors.base03}"
|
||||||
|
"#${colors.base08}"
|
||||||
|
"#${colors.base0B}"
|
||||||
|
"#${colors.base0A}"
|
||||||
|
"#${colors.base0D}"
|
||||||
|
"#${colors.base0E}"
|
||||||
|
"#${colors.base0C}"
|
||||||
|
"#${colors.base07}"
|
||||||
|
];
|
||||||
|
cursor_fg = "#${colors.base00}";
|
||||||
|
cursor_bg = "#${colors.base05}";
|
||||||
|
selection_fg = "#${colors.base00}";
|
||||||
|
selection_bg = "#${colors.base05}";
|
||||||
|
};
|
||||||
|
};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
return {
|
return {
|
||||||
front_end = "WebGpu", -- fixes https://github.com/wez/wezterm/issues/5990H
|
|
||||||
warn_about_missing_glyphs=false,
|
warn_about_missing_glyphs=false,
|
||||||
-- window_background_opacity = 0.83,
|
font = wezterm.font("${config.fontProfiles.monospace.family}"),
|
||||||
|
font_size = 12.0,
|
||||||
|
window_background_opacity = 0.83,
|
||||||
|
color_scheme = "${config.colorscheme.slug}",
|
||||||
hide_tab_bar_if_only_one_tab = true,
|
hide_tab_bar_if_only_one_tab = true,
|
||||||
window_close_confirmation = "NeverPrompt",
|
window_close_confirmation = "NeverPrompt",
|
||||||
use_ime = true,
|
use_ime = true,
|
||||||
|
|
|
@ -8,8 +8,11 @@ in {
|
||||||
./global
|
./global
|
||||||
./features/coding/nvim
|
./features/coding/nvim
|
||||||
./features/coding/tmux.nix
|
./features/coding/tmux.nix
|
||||||
|
inputs.nix-colors.homeManagerModules.default
|
||||||
];
|
];
|
||||||
|
|
||||||
|
colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha;
|
||||||
|
|
||||||
home.file.".docker" = {
|
home.file.".docker" = {
|
||||||
source = ../rsc/docker/franz;
|
source = ../rsc/docker/franz;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
|
|
|
@ -10,10 +10,12 @@ in {
|
||||||
./features/desktop/awesome
|
./features/desktop/awesome
|
||||||
./features/desktop/gnome
|
./features/desktop/gnome
|
||||||
./features/coding
|
./features/coding
|
||||||
|
inputs.nix-colors.homeManagerModules.default
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [nextcloud-client];
|
home.packages = with pkgs; [nextcloud-client];
|
||||||
|
|
||||||
|
colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha;
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
config = {
|
config = {
|
||||||
permittedInsecurePackages = [
|
permittedInsecurePackages = [
|
||||||
|
|
|
@ -1,37 +0,0 @@
|
||||||
{
|
|
||||||
inputs,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [inputs.stylix.nixosModules.stylix];
|
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
|
||||||
polarity = "dark";
|
|
||||||
image = ../../../rsc/wallpaper/rolltreppe-gluehwein.jpg;
|
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
|
|
||||||
|
|
||||||
# targets = {nixvim.transparentBackground.signColumn = true;};
|
|
||||||
|
|
||||||
cursor = {
|
|
||||||
package = pkgs.bibata-cursors;
|
|
||||||
name = "Bibata-Modern-Ice";
|
|
||||||
size = 25;
|
|
||||||
};
|
|
||||||
|
|
||||||
fonts = {
|
|
||||||
monospace = {
|
|
||||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
|
||||||
name = "JetBrainsMono Nerd Font Mono";
|
|
||||||
};
|
|
||||||
sansSerif = {
|
|
||||||
package = pkgs.dejavu_fonts;
|
|
||||||
name = "DejaVu Sans";
|
|
||||||
};
|
|
||||||
serif = {
|
|
||||||
package = pkgs.dejavu_fonts;
|
|
||||||
name = "DejaVu Serif";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -35,7 +35,6 @@
|
||||||
../common/optional/udisks.nix
|
../common/optional/udisks.nix
|
||||||
../common/optional/tailscale.nix
|
../common/optional/tailscale.nix
|
||||||
../common/optional/fhs-compat.nix
|
../common/optional/fhs-compat.nix
|
||||||
../common/optional/stylix.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
|
|
|
@ -17,7 +17,7 @@ local my_table = awful.util.table or gears.table -- 4.{0,1} compatibility
|
||||||
local theme = {}
|
local theme = {}
|
||||||
theme.dir = os.getenv("HOME") .. "/.config/awesome/"
|
theme.dir = os.getenv("HOME") .. "/.config/awesome/"
|
||||||
theme.wallpaper_dir = os.getenv("HOME") .. "/.wallpapers/"
|
theme.wallpaper_dir = os.getenv("HOME") .. "/.wallpapers/"
|
||||||
theme.wallpaper = theme.wallpaper_dir .. "/rolltreppe-gluehwein.jpg"
|
theme.wallpaper = theme.wallpaper_dir .. "/rolltreppe-glühwein.jpg"
|
||||||
theme.font = "JetBrainsMono Nerd Font 9"
|
theme.font = "JetBrainsMono Nerd Font 9"
|
||||||
theme.fg_normal = colors.text
|
theme.fg_normal = colors.text
|
||||||
theme.fg_focus = colors.teal
|
theme.fg_focus = colors.teal
|
||||||
|
|
Before Width: | Height: | Size: 11 MiB After Width: | Height: | Size: 11 MiB |
Loading…
Reference in a new issue