alejandra, nix lsp

This commit is contained in:
tulg 2025-10-20 22:09:41 +03:00
parent d44a2ff849
commit a4e5b89f0e
3 changed files with 157 additions and 151 deletions

153
flake.nix
View file

@ -23,79 +23,84 @@
};
};
outputs = { self, nixpkgs, home-manager, nix-colors, disko, ... } @ inputs:
let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
};
in
{
nixosConfigurations.virgil = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = { inherit inputs; };
modules = [
./hosts/virgil/configuration.nix
home-manager.nixosModules.home-manager
inputs.disko.nixosModules.disko
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = { inherit inputs nix-colors; };
backupFileExtension = "backup";
users.tulg = {
imports = [ ./modules/home.nix ];
};
};
}
];
};
nixosConfigurations.archangel = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = { inherit inputs; };
modules = [
./hosts/archangel/configuration.nix
home-manager.nixosModules.home-manager
inputs.disko.nixosModules.disko
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = { inherit inputs nix-colors; };
backupFileExtension = "backup";
users.tulg = {
imports = [ ./modules/home.nix ];
};
};
}
];
};
#placeholder
nixosConfigurations.phoenix = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = { inherit inputs; };
modules = [
./hosts/phoenix/configuration.nix
home-manager.nixosModules.home-manager
inputs.disko.nixosModules.disko
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = { inherit inputs nix-colors; };
backupFileExtension = "backup";
users.tulg = {
imports = [ ./modules/home.nix ];
};
};
}
];
};
outputs = {
self,
nixpkgs,
home-manager,
nix-colors,
disko,
...
} @ inputs: let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
};
in {
nixosConfigurations.virgil = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {inherit inputs;};
modules = [
./hosts/virgil/configuration.nix
home-manager.nixosModules.home-manager
inputs.disko.nixosModules.disko
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = {inherit inputs nix-colors;};
backupFileExtension = "backup";
users.tulg = {
imports = [./modules/home.nix];
};
};
}
];
};
nixosConfigurations.archangel = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {inherit inputs;};
modules = [
./hosts/archangel/configuration.nix
home-manager.nixosModules.home-manager
inputs.disko.nixosModules.disko
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = {inherit inputs nix-colors;};
backupFileExtension = "backup";
users.tulg = {
imports = [./modules/home.nix];
};
};
}
];
};
#placeholder
nixosConfigurations.phoenix = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {inherit inputs;};
modules = [
./hosts/phoenix/configuration.nix
home-manager.nixosModules.home-manager
inputs.disko.nixosModules.disko
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = {inherit inputs nix-colors;};
backupFileExtension = "backup";
users.tulg = {
imports = [./modules/home.nix];
};
};
}
];
};
};
}

View file

