Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
448 changes: 302 additions & 146 deletions flake.lock

Large diffs are not rendered by default.

18 changes: 11 additions & 7 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,6 @@

nixpkgs.url = "github:NixOs/nixpkgs/nixos-unstable";
rust-overlay.url = "github:oxalica/rust-overlay";
eww-wayland.url = "github:elkowar/eww";
# tmp fix https://github.com/elkowar/eww/issues/817
# eww-wayland.inputs.nixpkgs.follows = "nixpkgs-wayland";
# eww-wayland.inputs.rust-overlay.follows = "rust-overlay";

# Home manager
home-manager.url = "github:nix-community/home-manager";
Expand All @@ -22,9 +18,12 @@
# TODO: Add any other flake you might need
# hardware.url = "github:nixos/nixos-hardware";

# nixify themex and make everything match nicely with nix-colors!
# TODO: remove and switch to stylix completely
nix-colors.url = "github:misterio77/nix-colors";

# stylix
stylix.url = "github:danth/stylix";

pre-commit-hooks.url = "github:cachix/pre-commit-hooks.nix";
};

Expand All @@ -34,6 +33,7 @@
pre-commit-hooks,
home-manager,
hyprland,
stylix,
...
} @ inputs: {
checks.x86_64-linux = {
Expand Down Expand Up @@ -61,7 +61,7 @@
modules = [
./hosts/framnix/configuration.nix
hyprland.nixosModules.default
# { programs.hyprland.enable = true; }
stylix.nixosModules.stylix
];
};

Expand All @@ -71,7 +71,7 @@
modules = [
./hosts/DanPC/configuration.nix
hyprland.nixosModules.default
# { programs.hyprland.enable = true; }
stylix.nixosModules.stylix
];
};
};
Expand All @@ -87,6 +87,8 @@
./lib/default.nix
./home/default.nix
./hosts/framnix/default.nix
stylix.homeManagerModules.stylix
./hosts/framnix/stylix.nix
hyprland.homeManagerModules.default
{
wayland.windowManager.hyprland.enable = true;
Expand All @@ -106,6 +108,8 @@
./lib/default.nix
./home/default.nix
./hosts/DanPC/default.nix
stylix.homeManagerModules.stylix
./hosts/DanPC/stylix.nix
hyprland.homeManagerModules.default
{
wayland.windowManager.hyprland.enable = true;
Expand Down
2 changes: 1 addition & 1 deletion home/.config/eww/eww.scss
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ $orange: #fab387;
color: $text-color;
border-radius: 1.2rem;
border: 0.05rem solid $accent-color;
font-size: 1.5rem;
font-size: 1.0rem;
}

.bar {
Expand Down
79 changes: 45 additions & 34 deletions home/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
lib,
config,
pkgs,
stylix,
...
}: {
# You can import other home-manager modules here
Expand Down Expand Up @@ -42,32 +43,48 @@
};
};

# TODO: Set your username
home = {
username = "dan";
homeDirectory = "/home/dan";
};

stylix.image = ./.config/wallpapers/catppuccin-forrest.png;
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
stylix.fonts = {
monospace = {
package = pkgs.nerdfonts.override {fonts = ["FiraCode"];};
name = "FiraCode Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
stylix.opacity.terminal = 0.9;

# managing these manually
stylix.targets.vscode.enable = false;

colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha;
programs.dircolors.enable = true;
programs.bat = {
enable = true;
config = {
pager = "less -FR";
theme = "CatppuccinMocha";
# theme = "CatppuccinMocha";
};
extraPackages = with pkgs.bat-extras; [batdiff batman batgrep batwatch];
themes = {
CatppuccinMocha = {
src = pkgs.fetchFromGitHub {
owner = "catppuccin";
repo = "bat"; # Bat uses sublime syntax for its themes
rev = "ba4d16880d63e656acced2b7d4e034e4a93f74b1";
sha256 = "1g2r6j33f4zys853i1c5gnwcdbwb6xv5w6pazfdslxf69904lrg9";
};
file = "Catppuccin-mocha.tmTheme";
};
};
# themes = {
# CatppuccinMocha = {
# src = pkgs.fetchFromGitHub {
# owner = "catppuccin";
# repo = "bat"; # Bat uses sublime syntax for its themes
# rev = "ba4d16880d63e656acced2b7d4e034e4a93f74b1";
# sha256 = "1g2r6j33f4zys853i1c5gnwcdbwb6xv5w6pazfdslxf69904lrg9";
# };
# file = "Catppuccin-mocha.tmTheme";
# };
# };
};

fonts.fontconfig.enable = true;
Expand All @@ -94,10 +111,9 @@

# wayland/DE
libnotify # notify-send command
mako
# mako
swaylock
wofi
waybar
hyprpaper
hyprpicker
grim
Expand All @@ -109,6 +125,7 @@
alacritty
kitty
ranger
dconf # needed for smth with gtk

# audio
pipewire
Expand All @@ -123,7 +140,6 @@
wget
zsh
starship
zellij
eza
pfetch
neofetch
Expand All @@ -141,8 +157,6 @@
}
)
recursive # for eww
fira-code
fira-code-symbols
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
Expand Down Expand Up @@ -220,31 +234,28 @@
recursive = true;
source = ./.config/wallpapers;
};

