nix: Add sdcv

This commit is contained in:
js0ny 2025-10-19 18:12:07 +01:00
parent 608cd05802
commit a9d8bcb500
16 changed files with 267 additions and 112 deletions

View file

@ -49,6 +49,7 @@ xwayland {
# Format:
# MONITOR_NAME,RESOLUTION@REFRESH_RATE,OFFSET_XxOFFSET_Y,SCALE
monitor=DP-2,3840x2160@60,0x0,1.667
monitor=eDP-1,disable
###################
@ -72,7 +73,7 @@ monitor=DP-2,3840x2160@60,0x0,1.667
# Top Bar
exec-once = waybar &
# Notifications
exec-once = dunst &
# exec-once = dunst &
# exec-once = hyprpanel &
# wallpapers
exec-once = swww-daemon &
@ -86,8 +87,6 @@ exec-once = wl-paste --watch cliphist store
# exec-once = QT_SCALE_FACTOR=1 albert &
# Bluetooth Manager
exec-once = blueman-applet &
# Time Tracker
exec-once = aw-qt &
@ -137,7 +136,7 @@ general {
# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
rounding = 0
rounding = 20
# Change transparency of focused and unfocused windows
# active_opacity = 1
@ -235,12 +234,12 @@ input {
}
}
# gesture = 4, horizontal, workspace
# https://wiki.hyprland.org/Configuring/Variables/#gestures
# gestures {
# workspace_swipe = true
# workspace_swipe_fingers = 4
# }
gesture = 4, horizontal, workspace
gestures {
workspace_swipe = true
workspace_swipe_fingers = 4
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
@ -248,6 +247,10 @@ gesture = 4, horizontal, workspace
# name = epic-mouse-v1
# sensitivity = -0.5
# }
# gesture = 3, horizontal, workspace
# gesture = 3, down, mod: ALT, close
# gesture = 3, up, mod: SUPER, scale: 1.5, fullscreen
# gesture = 3, left, scale: 1.5, float
windowrulev2 = opaque, workspace:2

105
nixcfgs/flake.lock generated
View file

@ -1,5 +1,51 @@
{
"nodes": {
"caelestia-cli": {
"inputs": {
"caelestia-shell": [
"caelestia-shell"
],
"nixpkgs": [
"caelestia-shell",
"nixpkgs"
]
},
"locked": {
"lastModified": 1760147156,
"narHash": "sha256-ad+1gnp7Lm7jVSzqvGjMiwnA0P61dFZmp6HcRMXicWY=",
"owner": "caelestia-dots",
"repo": "cli",
"rev": "e9668d58f51e935094e50090b99301df8344f590",
"type": "github"
},
"original": {
"owner": "caelestia-dots",
"repo": "cli",
"type": "github"
}
},
"caelestia-shell": {
"inputs": {
"caelestia-cli": "caelestia-cli",
"nixpkgs": [
"nixpkgs"
],
"quickshell": "quickshell"
},
"locked": {
"lastModified": 1760497394,
"narHash": "sha256-/4Hf/irgPh+gRQAcCNjXyXFcUGOrXMX8+OtOwbscbXk=",
"owner": "caelestia-dots",
"repo": "shell",
"rev": "4cb1048fdd6fa281baa0efa36c8c82ddd2cc43a3",
"type": "github"
},
"original": {
"owner": "caelestia-dots",
"repo": "shell",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
@ -127,6 +173,22 @@
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1758690382,
"narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e643668fd71b949c53f8626614b21ff71a07379d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": "flake-parts",
@ -169,15 +231,38 @@
"type": "github"
}
},
"quickshell": {
"inputs": {
"nixpkgs": [
"caelestia-shell",
"nixpkgs"
]
},
"locked": {
"lastModified": 1760228179,
"narHash": "sha256-4Z6k7lv3Zcgk3K+4h60LpqB9wCkR+utkYERU735U068=",
"ref": "refs/heads/master",
"rev": "c9d3ffb6043c5bf3f3009202bad7e0e5132c4a25",
"revCount": 693,
"type": "git",
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
},
"original": {
"type": "git",
"url": "https://git.outfoxxed.me/outfoxxed/quickshell"
}
},
"root": {
"inputs": {
"caelestia-shell": "caelestia-shell",
"flake-utils": "flake-utils",
"home-manager": "home-manager",
"nix-darwin": "nix-darwin",
"nix-flatpak": "nix-flatpak",
"nixpkgs": "nixpkgs",
"nur": "nur",
"plasma-manager": "plasma-manager"
"plasma-manager": "plasma-manager",
"winboat": "winboat"
}
},
"systems": {
@ -194,6 +279,24 @@
"repo": "default",
"type": "github"
}
},
"winboat": {
"inputs": {
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1760625716,
"narHash": "sha256-Lf8kR10j/VDlNBfLJENA7jDUPOYfAd0ZUqPwyMncO2M=",
"owner": "TibixDev",
"repo": "winboat",
"rev": "dab50fb60487f7d47d82c6857c7be9582314c481",
"type": "github"
},
"original": {
"owner": "TibixDev",
"repo": "winboat",
"type": "github"
}
}
},
"root": "root",

View file

@ -20,81 +20,86 @@
inputs.home-manager.follows = "home-manager";
};
nur.url = "github:nix-community/NUR";
winboat.url = "github:TibixDev/winboat";
caelestia-shell = {
url = "github:caelestia-dots/shell";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs =
{
self,
nixpkgs,
nix-flatpak,
nix-darwin,
home-manager,
plasma-manager,
nur,
...
}@inputs:
let
overlays = [ nur.overlays.default ];
forSystem =
system:
import nixpkgs {
inherit system overlays;
config.allowUnfree = true;
};
specialArgs = { inherit inputs; };
nixosHosts = [
"zp"
"zephyrus"
"nixvirt"
];
outputs = {
self,
nixpkgs,
nix-flatpak,
nix-darwin,
home-manager,
plasma-manager,
nur,
winboat,
caelestia-shell,
...
} @ inputs: let
overlays = [
nur.overlays.default
(final: prev: {
winboat = winboat.packages.x86_64-linux.winboat;
})
];
forSystem = system:
import nixpkgs {
inherit system overlays;
config.allowUnfree = true;
};
specialArgs = {inherit inputs;};
nixosHosts = [
"zp"
"zephyrus"
"nixvirt"
];
mkNixosSystem =
hostname:
nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
inherit specialArgs;
modules = [ ./hosts/${hostname} ];
};
in
{
# This will automatically generate nixOS config for `nixosHosts'
# Include the module ./hosts/${hostname} by default.
nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem;
darwinConfigurations."zen" = nix-darwin.lib.darwinSystem {
system = "aarch64-darwin";
mkNixosSystem = hostname:
nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
inherit specialArgs;
modules = [./hosts/${hostname}];
};
in {
# This will automatically generate nixOS config for `nixosHosts'
# Include the module ./hosts/${hostname} by default.
nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem;
darwinConfigurations."zen" = nix-darwin.lib.darwinSystem {
system = "aarch64-darwin";
inherit specialArgs;
modules = [
./hosts/zen
];
};
homeConfigurations = {
js0ny = home-manager.lib.homeManagerConfiguration {
pkgs = forSystem "x86_64-linux";
extraSpecialArgs = specialArgs;
modules = [
./hosts/zen
./users/js0ny
];
};
homeConfigurations = {
js0ny = home-manager.lib.homeManagerConfiguration {
pkgs = forSystem "x86_64-linux";
extraSpecialArgs = specialArgs;
modules = [
./users/js0ny
];
};
"js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration {
pkgs = forSystem "x86_64-linux";
extraSpecialArgs = specialArgs;
modules = [
./users/js0ny/zephyrus.nix
plasma-manager.homeModules.plasma-manager
nix-flatpak.homeManagerModules.nix-flatpak
];
};
"js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration {
pkgs = forSystem "x86_64-linux";
extraSpecialArgs = specialArgs;
modules = [
./users/js0ny/nixvirt.nix
];
};
"js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration {
pkgs = forSystem "x86_64-linux";
extraSpecialArgs = specialArgs;
modules = [
./users/js0ny/zephyrus.nix
plasma-manager.homeModules.plasma-manager
nix-flatpak.homeManagerModules.nix-flatpak
];
};
"js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration {
pkgs = forSystem "x86_64-linux";
extraSpecialArgs = specialArgs;
modules = [
./users/js0ny/nixvirt.nix
];
};
};
};
}