@ -1,17 +1,17 @@
# 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, self, ... }:
{
imports =
[ # Include the results of the hardware scan.
# ./disko.nix
./hardware-configuration.nix
];
config,
pkgs,
self,
...
}: {
imports = [
# Include the results of the hardware scan.
# ./disko.nix
./hardware-configuration.nix
];
# Bootloader.
boot.loader.systemd-boot.enable = true;
@ -37,7 +37,7 @@
];
};
networking.networkmanager.enable = true; # Enables wireless support via wpa_supplicant.
networking.networkmanager.enable = true; # Enables wireless support via wpa_supplicant.
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
@ -51,14 +51,14 @@
# Select internationalisation properties.
services.getty.autologinUser = "tulg";
programs.hyprland = {
enable = true;
xwayland.enable = true;
enable = true;
xwayland.enable = true;
};
# Define a user account. Don't forget to set a password with passwd.
users.users.tulg = {
isNormalUser = true;
description = "Tulga";
extraGroups = [ "networkmanager" "network ""wheel" ];
extraGroups = ["networkmanager" "network " "wheel"];
packages = with pkgs; [];
};
@ -67,10 +67,10 @@
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
git
rose-pine-gtk-theme
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
# wget
git
rose-pine-gtk-theme
];
# Some programs need SUID wrappers, can be configured further or are
@ -87,11 +87,11 @@
services.openssh = {
enable = true;
settings = {
PasswordAuthentication = true;
PermitRootLogin = "yes";
PasswordAuthentication = true;
PermitRootLogin = "yes";
};
};
fonts = {
};
fonts = {
packages = with pkgs; [
noto-fonts
noto-fonts-cjk-sans
@ -109,14 +109,13 @@
fontconfig = {
enable = true;
defaultFonts = {
sansSerif = [ "Fira Sans Regular" ];
serif = [ "Fira Sans Regular" ];
monospace = [ "Fira Mono Regular" ];
sansSerif = ["Fira Sans Regular"];
serif = ["Fira Sans Regular"];
monospace = ["Fira Mono Regular"];
};
};
};
powerManagement.powertop.enable = true;
services = {
power-profiles-daemon.enable = false;
@ -137,11 +136,11 @@
# networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
users.users."root".openssh.authorizedKeys.keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIefprdYz4gFgBqGlrkycWcTYxFttQHRjDQmREtQTiGyqK1gQiB4z4Cbiayt7Emq224sbaobQPlNSyhlBCSo/Wf0bmZMz8NwNdwhFSkDnyD6LPaHg8fv9FXnWW0wBMl4oSD2wfGbMQBrecjgHXfJ64UiHyyhDllDDtWGgoY75wwfWHzX/NiGaEi0LHCQ8dsgp7H+BhssTkJPZbv6BJcA34yfb6dISjvW2S/QGKMwgYr9ArfGLUTWPbj+EbL7Bf9VsTFe9nP+FnYqEu4+oBIbY2heXWA+FCi0zxmMY4oYJxT5cJi1nffVOxboKLm4kIT93gv1WdcDiQDVdy5sJ1q0gJyiRt1HfJW4l8jn36VJ0FvdGmRliOTzSfeER0gbIsOcxeArHRV3ff/CoSocnSs0To5vFKgjlGwhdE8sJsqILgZnIoKwVvOXuDOz/RhbdBPpVsG7upk7bLJtLv9P5h0h/gUIWA1iktaYBSDL0UofjSrfNhZH6M0P+soIuooanSlVGivTlASw1pd+gjvebbc9ksvGZVqPQT0XegIvZkwfu8moERZUqv/xhNcyWTEGfFKoeHt5ub8Ac0LOe9Ak6N+p8xDjTdkmUgte5J/CNL1JL3JA/iqocAo+VvmIbPatbrOwUNcROOS3WeFg8MfNrbDyYCVNbZWAyM6wwfLB2fIUB2jw== tulg@highcommand" # content of authorized_keys file
users.users."root".openssh.authorizedKeys.keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIefprdYz4gFgBqGlrkycWcTYxFttQHRjDQmREtQTiGyqK1gQiB4z4Cbiayt7Emq224sbaobQPlNSyhlBCSo/Wf0bmZMz8NwNdwhFSkDnyD6LPaHg8fv9FXnWW0wBMl4oSD2wfGbMQBrecjgHXfJ64UiHyyhDllDDtWGgoY75wwfWHzX/NiGaEi0LHCQ8dsgp7H+BhssTkJPZbv6BJcA34yfb6dISjvW2S/QGKMwgYr9ArfGLUTWPbj+EbL7Bf9VsTFe9nP+FnYqEu4+oBIbY2heXWA+FCi0zxmMY4oYJxT5cJi1nffVOxboKLm4kIT93gv1WdcDiQDVdy5sJ1q0gJyiRt1HfJW4l8jn36VJ0FvdGmRliOTzSfeER0gbIsOcxeArHRV3ff/CoSocnSs0To5vFKgjlGwhdE8sJsqILgZnIoKwVvOXuDOz/RhbdBPpVsG7upk7bLJtLv9P5h0h/gUIWA1iktaYBSDL0UofjSrfNhZH6M0P+soIuooanSlVGivTlASw1pd+gjvebbc9ksvGZVqPQT0XegIvZkwfu8moERZUqv/xhNcyWTEGfFKoeHt5ub8Ac0LOe9Ak6N+p8xDjTdkmUgte5J/CNL1JL3JA/iqocAo+VvmIbPatbrOwUNcROOS3WeFg8MfNrbDyYCVNbZWAyM6wwfLB2fIUB2jw== tulg@highcommand" # content of authorized_keys file
];
users.users."tulg".openssh.authorizedKeys.keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIefprdYz4gFgBqGlrkycWcTYxFttQHRjDQmREtQTiGyqK1gQiB4z4Cbiayt7Emq224sbaobQPlNSyhlBCSo/Wf0bmZMz8NwNdwhFSkDnyD6LPaHg8fv9FXnWW0wBMl4oSD2wfGbMQBrecjgHXfJ64UiHyyhDllDDtWGgoY75wwfWHzX/NiGaEi0LHCQ8dsgp7H+BhssTkJPZbv6BJcA34yfb6dISjvW2S/QGKMwgYr9ArfGLUTWPbj+EbL7Bf9VsTFe9nP+FnYqEu4+oBIbY2heXWA+FCi0zxmMY4oYJxT5cJi1nffVOxboKLm4kIT93gv1WdcDiQDVdy5sJ1q0gJyiRt1HfJW4l8jn36VJ0FvdGmRliOTzSfeER0gbIsOcxeArHRV3ff/CoSocnSs0To5vFKgjlGwhdE8sJsqILgZnIoKwVvOXuDOz/RhbdBPpVsG7upk7bLJtLv9P5h0h/gUIWA1iktaYBSDL0UofjSrfNhZH6M0P+soIuooanSlVGivTlASw1pd+gjvebbc9ksvGZVqPQT0XegIvZkwfu8moERZUqv/xhNcyWTEGfFKoeHt5ub8Ac0LOe9Ak6N+p8xDjTdkmUgte5J/CNL1JL3JA/iqocAo+VvmIbPatbrOwUNcROOS3WeFg8MfNrbDyYCVNbZWAyM6wwfLB2fIUB2jw== tulg@highcommand" # content of authorized_keys file
users.users."tulg".openssh.authorizedKeys.keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIefprdYz4gFgBqGlrkycWcTYxFttQHRjDQmREtQTiGyqK1gQiB4z4Cbiayt7Emq224sbaobQPlNSyhlBCSo/Wf0bmZMz8NwNdwhFSkDnyD6LPaHg8fv9FXnWW0wBMl4oSD2wfGbMQBrecjgHXfJ64UiHyyhDllDDtWGgoY75wwfWHzX/NiGaEi0LHCQ8dsgp7H+BhssTkJPZbv6BJcA34yfb6dISjvW2S/QGKMwgYr9ArfGLUTWPbj+EbL7Bf9VsTFe9nP+FnYqEu4+oBIbY2heXWA+FCi0zxmMY4oYJxT5cJi1nffVOxboKLm4kIT93gv1WdcDiQDVdy5sJ1q0gJyiRt1HfJW4l8jn36VJ0FvdGmRliOTzSfeER0gbIsOcxeArHRV3ff/CoSocnSs0To5vFKgjlGwhdE8sJsqILgZnIoKwVvOXuDOz/RhbdBPpVsG7upk7bLJtLv9P5h0h/gUIWA1iktaYBSDL0UofjSrfNhZH6M0P+soIuooanSlVGivTlASw1pd+gjvebbc9ksvGZVqPQT0XegIvZkwfu8moERZUqv/xhNcyWTEGfFKoeHt5ub8Ac0LOe9Ak6N+p8xDjTdkmUgte5J/CNL1JL3JA/iqocAo+VvmIbPatbrOwUNcROOS3WeFg8MfNrbDyYCVNbZWAyM6wwfLB2fIUB2jw== tulg@highcommand" # content of authorized_keys file
];
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
@ -149,8 +148,7 @@
# 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).
nix.settings.experimental-features = [ "nix-command" "flakes"];
nix.settings.experimental-features = ["nix-command" "flakes"];
services.displayManager.ly.enable = true;
system.stateVersion = "25.05"; # Did you read the comment?
}

