home.nix
This commit is contained in:
parent
4b9cffda55
commit
37fed6d9d8
|
@ -2,19 +2,12 @@
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
|
||||||
{ pkgs, lib, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
|
||||||
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
imports =
|
imports =
|
||||||
[
|
[
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./firefox/firefox.nix
|
|
||||||
./alacritty/alacritty.nix
|
|
||||||
./hyprland/hyprland.nix
|
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
(import "${home-manager}/nixos")
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
|
@ -146,114 +139,6 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.ark = {
|
|
||||||
/* The home.stateVersion option does not have a default and must be set */
|
|
||||||
home.stateVersion = "24.05";
|
|
||||||
/* Here goes the rest of your home-manager config, e.g. home.packages = [ pkgs.foo ]; */
|
|
||||||
|
|
||||||
home.packages = [
|
|
||||||
pkgs.bun # bun js runtime
|
|
||||||
pkgs.elixir # elixir lang
|
|
||||||
pkgs.blender # blender 3d tool
|
|
||||||
pkgs.prismlauncher # Minecraft launcher
|
|
||||||
pkgs.zulu17 # Java 17 binary
|
|
||||||
pkgs.janet # Janet lang, for later testing
|
|
||||||
pkgs.uxn # uxn tools from 100r
|
|
||||||
pkgs.onefetch # git neofetch-type tool
|
|
||||||
pkgs.elixir-ls # elixir lsp (maybe replace?)
|
|
||||||
pkgs.erlang-ls # erlang lsp
|
|
||||||
pkgs.zls # zig lsp
|
|
||||||
pkgs.nil # nix lsp
|
|
||||||
pkgs.pfetch-rs
|
|
||||||
pkgs.gimp
|
|
||||||
];
|
|
||||||
services = {
|
|
||||||
dunst = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
programs = {
|
|
||||||
hyfetch = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
preset = "transfeminine";
|
|
||||||
mode = "rgb";
|
|
||||||
light_dark = "dark";
|
|
||||||
lightness = 0.5;
|
|
||||||
color_align = {
|
|
||||||
mode = "horizontal";
|
|
||||||
custom_colors = [];
|
|
||||||
fore_back = null;
|
|
||||||
};
|
|
||||||
backend = "neofetch";
|
|
||||||
args = null;
|
|
||||||
distro = null;
|
|
||||||
pride_month_shown = [];
|
|
||||||
pride_month_disable = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
wofi = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
lsd = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
helix = {
|
|
||||||
enable = true;
|
|
||||||
defaultEditor = true;
|
|
||||||
settings = {
|
|
||||||
theme = "base16-terminal";
|
|
||||||
editor = {
|
|
||||||
mouse = false;
|
|
||||||
line-number = "relative";
|
|
||||||
cursorline = true;
|
|
||||||
color-modes = true;
|
|
||||||
cursor-shape = {
|
|
||||||
insert = "bar";
|
|
||||||
normal = "block";
|
|
||||||
select = "underline";
|
|
||||||
};
|
|
||||||
indent-guides = {
|
|
||||||
render = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
starship = {
|
|
||||||
enable = true;
|
|
||||||
enableFishIntegration = true;
|
|
||||||
settings = {
|
|
||||||
add_newline = false;
|
|
||||||
format = lib.concatStrings [
|
|
||||||
"$character"
|
|
||||||
"$directory"
|
|
||||||
];
|
|
||||||
character = {
|
|
||||||
success_symbol = "▲";
|
|
||||||
error_symbol = "△";
|
|
||||||
};
|
|
||||||
elixir = {
|
|
||||||
symbol = "";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
git = {
|
|
||||||
enable = true;
|
|
||||||
userName = "ark-lamp-umbrella";
|
|
||||||
userEmail = "ark-lamp-umbrella@noreply.codeberg.org";
|
|
||||||
extraConfig = {
|
|
||||||
push = {
|
|
||||||
autoSetupRemote = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
signing = {
|
|
||||||
key = "15078E3940CB5C65B450A86D15E48F7B97025652";
|
|
||||||
signByDefault = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
programs.fish = {
|
programs.fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
22
flake.lock
22
flake.lock
|
@ -1,5 +1,26 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1713732794,
|
||||||
|
"narHash": "sha256-AYCofb8Zu4Mbc1lHDtju/uxeARawRijmOueAqEMEfMU=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "670d9ecc3e46a6e3265c203c2d136031a3d3548e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "master",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1713537308,
|
"lastModified": 1713537308,
|
||||||
|
@ -18,6 +39,7 @@
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
12
flake.nix
12
flake.nix
|
@ -6,14 +6,24 @@
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
url = "github:NixOS/nixpkgs/nixos-unstable";
|
url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
};
|
};
|
||||||
|
home-manager = {
|
||||||
|
url = "github:nix-community/home-manager/master";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs }: {
|
outputs = inputs@{ nixpkgs, home-manager, ... }: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
ark-desktop-nixos = nixpkgs.lib.nixosSystem {
|
ark-desktop-nixos = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.users.ark = import ./home.nix;
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -3,11 +3,7 @@
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
|
||||||
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
imports = [ (import "${home-manager}/nixos") ];
|
|
||||||
fonts.fontconfig.enable = true;
|
fonts.fontconfig.enable = true;
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
cozette
|
cozette
|
||||||
|
|
|
@ -0,0 +1,245 @@
|
||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.username = "ark";
|
||||||
|
home.homeDirectory = "/home/ark";
|
||||||
|
home.packages = [
|
||||||
|
pkgs.bun # bun js runtime
|
||||||
|
pkgs.elixir # elixir lang
|
||||||
|
pkgs.blender # blender 3d tool
|
||||||
|
pkgs.prismlauncher # Minecraft launcher
|
||||||
|
pkgs.zulu17 # Java 17 binary
|
||||||
|
pkgs.janet # Janet lang, for later testing
|
||||||
|
pkgs.uxn # uxn tools from 100r
|
||||||
|
pkgs.onefetch # git neofetch-type tool
|
||||||
|
pkgs.elixir-ls # elixir lsp (maybe replace?)
|
||||||
|
pkgs.erlang-ls # erlang lsp
|
||||||
|
pkgs.zls # zig lsp
|
||||||
|
pkgs.nil # nix lsp
|
||||||
|
pkgs.pfetch-rs
|
||||||
|
pkgs.gimp
|
||||||
|
];
|
||||||
|
services = {
|
||||||
|
dunst = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
programs = {
|
||||||
|
wpaperd = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
default = {
|
||||||
|
path = "/etc/nixos/wallpapers/nix-black-4k.png";
|
||||||
|
apply-shadow = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
wayland.windowManager.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
xwayland = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
"$mod" = "SUPER";
|
||||||
|
"$terminal" = "alacritty";
|
||||||
|
bind = [
|
||||||
|
"$mod, S, exec, wofi --show drun --allow-images"
|
||||||
|
"$mod, Q, exec, $terminal"
|
||||||
|
"$mod, M, exit,"
|
||||||
|
"$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"
|
||||||
|
];
|
||||||
|
bindm = [
|
||||||
|
"$mod, mouse:272, movewindow"
|
||||||
|
"$mod, mouse:273, resizewindow"
|
||||||
|
];
|
||||||
|
exec-once = [
|
||||||
|
"udiskie"
|
||||||
|
"wpaperd"
|
||||||
|
"dunst"
|
||||||
|
"lxqt-policykit-agent"
|
||||||
|
"nm-applet --indicator"
|
||||||
|
"waybar"
|
||||||
|
];
|
||||||
|
decoration = {
|
||||||
|
rounding = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
firefox = {
|
||||||
|
enable = true;
|
||||||
|
profiles.default = {
|
||||||
|
id = 0;
|
||||||
|
name = "default";
|
||||||
|
isDefault = true;
|
||||||
|
search.force = true;
|
||||||
|
search.default = "LibRedirect";
|
||||||
|
search.privateDefault = "LibRedirect";
|
||||||
|
settings = {
|
||||||
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
||||||
|
"browser.toolbars.bookmarks.visibility" = "never";
|
||||||
|
"signon.rememberSignons" = false;
|
||||||
|
};
|
||||||
|
containersForce = true;
|
||||||
|
containers = {
|
||||||
|
"school" = {
|
||||||
|
id = 0;
|
||||||
|
color = "red";
|
||||||
|
icon = "fruit";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||||
|
ublock-origin
|
||||||
|
bitwarden
|
||||||
|
libredirect
|
||||||
|
sidebery
|
||||||
|
stylus
|
||||||
|
firefox-color
|
||||||
|
tabliss
|
||||||
|
];
|
||||||
|
bookmarks = [
|
||||||
|
{
|
||||||
|
name = "nixos";
|
||||||
|
bookmarks = [
|
||||||
|
{
|
||||||
|
name = "nixos packages";
|
||||||
|
url = "https://search.nixos.org";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "home manager wiki";
|
||||||
|
url = "https://nix-community.github.io/home-manager";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
userChrome = builtins.readFile ./userChrome.css;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
alacritty = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
window = {
|
||||||
|
padding = {
|
||||||
|
x = 4;
|
||||||
|
y = 4;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
font = {
|
||||||
|
size = 14;
|
||||||
|
normal = {
|
||||||
|
family = "CozetteVector";
|
||||||
|
style = "Medium";
|
||||||
|
};
|
||||||
|
bold = {
|
||||||
|
family = "CozetteVectorBold";
|
||||||
|
style = "Medium";
|
||||||
|
};
|
||||||
|
italic = {
|
||||||
|
family = "CozetteVector";
|
||||||
|
style = "Medium";
|
||||||
|
};
|
||||||
|
bold_italic = {
|
||||||
|
family = "CozetteVectorBold";
|
||||||
|
style = "Medium";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
hyfetch = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
preset = "transfeminine";
|
||||||
|
mode = "rgb";
|
||||||
|
light_dark = "dark";
|
||||||
|
lightness = 0.5;
|
||||||
|
color_align = {
|
||||||
|
mode = "horizontal";
|
||||||
|
custom_colors = [];
|
||||||
|
fore_back = null;
|
||||||
|
};
|
||||||
|
backend = "neofetch";
|
||||||
|
args = null;
|
||||||
|
distro = null;
|
||||||
|
pride_month_shown = [];
|
||||||
|
pride_month_disable = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
wofi = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
lsd = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
helix = {
|
||||||
|
enable = true;
|
||||||
|
defaultEditor = true;
|
||||||
|
settings = {
|
||||||
|
theme = "base16-terminal";
|
||||||
|
editor = {
|
||||||
|
mouse = false;
|
||||||
|
line-number = "relative";
|
||||||
|
cursorline = true;
|
||||||
|
color-modes = true;
|
||||||
|
cursor-shape = {
|
||||||
|
insert = "bar";
|
||||||
|
normal = "block";
|
||||||
|
select = "underline";
|
||||||
|
};
|
||||||
|
indent-guides = {
|
||||||
|
render = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
starship = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
settings = {
|
||||||
|
add_newline = false;
|
||||||
|
format = lib.concatStrings [
|
||||||
|
"$character"
|
||||||
|
"$directory"
|
||||||
|
];
|
||||||
|
character = {
|
||||||
|
success_symbol = "▲";
|
||||||
|
error_symbol = "△";
|
||||||
|
};
|
||||||
|
elixir = {
|
||||||
|
symbol = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
|
userName = "ark-lamp-umbrella";
|
||||||
|
userEmail = "ark-lamp-umbrella@noreply.codeberg.org";
|
||||||
|
extraConfig = {
|
||||||
|
push = {
|
||||||
|
autoSetupRemote = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
signing = {
|
||||||
|
key = "15078E3940CB5C65B450A86D15E48F7B97025652";
|
||||||
|
signByDefault = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in New Issue