sesbian lex
This commit is contained in:
commit
bcc4e549cf
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
hardware-configuration.nix
|
||||
175
configuration.nix
Executable file
175
configuration.nix
Executable file
@ -0,0 +1,175 @@
|
||||
# Edit this configuration file to define what should be installed on
|
||||
# your system. Help is available in the configuration.nix(5) man page
|
||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
./stylix.nix
|
||||
];
|
||||
fonts = {
|
||||
packages = with pkgs; [
|
||||
noto-fonts-cjk-sans
|
||||
noto-fonts
|
||||
nerd-fonts._0xproto
|
||||
];
|
||||
};
|
||||
services.displayManager.gdm.enable = true;
|
||||
services.desktopManager.gnome.enable = true;
|
||||
|
||||
boot = {
|
||||
|
||||
plymouth = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
# Enable "Silent boot"
|
||||
consoleLogLevel = 3;
|
||||
initrd.verbose = false;
|
||||
kernelParams = [
|
||||
"quiet"
|
||||
"splash"
|
||||
"boot.shell_on_fail"
|
||||
"udev.log_priority=3"
|
||||
"rd.systemd.show_status=auto"
|
||||
];
|
||||
# Hide the OS choice for bootloaders.
|
||||
# It's still possible to open the bootloader list by pressing any key
|
||||
# It will just not appear on screen unless a key is pressed
|
||||
loader.timeout = 0;
|
||||
|
||||
};
|
||||
hardware.graphics.enable = true;
|
||||
nix = {
|
||||
extraOptions = "experimental-features = nix-command flakes";
|
||||
optimise.automatic = true;
|
||||
optimise.dates = [ "12:00" ];
|
||||
gc = {
|
||||
automatic = true;
|
||||
};
|
||||
};
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
security.sudo.enable = true;
|
||||
|
||||
# Use latest kernel.
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
services.power-profiles-daemon.enable = false;
|
||||
services.upower.enable = true;
|
||||
services.tlp.enable = true;
|
||||
services.auto-cpufreq.enable = true;
|
||||
|
||||
networking.hostName = "wired"; # Define your hostname.
|
||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
# Sound
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Home manager angy grrr
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Berlin";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
# Configure keymap in X11
|
||||
services.xserver.xkb = {
|
||||
layout = "us";
|
||||
};
|
||||
|
||||
# Configure console keymap
|
||||
console.keyMap = "us";
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
programs.direnv.enable = true;
|
||||
programs.zsh.enable = true;
|
||||
users.users.lucy = {
|
||||
isNormalUser = true;
|
||||
description = "lucy";
|
||||
shell = pkgs.zsh;
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
};
|
||||
|
||||
# Allow unfree packages
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.pathsToLink = [
|
||||
"/share/applications"
|
||||
"/share/xdg-desktop-portal"
|
||||
];
|
||||
environment.systemPackages = with pkgs; [
|
||||
openssl
|
||||
fastfetch
|
||||
gnomeExtensions.blur-my-shell
|
||||
gnomeExtensions.appindicator
|
||||
];
|
||||
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
extraCompatPackages = with pkgs; [ proton-ge-bin ];
|
||||
|
||||
};
|
||||
programs.git.enable = true;
|
||||
systemd.user.services.polkit-gnome-authentication-agent-1 = {
|
||||
description = "polkit-gnome-authentication-agent-1";
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
|
||||
# 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;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "25.05"; # Did you read the comment?
|
||||
|
||||
}
|
||||
493
flake.lock
generated
Normal file
493
flake.lock
generated
Normal file
@ -0,0 +1,493 @@
|
||||
{
|
||||
"nodes": {
|
||||
"base16": {
|
||||
"inputs": {
|
||||
"fromYaml": "fromYaml"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1755819240,
|
||||
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1765809053,
|
||||
"narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-helix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1760703920,
|
||||
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-vim": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1732806396,
|
||||
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1764873433,
|
||||
"narHash": "sha256-1XPewtGMi+9wN9Ispoluxunw/RwozuTRVuuQOmxzt+A=",
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"rev": "f7ffd917ac0d253dbd6a3bf3da06888f57c69f92",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769996383,
|
||||
"narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "57928607ea566b5db3ad13af0e57e921e6b12381",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767609335,
|
||||
"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "250481aafeb741edfe23d29195671c19b36b6dca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fromYaml": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1731966426,
|
||||
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gnome-shell": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"host": "gitlab.gnome.org",
|
||||
"lastModified": 1767737596,
|
||||
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
"host": "gitlab.gnome.org",
|
||||
"owner": "GNOME",
|
||||
"ref": "gnome-49",
|
||||
"repo": "gnome-shell",
|
||||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772516620,
|
||||
"narHash": "sha256-2r4cKdqCVlQkvcTcLUMxmsmAYZZxCMd//w/PnDnukTE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "2b9504d5a0169d4940a312abe2df2c5658db8de9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1770841267,
|
||||
"narHash": "sha256-9xejG0KoqsoKEGp2kVbXRlEYtFFcDTHjidiuX8hGO44=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ec7c70d12ce2fc37cb92aff673dcdca89d187bae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1772433332,
|
||||
"narHash": "sha256-izhTDFKsg6KeVBxJS9EblGeQ8y+O8eCa6RcW874vxEc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cf59864ef8aa2e178cccedbe2c178185b0365705",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1770380644,
|
||||
"narHash": "sha256-P7dWMHRUWG5m4G+06jDyThXO7kwSk46C1kgjEWcybkE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ae67888ff7ef9dff69b3cf0cc0fbfbcd3a722abe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1772198003,
|
||||
"narHash": "sha256-UCaQQ8zmHUocQIgCl+53Jj6NuwqrVKtmv7obE9r6wnw=",
|
||||
"rev": "dd9b079222d43e1943b6ebd802f04fd959dc8e61",
|
||||
"type": "tarball",
|
||||
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre955442.dd9b079222d4/nixexprs.tar.xz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1767767207,
|
||||
"narHash": "sha256-Mj3d3PfwltLmukFal5i3fFt27L6NiKXdBezC1EBuZs4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "5912c1772a44e31bf1c63c0390b90501e5026886",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772402258,
|
||||
"narHash": "sha256-3DmCFOdmbkFML1/G9gj8Wb+rCCZFPOQtNoMCpqOF8SA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "21ae25e13b01d3b4cdc750b5f9e7bad68b150c10",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": [
|
||||
"stylix",
|
||||
"flake-parts"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767810917,
|
||||
"narHash": "sha256-ZKqhk772+v/bujjhla9VABwcvz+hB2IaRyeLT6CFnT0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "dead29c804adc928d3a69dfe7f9f12d0eec1f1a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixvim": "nixvim",
|
||||
"spicetify-nix": "spicetify-nix",
|
||||
"stylix": "stylix"
|
||||
}
|
||||
},
|
||||
"spicetify-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772494187,
|
||||
"narHash": "sha256-6ksgNAFXVK+Cg/6ww7bB2nJUPZlnS75UwZC7G+L03EE=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"rev": "915ab06b046d05613041780c575c62a32fe67cea",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
"base16-fish": "base16-fish",
|
||||
"base16-helix": "base16-helix",
|
||||
"base16-vim": "base16-vim",
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nur": "nur",
|
||||
"systems": "systems_3",
|
||||
"tinted-foot": "tinted-foot",
|
||||
"tinted-kitty": "tinted-kitty",
|
||||
"tinted-schemes": "tinted-schemes",
|
||||
"tinted-tmux": "tinted-tmux",
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772296853,
|
||||
"narHash": "sha256-pAtzPsgHRKw/2Kv8HgAjSJg450FDldHPWsP3AKG/Xj0=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "c4b8e80a1020e09a1f081ad0f98ce804a6e85acf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-foot": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1726913040,
|
||||
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-foot",
|
||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-foot",
|
||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-kitty": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1735730497,
|
||||
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767710407,
|
||||
"narHash": "sha256-+W1EB79Jl0/gm4JqmO0Nuc5C7hRdp4vfsV/VdzI+des=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "2800e2b8ac90f678d7e4acebe4fa253f602e05b2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-tmux": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767489635,
|
||||
"narHash": "sha256-e6nnFnWXKBCJjCv4QG4bbcouJ6y3yeT70V9MofL32lU=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"rev": "3c32729ccae99be44fe8a125d20be06f8d7d8184",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-zed": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767488740,
|
||||
"narHash": "sha256-wVOj0qyil8m+ouSsVZcNjl5ZR+1GdOOAooAatQXHbuU=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"rev": "11abb0b282ad3786a2aae088d3a01c60916f2e40",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
59
flake.nix
Executable file
59
flake.nix
Executable file
@ -0,0 +1,59 @@
|
||||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
stylix.url = "github:danth/stylix";
|
||||
spicetify-nix.url = "github:Gerg-L/spicetify-nix";
|
||||
nixvim.url = "github:nix-community/nixvim";
|
||||
home-manager.url = "github:nix-community/home-manager";
|
||||
|
||||
};
|
||||
|
||||
outputs =
|
||||
{
|
||||
nixpkgs,
|
||||
stylix,
|
||||
spicetify-nix,
|
||||
nixvim,
|
||||
home-manager,
|
||||
...
|
||||
}:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = import nixpkgs { inherit system; };
|
||||
in
|
||||
{
|
||||
nixosConfigurations.wired = nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
|
||||
modules = [
|
||||
stylix.nixosModules.stylix
|
||||
home-manager.nixosModules.home-manager
|
||||
./configuration.nix
|
||||
|
||||
{
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.users.lucy = {
|
||||
imports = [
|
||||
nixvim.homeModules.nixvim
|
||||
spicetify-nix.homeManagerModules.spicetify
|
||||
./home/home.nix
|
||||
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
];
|
||||
};
|
||||
|
||||
homeConfigurations.lucy = home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
stylix.homeModules.stylix
|
||||
nixvim.homeModules.nixvim
|
||||
./home/home.nix
|
||||
./home/programs.nix
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
45
home/home.nix
Executable file
45
home/home.nix
Executable file
@ -0,0 +1,45 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./hyprland.nix
|
||||
./programs.nix
|
||||
./waybar.nix
|
||||
./nixvim/nixvim.nix
|
||||
./stylix.nix
|
||||
];
|
||||
home.username = "lucy";
|
||||
home.homeDirectory = "/home/lucy";
|
||||
|
||||
# This value determines the Home Manager release that your configuration is
|
||||
# compatible with. This helps avoid breakage when a new Home Manager release
|
||||
# introduces backwards incompatible changes.
|
||||
#
|
||||
# You should not change this value, even if you update Home Manager. If you do
|
||||
# want to update the value, then make sure to first check the Home Manager
|
||||
# release notes.
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
autosuggestion.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
shellAliases = {
|
||||
nsr = "sudo nixos-rebuild switch";
|
||||
ncb = "sudo nix-collect-garbage -d";
|
||||
};
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"git"
|
||||
];
|
||||
theme = "gentoo";
|
||||
};
|
||||
};
|
||||
|
||||
home.stateVersion = "24.05"; # Please read the comment before changing.
|
||||
home.shell.enableShellIntegration = true;
|
||||
home.shellAliases = {
|
||||
nrs = "sudo nixos-rebuild switch --flake /home/lucy/nixos-conf/";
|
||||
};
|
||||
|
||||
}
|
||||
136
home/hyprland.nix
Executable file
136
home/hyprland.nix
Executable file
@ -0,0 +1,136 @@
|
||||
{ config, ... }:
|
||||
{
|
||||
wayland.windowManager.hyprland.enable = true;
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
"$mod" = "SUPER";
|
||||
"monitor" = ",preferred,auto,1";
|
||||
general = {
|
||||
border_size = 2;
|
||||
gaps_in = 5;
|
||||
gaps_out = 10;
|
||||
layout = "dwindle";
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 15;
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 3;
|
||||
passes = 2;
|
||||
ignore_opacity = 0;
|
||||
};
|
||||
shadow = {
|
||||
enabled = false;
|
||||
};
|
||||
};
|
||||
|
||||
animations = {
|
||||
enabled = true;
|
||||
bezier = [
|
||||
"smoothIn, 0.25, 1, 0.5, 1"
|
||||
"smoothOut, 0.25, 1, 0.5, 1"
|
||||
"overshot, 0.4, 0.8, 0.5, 1"
|
||||
"candy, 0.68, -0.6, 0.32, 1.5"
|
||||
];
|
||||
|
||||
animation = [
|
||||
"fade, 1, 10, overshot"
|
||||
"fadeIn, 1, 5, overshot"
|
||||
"fadeOut, 1, 5, overshot"
|
||||
"fadeDim, 1, 5, overshot"
|
||||
"windows, 1, 1, smoothIn, popin"
|
||||
"border, 1, 10, default"
|
||||
"workspaces, 1, 6, overshot, slide"
|
||||
"specialWorkspace, 1, 8, smoothOut, slidevert"
|
||||
];
|
||||
};
|
||||
input = {
|
||||
kb_layout = "de";
|
||||
kb_options = "nodeadkeys";
|
||||
sensitivity = 0.3;
|
||||
accel_profile = "flat";
|
||||
natural_scroll = true;
|
||||
};
|
||||
|
||||
exec-once = [
|
||||
"swww-daemon"
|
||||
"dunst"
|
||||
];
|
||||
|
||||
"bind" = [
|
||||
"$mod, Return, exec, foot"
|
||||
"$mod, space, exec, fuzzel"
|
||||
"$mod, Q, killactive"
|
||||
"$mod, v, togglefloating"
|
||||
"$mod, w, exec, waypaper"
|
||||
"$mod SHIFT, Q, exit"
|
||||
"$mod, J, togglesplit"
|
||||
"$mod, minus, togglespecialworkspace, magic"
|
||||
"$mod SHIFT, minus, movetoworkspace, special:magic"
|
||||
"$mod, B, exec, pkill -SIGUSR1 waybar"
|
||||
|
||||
"$mod, 1, workspace, 1"
|
||||
"$mod, 2, workspace, 2"
|
||||
"$mod, 3, workspace, 3"
|
||||
"$mod, 4, workspace, 4"
|
||||
"$mod, 5, workspace, 5"
|
||||
"$mod, 6, workspace, 6"
|
||||
"$mod, 7, workspace, 7"
|
||||
"$mod, 8, workspace, 8"
|
||||
"$mod, 9, workspace, 9"
|
||||
"$mod, 0, workspace, 10"
|
||||
|
||||
"$mod SHIFT, 1, movetoworkspace, 1"
|
||||
"$mod SHIFT, 2, movetoworkspace, 2"
|
||||
"$mod SHIFT, 3, movetoworkspace, 3"
|
||||
"$mod SHIFT, 4, movetoworkspace, 4"
|
||||
"$mod SHIFT, 5, movetoworkspace, 5"
|
||||
"$mod SHIFT, 6, movetoworkspace, 6"
|
||||
"$mod SHIFT, 7, movetoworkspace, 7"
|
||||
"$mod SHIFT, 8, movetoworkspace, 8"
|
||||
"$mod SHIFT, 9, movetoworkspace, 9"
|
||||
"$mod SHIFT, 0, movetoworkspace, 10"
|
||||
|
||||
# Screenshots
|
||||
"Alt, S, exec, hyprshot -m output -m active --clipboard-only --freeze"
|
||||
"$mod SHIFT, S, exec, hyprshot -m region --clipboard-only --freeze"
|
||||
"Control_L&Alt, S, exec, hyprshot -m window --clipboard-only --freeze"
|
||||
|
||||
"$mod, left, movefocus, l"
|
||||
"$mod, right, movefocus, r"
|
||||
"$mod, up, movefocus, u"
|
||||
"$mod, down, movefocus, d"
|
||||
"$mod SHIFT, left, movewindow, l"
|
||||
"$mod SHIFT, right, movewindow, r"
|
||||
"$mod SHIFT, up, movewindow, u"
|
||||
"$mod SHIFT, down, movewindow, d"
|
||||
|
||||
"$mod, P, exec, /home/lucy/.local/bin/powermenu"
|
||||
];
|
||||
|
||||
binde = [
|
||||
", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"
|
||||
", XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-"
|
||||
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
||||
", XF86AudioNext, exec, playerctl next"
|
||||
", XF86AudioPause, exec, playerctl play-pause"
|
||||
", XF86AudioPlay, exec, playerctl play-pause"
|
||||
", XF86AudioPrev, exec, playerctl previous"
|
||||
", XF86MonBrightnessDown, exec, brightnessctl s 10%-"
|
||||
", XF86MonBrightnessUp, exec, brightnessctl s 10%+"
|
||||
];
|
||||
bindm = [
|
||||
"$mod, mouse:272, movewindow"
|
||||
"alt, mouse:272, resizewindow"
|
||||
];
|
||||
layerrule = [
|
||||
"noanim, walker"
|
||||
];
|
||||
windowrule = [
|
||||
"float, class:^(waypaper)"
|
||||
"float, class:^(Ryujinx)"
|
||||
"suppressevent maximize, class:.*"
|
||||
"nofocus, class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0"
|
||||
];
|
||||
};
|
||||
}
|
||||
50
home/nixvim/coding.nix
Executable file
50
home/nixvim/coding.nix
Executable file
@ -0,0 +1,50 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.nixvim = {
|
||||
diagnostic.settings = {
|
||||
virtual_text = true;
|
||||
};
|
||||
|
||||
plugins = {
|
||||
lsp = {
|
||||
enable = true;
|
||||
inlayHints = true;
|
||||
|
||||
servers = {
|
||||
bashls.enable = true;
|
||||
qmlls.enable = true;
|
||||
qmlls.package = null;
|
||||
qmlls.cmd = [
|
||||
"qmlls"
|
||||
"-E"
|
||||
];
|
||||
clangd.package = null;
|
||||
clangd.enable = true;
|
||||
clangd.cmd = [
|
||||
"clangd"
|
||||
"--background-index"
|
||||
"--query-driver=${pkgs.clang}/bin/clang++"
|
||||
"--query-driver=${pkgs.clang}/bin/clang"
|
||||
];
|
||||
nixd.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
conform-nvim = {
|
||||
enable = true;
|
||||
settings = {
|
||||
formatters_by_ft = {
|
||||
lua = [ "stylua" ];
|
||||
nix = [ "nixfmt" ];
|
||||
c = [ "clang-format" ];
|
||||
cpp = [ "clang-format" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
blink-cmp = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
95
home/nixvim/keymaps.nix
Executable file
95
home/nixvim/keymaps.nix
Executable file
@ -0,0 +1,95 @@
|
||||
{
|
||||
programs.nixvim.keymaps = [
|
||||
{
|
||||
key = "<ESC>";
|
||||
mode = "t";
|
||||
action = ''<C-\><C-n>'';
|
||||
options.silent = true;
|
||||
}
|
||||
{
|
||||
key = "<A-1>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 1<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-2>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 2<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-3>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 3<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-4>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 4<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-5>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 5<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-6>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 6<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-7>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 7<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-8>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 8<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-9>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer 9<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-0>";
|
||||
mode = "n";
|
||||
action = ":BufferLineGoToBuffer last<CR>";
|
||||
}
|
||||
{
|
||||
key = "<leader>w";
|
||||
mode = "n";
|
||||
action = "<cmd>bdelete!<cr>";
|
||||
}
|
||||
{
|
||||
key = "<A-S-e>";
|
||||
mode = "n";
|
||||
action = ":NvimTreeFocus<CR>";
|
||||
}
|
||||
{
|
||||
key = "<A-e>";
|
||||
mode = "n";
|
||||
action = ":NvimTreeToggle<CR>";
|
||||
}
|
||||
{
|
||||
key = "<C-F>";
|
||||
mode = "n";
|
||||
action = "<cmd>lua require('conform').format({ async = true, lsp_fallback = true }) <cr>";
|
||||
}
|
||||
{
|
||||
key = "<leader>t";
|
||||
mode = "n";
|
||||
action = "<cmd>terminal<cr>";
|
||||
}
|
||||
{
|
||||
key = "<leader>ff";
|
||||
mode = "n";
|
||||
action = ":lua Snacks.picker.files() <cr>";
|
||||
}
|
||||
{
|
||||
key = "<leader>lg";
|
||||
mode = "n";
|
||||
action = ":lua Snacks.picker.grep() <cr>";
|
||||
}
|
||||
];
|
||||
}
|
||||
32
home/nixvim/nixvim.nix
Executable file
32
home/nixvim/nixvim.nix
Executable file
@ -0,0 +1,32 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
imports = [
|
||||
./plugins.nix
|
||||
./keymaps.nix
|
||||
./coding.nix
|
||||
];
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
extraPackages = with pkgs; [
|
||||
nixd
|
||||
nixpkgs-fmt
|
||||
stylua
|
||||
];
|
||||
globals.mapleader = " ";
|
||||
defaultEditor = true;
|
||||
wrapRc = true;
|
||||
opts = {
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
shiftwidth = 4;
|
||||
termguicolors = true;
|
||||
cursorline = true;
|
||||
laststatus = 0;
|
||||
};
|
||||
};
|
||||
}
|
||||
138
home/nixvim/plugins.nix
Executable file
138
home/nixvim/plugins.nix
Executable file
@ -0,0 +1,138 @@
|
||||
let
|
||||
button = shortcut: text: action: {
|
||||
type = "button";
|
||||
val = text;
|
||||
on_press.__raw = "function() vim.cmd([[${action}]]) end";
|
||||
opts = {
|
||||
keymap = [
|
||||
"n"
|
||||
shortcut
|
||||
action
|
||||
{
|
||||
noremap = true;
|
||||
silent = true;
|
||||
}
|
||||
];
|
||||
shortcut = shortcut;
|
||||
position = "center";
|
||||
width = 30;
|
||||
align_shortcut = "right";
|
||||
hl_shortcut = "Keyword";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
neocord.enable = true;
|
||||
colorizer.enable = true;
|
||||
nvim-autopairs.enable = true;
|
||||
|
||||
treesitter = {
|
||||
enable = true;
|
||||
settings = {
|
||||
highlighting.enable = true;
|
||||
auto_install = true;
|
||||
ignore_install = [ "ipkg" ];
|
||||
};
|
||||
};
|
||||
|
||||
nvim-tree.enable = true;
|
||||
|
||||
alpha = {
|
||||
enable = true;
|
||||
settings.layout = [
|
||||
{
|
||||
type = "padding";
|
||||
val = 2;
|
||||
}
|
||||
{
|
||||
type = "text";
|
||||
val = [
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠋⣠⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣡⣾⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣟⠻⣿⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⡿⢫⣷⣿⣿⣿⣿⣿⣿⣿⣾⣯⣿⡿⢧⡚⢷⣌⣽⣿⣿⣿⣿⣿⣶⡌⣿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⠇⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣮⣇⣘⠿⢹⣿⣿⣿⣿⣿⣻⢿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⠀⢸⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⡟⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣻⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⡇⠀⣬⠏⣿⡇⢻⣿⣿⣿⣿⣿⣿⣿⣷⣼⣿⣿⣸⣿⣿⣿⣿⣿⣿⣿⣿⣿⢻⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⠀⠈⠁⠀⣿⡇⠘⡟⣿⣿⣿⣿⣿⣿⣿⣿⡏⠿⣿⣟⣿⣿⣿⣿⣿⣿⣿⣿⣇⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⡏⠀⠀⠐⠀⢻⣇⠀⠀⠹⣿⣿⣿⣿⣿⣿⣩⡶⠼⠟⠻⠞⣿⡈⠻⣟⢻⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢿⠀⡆⠀⠘⢿⢻⡿⣿⣧⣷⢣⣶⡃⢀⣾⡆⡋⣧⠙⢿⣿⣿⣟⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⡿⠀⠀⠀⠀⠀⠀⠀⡥⠂⡐⠀⠁⠑⣾⣿⣿⣾⣿⣿⣿⡿⣷⣷⣿⣧⣾⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⡿⣿⣍⡴⠆⠀⠀⠀⠀⠀⠀⠀⠀⣼⣄⣀⣷⡄⣙⢿⣿⣿⣿⣿⣯⣶⣿⣿⢟⣾⣿⣿⢡⣿⣿⣿⣿⣿"
|
||||
"⣿⡏⣾⣿⣿⣿⣷⣦⠀⠀⠀⢀⡀⠀⠀⠠⣭⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⣡⣾⣿⣿⢏⣾⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⡴⠀⠀⠀⠀⠀⠠⠀⠰⣿⣿⣿⣷⣿⠿⠿⣿⣿⣭⡶⣫⠔⢻⢿⢇⣾⣿⣿⣿⣿⣿⣿"
|
||||
"⣿⣿⣿⡿⢫⣽⠟⣋⠀⠀⠀⠀⣶⣦⠀⠀⠀⠈⠻⣿⣿⣿⣾⣿⣿⣿⣿⡿⣣⣿⣿⢸⣾⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⡿⠛⣹⣶⣶⣶⣾⣿⣷⣦⣤⣤⣀⣀⠀⠀⠀⠀⠀⠀⠉⠛⠻⢿⣿⡿⠫⠾⠿⠋⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⢀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣀⡆⣠⢀⣴⣏⡀⠀⠀⠀⠉⠀⠀⢀⣠⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⠿⠛⠛⠛⠛⠛⠛⠻⢿⣿⣿⣿⣿⣯⣟⠷⢷⣿⡿⠋⠀⠀⠀⠀⣵⡀⢠⡿⠋⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿"
|
||||
"⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠛⢿⣿⣿⠂⠀⠀⠀⠀⠀⢀⣽⣿⣿⣿⣿⣿⣿⣿⣍⠛⠿⣿⣿⣿⣿⣿⣿"
|
||||
];
|
||||
opts = {
|
||||
position = "center";
|
||||
hl = "Type";
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "padding";
|
||||
val = 2;
|
||||
}
|
||||
{
|
||||
type = "group";
|
||||
opts = {
|
||||
position = "center";
|
||||
};
|
||||
val = [
|
||||
(button "f" " Find File" "<cmd>lua Snacks.picker.files()<cr>")
|
||||
(button "g" " Find Text" "<cmd>lua Snacks.picker.grep()<cr>")
|
||||
(button "r" " Recent Files" "<cmd>lua Snacks.dashboard.pick('oldfiles')<cr>")
|
||||
(button "q" " Quit" "<cmd>qa<cr>")
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
snacks = {
|
||||
enable = true;
|
||||
settings = {
|
||||
notifier.enabled = true;
|
||||
picker.enabled = true;
|
||||
indent.enabled = true;
|
||||
};
|
||||
};
|
||||
|
||||
lualine = {
|
||||
enable = true;
|
||||
settings = {
|
||||
options = {
|
||||
globalstatus = true;
|
||||
section_separators = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
component_separators = {
|
||||
left = "";
|
||||
right = "";
|
||||
}; # Fixed: Added missing braces
|
||||
};
|
||||
sections = {
|
||||
lualine_a = [ "mode" ];
|
||||
lualine_b = [ "diagnostics" ];
|
||||
lualine_c = [
|
||||
"filename"
|
||||
"branch"
|
||||
"navic"
|
||||
];
|
||||
lualine_x = [
|
||||
"filetype"
|
||||
"lsp_status"
|
||||
];
|
||||
lualine_y = [ "progress" ];
|
||||
lualine_z = [ "location" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
bufferline.enable = true;
|
||||
web-devicons.enable = true;
|
||||
};
|
||||
}
|
||||
185
home/programs.nix
Executable file
185
home/programs.nix
Executable file
@ -0,0 +1,185 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
nixfmt
|
||||
google-chrome
|
||||
swww
|
||||
waypaper
|
||||
nemo
|
||||
cava
|
||||
pavucontrol
|
||||
brightnessctl
|
||||
hyprshot
|
||||
evince
|
||||
dconf
|
||||
fd
|
||||
ripgrep
|
||||
ani-cli
|
||||
cinny-desktop
|
||||
(discord.override {
|
||||
withOpenASAR = true; # can do this here too
|
||||
withVencord = true;
|
||||
})
|
||||
];
|
||||
programs.git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user.name = "lucy";
|
||||
user.email = "lucykaufmann@protonmail.com";
|
||||
};
|
||||
};
|
||||
|
||||
programs.spicetify.enable = true;
|
||||
programs.fastfetch = {
|
||||
enable = true;
|
||||
settings = {
|
||||
logo = {
|
||||
source = "~/.config/fastfetch/logo.txt";
|
||||
};
|
||||
display = {
|
||||
separator = " ";
|
||||
};
|
||||
modules = [
|
||||
{
|
||||
type = "title";
|
||||
key = "User";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "os";
|
||||
key = "OS";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "kernel";
|
||||
key = "Kernel";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "packages";
|
||||
key = "Packages";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "cpu";
|
||||
key = "CPU";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "gpu";
|
||||
key = "GPU";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "memory";
|
||||
key = "Memory";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "disk";
|
||||
key = "Disk";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "display";
|
||||
key = "Resolution";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
text = "";
|
||||
}
|
||||
|
||||
{
|
||||
type = "shell";
|
||||
key = "Shell";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
programs.foot = {
|
||||
enable = true;
|
||||
settings = {
|
||||
cursor = {
|
||||
style = "underline";
|
||||
};
|
||||
main = {
|
||||
pad = "14x14";
|
||||
initial-window-size-pixels = "800x600";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs.fuzzel = {
|
||||
enable = true;
|
||||
settings = {
|
||||
main = {
|
||||
lines = 10;
|
||||
horizontal-pad = 30;
|
||||
vertical-pad = 15;
|
||||
};
|
||||
border = {
|
||||
width = 2;
|
||||
radius = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.vesktop = {
|
||||
enable = true;
|
||||
settings = {
|
||||
staticTitle = true;
|
||||
arRPC = true;
|
||||
customTitleBar = false;
|
||||
};
|
||||
vencord.settings.plugins = {
|
||||
MessageLogger.enabled = true;
|
||||
MessageClickActions.enabled = true;
|
||||
};
|
||||
};
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
settings = {
|
||||
global = {
|
||||
offset = "10x32";
|
||||
corner_radius = config.wayland.windowManager.hyprland.settings.decoration.rounding;
|
||||
frame_width = config.wayland.windowManager.hyprland.settings.general.border_size;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
12
home/stylix.nix
Executable file
12
home/stylix.nix
Executable file
@ -0,0 +1,12 @@
|
||||
{
|
||||
stylix = {
|
||||
image = ./wallpaper.png;
|
||||
targets = {
|
||||
waybar.enable = true;
|
||||
waybar.addCss = false;
|
||||
hyprland.enable = true;
|
||||
hyprland.hyprpaper.enable = false;
|
||||
gnome.image.enable = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
BIN
home/wallpaper.png
Executable file
BIN
home/wallpaper.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 MiB |
153
home/waybar.nix
Executable file
153
home/waybar.nix
Executable file
@ -0,0 +1,153 @@
|
||||
{ config, lib, ... }:
|
||||
{
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
style = ''
|
||||
|
||||
* {
|
||||
font-size: 14px;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: transparent;
|
||||
border-radius: ${builtins.toString config.wayland.windowManager.hyprland.settings.decoration.rounding};
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
all: unset;
|
||||
padding: 1px 6px;
|
||||
margin: 2px;
|
||||
color: alpha(@base05, 0.5);
|
||||
border-radius: 1em;
|
||||
}
|
||||
|
||||
|
||||
#workspaces button.active {
|
||||
color: @base05;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
margin: 0px;
|
||||
padding: 2px;
|
||||
background-color: @base00;
|
||||
border-radius: 1em;
|
||||
}
|
||||
#mpris,
|
||||
#backlight,
|
||||
#tray,
|
||||
#pulseaudio,
|
||||
#window,
|
||||
#upower,
|
||||
#clock,
|
||||
#power-profiles-daemon {
|
||||
padding: 2px 10px;
|
||||
background-color: @base00;
|
||||
color: @base05;
|
||||
border-radius: ${builtins.toString config.wayland.windowManager.hyprland.settings.decoration.rounding};
|
||||
}
|
||||
|
||||
#tray {
|
||||
padding: 0px 8px;
|
||||
}
|
||||
|
||||
window#waybar.empty #window {
|
||||
background: none;
|
||||
}
|
||||
#custom-sep {
|
||||
color: alpha(@base05, 0.5);
|
||||
}
|
||||
'';
|
||||
settings = {
|
||||
mainBar = {
|
||||
margin-top = config.wayland.windowManager.hyprland.settings.general.gaps_out;
|
||||
margin-left = config.wayland.windowManager.hyprland.settings.general.gaps_out;
|
||||
margin-right = config.wayland.windowManager.hyprland.settings.general.gaps_out;
|
||||
layer = "top";
|
||||
position = "top";
|
||||
spacing = 4;
|
||||
modules-left = [
|
||||
"hyprland/workspaces"
|
||||
"hyprland/window"
|
||||
"mpris"
|
||||
];
|
||||
modules-right = [
|
||||
"backlight"
|
||||
"pulseaudio"
|
||||
"upower"
|
||||
"power-profiles-daemon"
|
||||
"clock"
|
||||
"tray"
|
||||
];
|
||||
"custom/sep" = {
|
||||
format = " | ";
|
||||
};
|
||||
"mpris" = {
|
||||
player = "spotify";
|
||||
format = "{title} - {artist}";
|
||||
};
|
||||
|
||||
"hyprland/window" = {
|
||||
format = "{}";
|
||||
max-length = 40;
|
||||
};
|
||||
|
||||
"tray" = {
|
||||
icon-size = 14;
|
||||
};
|
||||
|
||||
"hyprland/workspaces" = {
|
||||
format = "{name}";
|
||||
};
|
||||
|
||||
"upower" = {
|
||||
format = "{percentage}";
|
||||
format-alt = "{time}";
|
||||
icon-size = 12;
|
||||
hide-if-empty = true;
|
||||
tooltip = false;
|
||||
tooltip-spacing = 20;
|
||||
};
|
||||
|
||||
"power-profiles-daemon" = {
|
||||
format = "{profile}";
|
||||
format-tooltip = "Power profile: {profile}\nDriver: {driver}";
|
||||
};
|
||||
|
||||
"backlight" = {
|
||||
format = "{icon} {percent}%";
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
|
||||
"pulseaudio" = {
|
||||
format = "{icon} {volume}%";
|
||||
format-muted = " {volume}%";
|
||||
on-click = "pavucontrol";
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
|
||||
"clock" = {
|
||||
interval = 1;
|
||||
format = "{:%H:%M | %d.%m.%Y}";
|
||||
format-alt = "{:%H:%M | %d.%m.%Y}";
|
||||
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
58
stylix.nix
Executable file
58
stylix.nix
Executable file
@ -0,0 +1,58 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
stylix.opacity = {
|
||||
terminal = 0.8;
|
||||
desktop = 1.0;
|
||||
popups = 1.0;
|
||||
};
|
||||
stylix.cursor = {
|
||||
name = "macOS";
|
||||
package = pkgs.apple-cursor;
|
||||
size = 24;
|
||||
};
|
||||
stylix.icons = {
|
||||
enable = true;
|
||||
dark = "Papirus-Dark";
|
||||
light = "Papirus-Light";
|
||||
package = pkgs.papirus-icon-theme;
|
||||
};
|
||||
stylix = {
|
||||
enable = true;
|
||||
autoEnable = true;
|
||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
||||
polarity = "dark";
|
||||
image = ./home/wallpaper.png;
|
||||
targets = {
|
||||
qt.platform = lib.mkForce "qtct";
|
||||
};
|
||||
fonts = {
|
||||
sizes = {
|
||||
terminal = 10;
|
||||
popups = 10;
|
||||
desktop = 10;
|
||||
};
|
||||
serif = {
|
||||
package = config.stylix.fonts.monospace.package;
|
||||
name = config.stylix.fonts.monospace.name;
|
||||
};
|
||||
sansSerif = {
|
||||
package = config.stylix.fonts.monospace.package;
|
||||
name = config.stylix.fonts.monospace.name;
|
||||
};
|
||||
monospace = {
|
||||
package = pkgs.maple-mono.NF;
|
||||
name = "Maple Mono NF";
|
||||
};
|
||||
|
||||
emoji = {
|
||||
package = pkgs.noto-fonts-color-emoji;
|
||||
name = "Noto Color Emoji";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user