View file

@ -1,17 +1,20 @@
{ config, lib, pkgs, inputs, ... }:
let
{
config,
lib,
pkgs,
inputs,
...
}: let
dots = "${config.home.homeDirectory}/nixdots/config";
symlink = path: config.lib.file.mkOutOfStoreSymlink path;
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.system};
in
{
imports = [
inputs.zen-browser.homeModules.twilight
inputs.spicetify-nix.homeManagerModules.default
in {
imports = [
inputs.zen-browser.homeModules.twilight
inputs.spicetify-nix.homeManagerModules.default
];
# Home Manager settings
# Home Manager settings
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
home.username = "tulg";
home.homeDirectory = "/home/tulg";
home.stateVersion = "25.05";
@ -21,17 +24,19 @@ in
nwg-look
rose-pine-gtk-theme
xfce.thunar
alejandra
arc-theme
tmux
fastfetch
btop
# spotify
# spotify
pavucontrol
wl-clipboard
hyprcursor
parsec-bin
file-roller
hyprpolkitagent
pkgs.nixd
swww
grim
slurp
@ -45,15 +50,15 @@ in
libsForQt5.qtstyleplugin-kvantum
libsForQt5.qt5ct
rose-pine-kvantum
];
programs.vscode.enable = true;
programs.zen-browser.enable = true;
programs.zen-browser.policies = {
];
programs.vscode.enable = true;
programs.zen-browser.enable = true;
programs.zen-browser.policies = {
DisableAppUpdate = true;
DisableTelemetry = true;
};
};
programs.spicetify = {
programs.spicetify = {
enable = true;
theme = spicePkgs.themes.ziro;
colorScheme = "rose-pine-moon";
@ -90,22 +95,23 @@ in
};
programs.firefox.enable = true;
programs.bash = {
enable = true;
enable = true;
shellAliases = {
a = "echo ids";
shellAliases = {
a = "echo ids";
rb = "nixos-rebuild switch --flake";
};
bashrcExtra = ''
PS1="\[\e[38;5;177m\]\u\[\e[38;5;220m\]@\[\e[38;5;1m\]\h \[\e[38;5;33m\]\w \[\033[0m\]\$ "
'';
};
bashrcExtra = ''
PS1="\[\e[38;5;177m\]\u\[\e[38;5;220m\]@\[\e[38;5;1m\]\h \[\e[38;5;33m\]\w \[\033[0m\]\$ "
'';
};
programs.git = {
enable = true;
userName = "tulg";
userEmail = "tulg@protonmail.ch";
};
};
gtk = {
enable = true;
@ -119,12 +125,9 @@ in
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
};
};
home.pointerCursor = {
home.pointerCursor = {
gtk.enable = true;
x11.enable = true;
package = pkgs.bibata-cursors;
@ -132,13 +135,13 @@ in
size = 16;
};
nixpkgs.config.qt5 = {
enable = true;
platformTheme = "qt5ct";
style = {
enable = true;
platformTheme = "qt5ct";
style = {
package = pkgs.rose-pine-kvantum;
name = "Rose-pine";
};
};
};
};
#
#
home.sessionVariables = {
@ -146,7 +149,7 @@ in
GTK_THEME = "rose-pine";
QT_QPA_PLATFORMTHEME = "qt5ct";
QT_QPA_PLATFORM = "wayland";
# PS1="\[\e[38;5;177m\]\u\[\e[38;5;220m\]@\[\e[38;5;1m\]\h \[\e[38;5;33m\]\w \[\033[0m\]$ ";
# PS1="\[\e[38;5;177m\]\u\[\e[38;5;220m\]@\[\e[38;5;1m\]\h \[\e[38;5;33m\]\w \[\033[0m\]$ ";
};
xdg.portal = {