View file

@ -14,9 +14,8 @@
../../modules/nixos/chromium.nix
../../modules/nixos/obs-studio.nix
../../modules/nixos/wine.nix
../../modules/nixos/desktop/gnome.nix
../../modules/nixos/desktop/niri.nix
../../modules/nixos/desktop/kde.nix
../../modules/nixos/desktop/hyprland.nix
../../modules/nixos/display-manager/sddm.nix
./hardware-configuration.nix
./keyd.nix

View file

@ -3,5 +3,7 @@
chromium
nil
nixd
libnotify
imagemagick
];
}

View file

@ -1,4 +1,4 @@
{pkgs, ...}: {
{...}: {
programs.chromium = {
enable = true;
homepageLocation = "https://duckduckgo.com";

View file

@ -0,0 +1,4 @@
{...}: {
services.displayManager.cosmic-greeter.enable = true;
services.desktopManager.cosmic.enable = true;
}

View file

@ -1,7 +1,22 @@
{...}: {
{
pkgs,
inputs,
...
}: {
programs.hyprland = {
enable = true;
withUWSM = false;
xwayland.enable = true;
};
environment.systemPackages = [
inputs.caelestia-shell.packages.x86_64-linux.default
pkgs.mako
pkgs.rofi-wayland
pkgs.xdg-desktop-portal-wlr
pkgs.xdg-desktop-portal-hyprland
pkgs.hyprpolkitagent
pkgs.cliphist
pkgs.grimblast
];
}

View file

@ -12,5 +12,6 @@
file
unzip
zip
pkg-config
];
}

View file

@ -0,0 +1,5 @@
{inputs, ...}: {
environment.systemPackages = [
inputs.winboat
];
}

View file

@ -1,5 +1,6 @@
{pkgs, ...}: {
home.packages = with pkgs; [
home.packages = with pkgs;
[
kitty
ghostty
alacritty
@ -11,8 +12,10 @@
pcloud
telegram-desktop
steam
jetbrains.idea-ultimate
jetbrains.rider
(jetbrains.idea-ultimate.override {
vmopts = ''-Dawt.toolkit.name=WLToolkit'';})
(jetbrains.rider.override {
vmopts = ''-Dawt.toolkit.name=WLToolkit'';})
warp-terminal
# clash-verge-rev
haruna

View file

@ -1,4 +1,5 @@
{pkgs, ...}: {
{ pkgs, ... }:
{
programs.firefox = {
enable = true;
profiles.default = {
@ -11,7 +12,7 @@
}
];
icon = "https://archlinux.org/favicon.ico";
definedAliases = ["@aw"];
definedAliases = [ "@aw" ];
};
aur = {
name = "Arch User Repository";
@ -21,43 +22,43 @@
}
];
icon = "https://archlinux.org/favicon.ico";
definedAliases = ["@aur"];
definedAliases = [ "@aur" ];
};
arch-packages = {
name = "ArchLinux Packages";
urls = [{template = "https://archlinux.org/?q={searchTerms}";}];
urls = [ { template = "https://archlinux.org/?q={searchTerms}"; } ];
icon = "https://archlinux.org/favicon.ico";
definedAliases = ["@pac"];
definedAliases = [ "@pac" ];
};
chatgpt = {
name = "ChatGPT";
urls = [{template = "https://chatgpt.com/?q={searchTerms}";}];
urls = [ { template = "https://chatgpt.com/?q={searchTerms}"; } ];
icon = "https://chatgpt.com/favicon.ico";
definedAliases = ["@gpt"];
definedAliases = [ "@gpt" ];
};
scoop = {
name = "scoop";
urls = [{template = "https://scoop.sh/#/apps?q={searchTerms}";}];
urls = [ { template = "https://scoop.sh/#/apps?q={searchTerms}"; } ];
icon = "https://scoop.sh/favicon.ico";
definedAliases = ["@sc"];
definedAliases = [ "@sc" ];
};
perplexity = {
name = "Perplexity";
urls = [{template = "https://www.perplexity.ai/?q={searchTerms}";}];
urls = [ { template = "https://www.perplexity.ai/?q={searchTerms}"; } ];
icon = "https://perplexity.ai/favicon.ico";
definedAliases = ["@pplx"];
definedAliases = [ "@pplx" ];
};
winget = {
name = "Windows Package Manager";
urls = [{template = "https://winget.ragerworks.com/search/all/{searchTerms}";}];
urls = [ { template = "https://winget.ragerworks.com/search/all/{searchTerms}"; } ];
icon = "https://microsoft.com/favicon.ico";
definedAliases = ["@win"];
definedAliases = [ "@win" ];
};
github = {
name = "GitHub Repository";
urls = [{template = "https://github.com/search?type=repositories&q={searchTerms}";}];
urls = [ { template = "https://github.com/search?type=repositories&q={searchTerms}"; } ];
icon = "https://github.com/favicon.ico";
definedAliases = ["@gh"];
definedAliases = [ "@gh" ];
};
};
extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [

View file

@ -72,7 +72,7 @@
config = {
General = {
launchers = [
"applications:org.kde.dolphin.desktop"
# "applications:org.kde.dolphin.desktop"
"applications:firefox.desktop"
"applications:com.mitchellh.ghostty.desktop"
];
@ -131,7 +131,7 @@
profiles = {
Default = {
command = "${pkgs.fish}/bin/fish";
colorScheme = "Breeze";
colorScheme = "catppuccin-mocha";
font = {
name = "Maple Mono NF";
size = 12;

View file

@ -0,0 +1,9 @@
{ pkgs }:
{
home.packages = with pkgs; [
sdcv
];
home.sessionVariables = {
STARDICT_DATA_DIR = "$HOME/.local/share/stardict/dic";
};
}

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
let
{...}: let
commonAliases = {
v = "nvim";
g = "lazygit";
@ -8,9 +7,10 @@ let
ii = "open";
c = "code";
aic = "aichat -s";
aicc = "aichat -c";
nrs = "sudo nixos-rebuild switch --flake ~/.dotfiles/nixcfgs";
};
in
{
in {
programs.fish = {
enable = true;
interactiveShellInit = "set fish_greeting";
@ -29,5 +29,5 @@ in
enable = true;
shellAliases = commonAliases;
};
programs.zed-editor.extensions = [ "fish" ];
programs.zed-editor.extensions = ["fish"];
}

View file

@ -4,20 +4,22 @@
nix-flatpak,
plasma-manager,
...
}: let
}:
let
my-catppuccin-kde = pkgs.catppuccin-kde.override {
flavour = [
"mocha"
"latte"
];
accents = ["pink"];
winDecStyles = ["classic"];
accents = [ "pink" ];
winDecStyles = [ "classic" ];
};
my-catppuccin-gtk = pkgs.catppuccin-gtk.override {
accents = ["pink"];
accents = [ "pink" ];
variant = "mocha";
};
in {
in
{
imports = [
./default.nix
./packages/cli.nix
@ -33,6 +35,7 @@ in {
./programs/firefox.nix
./programs/distrobox.nix
./programs/mime.nix
./programs/sdcv.nix
./programs/zed-editor.nix
# ./programs/floorp.nix
../../modules/home/gnome-keyrings.nix
@ -55,6 +58,8 @@ in {
my-catppuccin-gtk
my-catppuccin-kde
catppuccin-fcitx5
freerdp
winboat
];
home.stateVersion = "25.05";