mirror of
https://github.com/szymon-jozef/amazing-dotfiles.git
synced 2026-06-05 17:00:12 +02:00
168 lines
3.9 KiB
Nix
168 lines
3.9 KiB
Nix
{
|
|
description = "Amazing dotfiles";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-25.11";
|
|
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
# hyprland.url = "github:hyprwm/Hyprland";
|
|
|
|
nixvim = {
|
|
url = "github:nix-community/nixvim";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
zen-browser = {
|
|
url = "github:0xc000022070/zen-browser-flake";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
# theming stuff
|
|
catppuccin = {
|
|
url = "github:catppuccin/nix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
hyprcursor-phinger.url = "github:jappie3/hyprcursor-phinger";
|
|
wallpapers = {
|
|
url = "github:orangci/walls-catppuccin-mocha";
|
|
flake = false;
|
|
};
|
|
|
|
# uni stuff
|
|
zut-calendar = {
|
|
url = "github:szymon-jozef/zut-calendar";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
zutui = {
|
|
url = "github:shv187/zutui";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
};
|
|
|
|
outputs =
|
|
{
|
|
nixpkgs,
|
|
nixpkgs-stable,
|
|
home-manager,
|
|
catppuccin,
|
|
nixvim,
|
|
wallpapers,
|
|
zut-calendar,
|
|
zutui,
|
|
...
|
|
}@inputs:
|
|
|
|
let
|
|
defaultUserConfig = {
|
|
username = "szymon";
|
|
email = "szymon_jozef@proton.me";
|
|
fullName = "Szymon P";
|
|
signingKey = "~/.ssh/github.pub";
|
|
|
|
mainMonitor = "DP-1";
|
|
statusBar = "ashell"; # available: ashell | waybar
|
|
|
|
pathConfig = {
|
|
wallpaper = "Obrazy/tapety/catppuccin"; # relative to $HOME/
|
|
screenshot = "Obrazy/zrzuty/"; # relative to $HOME/
|
|
obsidian = "Dokumenty/obsidian"; # relative to $HOME/
|
|
projects = "~/Kodowanie";
|
|
documents = "~/Dokumenty";
|
|
pictures = "~/Obrazy";
|
|
downloads = "~/Pobrane";
|
|
video = "~/Video";
|
|
};
|
|
|
|
isNixOS = true;
|
|
hostName = "default";
|
|
animations = true;
|
|
gaming = true;
|
|
};
|
|
|
|
system = "x86_64-linux";
|
|
|
|
pkgs = import nixpkgs {
|
|
inherit system;
|
|
config.allowUnfree = true;
|
|
};
|
|
|
|
pkgs-stable = import nixpkgs-stable {
|
|
inherit system;
|
|
config = {
|
|
allowUnfree = true;
|
|
permittedInsecurePackages = [
|
|
"electron-38.8.4"
|
|
];
|
|
};
|
|
};
|
|
|
|
mkHome =
|
|
customConfig:
|
|
let
|
|
userConfig = defaultUserConfig // customConfig;
|
|
in
|
|
home-manager.lib.homeManagerConfiguration {
|
|
inherit pkgs;
|
|
|
|
extraSpecialArgs = {
|
|
inherit inputs userConfig pkgs-stable;
|
|
};
|
|
|
|
modules = [
|
|
./home.nix
|
|
catppuccin.homeModules.catppuccin
|
|
nixvim.homeModules.nixvim
|
|
inputs.hyprcursor-phinger.homeManagerModules.hyprcursor-phinger
|
|
(
|
|
{ pkgs, ... }:
|
|
{
|
|
home.packages = [
|
|
zut-calendar.packages.${pkgs.stdenv.hostPlatform.system}.default
|
|
zutui.packages.${pkgs.stdenv.hostPlatform.system}.default
|
|
];
|
|
}
|
|
)
|
|
]
|
|
++ (customConfig.extraModules or [ ]);
|
|
};
|
|
|
|
in
|
|
{
|
|
homeConfigurations = {
|
|
# You can overwrite default configuration here
|
|
|
|
"arch" = mkHome {
|
|
isNixOS = false;
|
|
hostName = "arch";
|
|
};
|
|
|
|
"nixos" = mkHome {
|
|
isNixOS = true;
|
|
hostName = "nixos";
|
|
};
|
|
|
|
"${defaultUserConfig.username}@pitagoras" = mkHome {
|
|
hostName = "pitagoras";
|
|
mainMonitor = "eDP-1";
|
|
animations = false;
|
|
};
|
|
|
|
"${defaultUserConfig.username}@pilecki" = mkHome {
|
|
hostName = "pilecki";
|
|
mainMonitor = "LVDS-1";
|
|
};
|
|
|
|
"${defaultUserConfig.username}@paderewski" = mkHome {
|
|
hostName = "paderewski";
|
|
};
|
|
};
|
|
};
|
|
}
|