# Cursor
home.pointerCursor = {
name = "Catppuccin-Mocha-Dark-Cursors";
package = pkgs.catppuccin-cursors.mochaDark;
size = 16;
};

# mako (notifications) config
xdg.configFile."mako" = {
recursive = true;
source = ./.config/mako;
};
# xdg.configFile."mako" = {
# recursive = true;
# source = ./.config/mako;
# };

services.mako.enable = true;

# wofi (app launcher)
xdg.configFile."wofi" = {
recursive = true;
source = ./.config/wofi;
};

programs.swaylock.enable = true;
programs.zellij.enable = true;

# swaylock
xdg.configFile."swaylock" = {
recursive = true;
source = ./.config/swaylock;
};
# xdg.configFile."swaylock" = {
# recursive = true;
# source = ./.config/swaylock;
# };
xdg.configFile."helix" = {
recursive = true;
source = ./.config/helix;
Expand Down
1 change: 0 additions & 1 deletion home/eww.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
];
programs.eww = {
enable = true;
package = pkgs.eww-wayland;
configDir = ./.config/eww;
};
# Needed for music widget
Expand Down
6 changes: 0 additions & 6 deletions home/terminals/kitty.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,6 @@
in {
programs.kitty = {
enable = true;
font = {
name = default.terminal.font;
};
theme = "Catppuccin-Mocha";
settings = {
scrollback_lines = 10000;
placement_strategy = "center";
Expand All @@ -27,8 +23,6 @@ in {

selection_foreground = "none";
selection_background = "none";

background_opacity = toString default.terminal.opacity;
};
};
}
9 changes: 7 additions & 2 deletions hosts/DanPC/configuration.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,17 @@
config,
lib,
pkgs,
stylix,
...
}: {
}: let
settings = import ./settings.nix;
in {
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix
./stylix.nix
../configuration.nix
];

networking.hostName = "DanPC";

hardware.opengl = {
Expand All @@ -32,6 +35,8 @@
package = config.boot.kernelPackages.nvidiaPackages.stable;
};

environment.variables."GDK_SCALE" = "2";

# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
# and migrated your data accordingly.
#
Expand Down
2 changes: 0 additions & 2 deletions hosts/DanPC/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
}: let
settings = import ./settings.nix;
in {
programs.kitty.font.size = settings.font.size;

xdg.configFile.".hostSettings/settings.scss" = {
text = ''
@mixing rootContainer {
Expand Down
23 changes: 23 additions & 0 deletions hosts/DanPC/stylix.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{
config,
lib,
pkgs,
stylix,
...
}: {
stylix.cursor = {
name = "Catppuccin-Mocha-Dark-Cursors";
size = 64;
package = pkgs.catppuccin-cursors.mochaDark;
};

stylix.fonts.sizes = {
applications = 20;
desktop = 20;
popups = 20;
terminal = 20;
};
}
13 changes: 13 additions & 0 deletions hosts/configuration.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,21 @@
config,
pkgs,
lib,
stylix,
...
}: {
# styling
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
stylix.fonts = {
monospace = {
package = pkgs.nerdfonts.override {fonts = ["FiraCode"];};
name = "FiraCode Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
nix.settings = {
netrc-file = /etc/nix/.netrc; # for credentials (like pribate PyPI server)
substituters = [
Expand Down
1 change: 1 addition & 0 deletions hosts/framnix/configuration.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix
./stylix.nix
../configuration.nix
];

Expand Down
1 change: 0 additions & 1 deletion hosts/framnix/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,4 @@
}: let
settings = import ./settings.nix;
in {
programs.kitty.font.size = settings.font.size;
}
7 changes: 7 additions & 0 deletions hosts/framnix/settings.nix
Original file line number Diff line number Diff line change
@@ -1,4 +1,11 @@
{
# settings specific to this host
font.size = 10;

stylix.font.sizes = {
applications = 12;
desktop = 12;
popups = 12;
terminal = 12;
};
}
20 changes: 20 additions & 0 deletions hosts/framnix/stylix.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
config,
lib,
pkgs,
stylix,
...
}: {
stylix.cursor = {
name = "Catppuccin-Mocha-Dark-Cursors";
size = 16;
package = pkgs.catppuccin-cursors.mochaDark;
};

stylix.fonts.sizes = {
applications = 12;
desktop = 12;
popups = 12;
terminal = 12;
};
}