feat: Added icons for homepage

This commit is contained in:
uttarayan21
2025-07-25 15:42:16 +05:30
parent c8665b9205
commit 6a6fc0dbea
19 changed files with 119 additions and 66 deletions

View File

@@ -261,7 +261,7 @@
}; };
}; };
mkDevice = device: { mkDevice = device: rec {
isLinux = !isNull (builtins.match ".*-linux" device.system); isLinux = !isNull (builtins.match ".*-linux" device.system);
isServer = isServer =
if (builtins.hasAttr "isServer" device) if (builtins.hasAttr "isServer" device)
@@ -273,6 +273,7 @@
else false; else false;
isDarwin = !isNull (builtins.match ".*-darwin" device.system); isDarwin = !isNull (builtins.match ".*-darwin" device.system);
isArm = !isNull (builtins.match "aarch64-.*" device.system); isArm = !isNull (builtins.match "aarch64-.*" device.system);
isDesktopLinux = isLinux && hasGui;
hasGui = hasGui =
if (builtins.hasAttr "hasGui" device) if (builtins.hasAttr "hasGui" device)
then device.hasGui then device.hasGui
@@ -284,6 +285,7 @@
system = device.system; system = device.system;
name = device.name; name = device.name;
user = device.user; user = device.user;
is = name: device.name == name;
}; };
nixos_devices = nixpkgs.lib.attrsets.filterAttrs (n: x: x.isNix) devices; nixos_devices = nixpkgs.lib.attrsets.filterAttrs (n: x: x.isNix) devices;

View File

@@ -11,7 +11,6 @@
../modules ../modules
./apps ./apps
./auth.nix ./auth.nix
./linux
./programs ./programs
./scripts.nix ./scripts.nix
./services ./services

View File

@@ -1,29 +0,0 @@
{
pkgs,
device,
...
}: let
linux_gui = device.hasGui && pkgs.stdenv.isLinux;
in {
imports = [
./hyprland.nix
./gtk.nix
./anyrun.nix
./ironbar
./gui.nix
./eww.nix
];
services.kdeconnect.enable = linux_gui;
services.kdeconnect.indicator = linux_gui;
home.packages = with pkgs;
lib.optionals linux_gui [
ncpamixer
];
# services.swayosd.enable = linux_gui;
# services.swaync.enable = linux_gui;
# services.nextcloud-client = {
# enable = device.hasGui;
# startInBackground = true;
# };
}

View File

@@ -9,45 +9,45 @@
./atuin.nix ./atuin.nix
./bat.nix ./bat.nix
./carapace.nix ./carapace.nix
./ddcbacklight.nix
./direnv.nix ./direnv.nix
./eza.nix ./eza.nix
./fish.nix ./fish.nix
./fzf.nix ./fzf.nix
./gh.nix ./gh.nix
./git.nix ./git.nix
# ./goread.nix
# ./helix.nix
./mpd.nix ./mpd.nix
# ./newsboat.nix ./ncpamixer.nix
./nh.nix ./nh.nix
./nix-index.nix ./nix-index.nix
./nushell.nix ./nushell.nix
./omnix.nix
./ryujinx.nix
./sops.nix ./sops.nix
./ssh.nix ./ssh.nix
./starship.nix ./starship.nix
./tmux.nix ./tmux.nix
./tuifeed.nix ./tuifeed.nix
./yazi.nix ./yazi.nix
./zoxide.nix
./omnix.nix
./yt-dlp.nix ./yt-dlp.nix
./ryujinx.nix ./zoxide.nix
./ddcbacklight.nix
# ./neovim.nix # ./goread.nix
# ./mpris-scrobbler.nix # ./helix.nix
# ./magika.nix # ./magika.nix
# ./mpris-scrobbler.nix
# ./ncmpcpp.nix # ./ncmpcpp.nix
# ./neomutt.nix # ./neomutt.nix
# ./neovim.nix
# ./newsboat.nix
# ./template.nix
# ./zellij.nix # ./zellij.nix
#./template.nix
]; ];
home.packages = with pkgs; home.packages = with pkgs;
[ [
aria2
nb
(nixvim.makeNixvim (import ../../neovim))
_1password-cli _1password-cli
alejandra alejandra
aria2
ast-grep ast-grep
bottom bottom
btop btop
@@ -62,6 +62,8 @@
jq jq
just just
macchina macchina
nb
(nixvim.makeNixvim (import ../../neovim))
p7zip p7zip
pandoc pandoc
pfetch-rs pfetch-rs

View File

@@ -0,0 +1,10 @@
{
pkgs,
lib,
device,
...
}: {
home.packages = lib.optionals (device.is "ryu") [
pkgs.ncpamixer
];
}

View File

@@ -7,7 +7,7 @@
}: { }: {
# imports = [inputs.anyrun.homeManagerModules.default]; # imports = [inputs.anyrun.homeManagerModules.default];
programs.anyrun = { programs.anyrun = {
enable = device.hasGui && pkgs.stdenv.isLinux; enable = device.isDesktopLinux;
config = { config = {
plugins = with inputs.anyrun.packages.${pkgs.system}; [ plugins = with inputs.anyrun.packages.${pkgs.system}; [
inputs.anyrun-nixos-options.packages.${pkgs.system}.default inputs.anyrun-nixos-options.packages.${pkgs.system}.default

View File

@@ -1,8 +1,13 @@
{...}: { {...}: {
imports = [ imports = [
# ./syncthing.nix
# ./command-runner.nix
./swaync.nix ./swaync.nix
./swayosd.nix ./swayosd.nix
./kdeconnect.nix
./hyprland.nix
./gtk.nix
./anyrun.nix
./ironbar
./gui.nix
./eww.nix
]; ];
} }

View File

@@ -4,7 +4,7 @@
lib, lib,
... ...
}: { }: {
systemd.user.services.onepassword-gui = lib.optionalAttrs (pkgs.stdenv.isLinux && device.hasGui) { systemd.user.services.onepassword-gui = lib.optionalAttrs (device.is "ryu") {
Unit = { Unit = {
Description = "1Password GUI"; Description = "1Password GUI";
BindsTo = ["graphical-session.target"]; BindsTo = ["graphical-session.target"];
@@ -20,7 +20,7 @@
}; };
}; };
home.packages = with pkgs; home.packages = with pkgs;
lib.optionals (pkgs.stdenv.isLinux && device.hasGui) [ lib.optionals (device.is "ryu") [
nautilus nautilus
totem totem
ffmpegthumbnailer ffmpegthumbnailer

View File

@@ -0,0 +1,4 @@
{device, ...}: {
services.kdeconnect.enable = device.is "ryu";
services.kdeconnect.indicator = device.is "ryu";
}

View File

@@ -1,6 +1,6 @@
{device, ...}: { {device, ...}: {
services.swaync = { services.swaync = {
enable = device.name == "ryu"; enable = device.is "ryu";
settings = { settings = {
notification-inline-replies = true; notification-inline-replies = true;
cssPriority = "user"; cssPriority = "user";

View File

@@ -1,3 +1,3 @@
{device, ...}: { {device, ...}: {
services.swayosd.enable = device.name == "ryu"; services.swayosd.enable = device.is "ryu";
} }

View File

@@ -21,48 +21,56 @@
"Tsuba" = [ "Tsuba" = [
{ {
"Jellyfin" = { "Jellyfin" = {
icon = "jellyfin.png";
description = "Jellyfin Media Server"; description = "Jellyfin Media Server";
href = "https://jellyfin.tsuba.darksailor.dev"; href = "https://jellyfin.tsuba.darksailor.dev";
}; };
} }
{ {
"Jellyseerr" = { "Jellyseerr" = {
icon = "jellyseerr.png";
description = "Jellyseerr Media Server"; description = "Jellyseerr Media Server";
href = "https://jellyseerr.tsuba.darksailor.dev"; href = "https://jellyseerr.tsuba.darksailor.dev";
}; };
} }
{ {
"Sonarr" = { "Sonarr" = {
icon = "sonarr.png";
description = "Sonarr"; description = "Sonarr";
href = "https://sonarr.tsuba.darksailor.dev"; href = "https://sonarr.tsuba.darksailor.dev";
}; };
} }
{ {
"Lidarr" = { "Lidarr" = {
icon = "lidarr.png";
description = "Lidarr"; description = "Lidarr";
href = "https://lidarr.tsuba.darksailor.dev"; href = "https://lidarr.tsuba.darksailor.dev";
}; };
} }
{ {
"Radarr" = { "Radarr" = {
icon = "radarr.png";
description = "Radarr"; description = "Radarr";
href = "https://radarr.tsuba.darksailor.dev"; href = "https://radarr.tsuba.darksailor.dev";
}; };
} }
{ {
"Deluge" = { "Deluge" = {
icon = "deluge.png";
description = "Deluge"; description = "Deluge";
href = "https://deluge.tsuba.darksailor.dev"; href = "https://deluge.tsuba.darksailor.dev";
}; };
} }
{ {
"Prowlarr" = { "Prowlarr" = {
icon = "prowlarr.png";
description = "Prowlarr"; description = "Prowlarr";
href = "https://prowlarr.tsuba.darksailor.dev"; href = "https://prowlarr.tsuba.darksailor.dev";
}; };
} }
{ {
"Home Assistant" = { "Home Assistant" = {
icon = "home-assistant.png";
description = "Home Automation"; description = "Home Automation";
href = "https://home.darksailor.dev"; href = "https://home.darksailor.dev";
}; };
@@ -73,18 +81,21 @@
"Mirai" = [ "Mirai" = [
{ {
"Gitea" = { "Gitea" = {
icon = "gitea.png";
description = "Gitea Code Hosting"; description = "Gitea Code Hosting";
href = "https://git.darksailor.dev"; href = "https://git.darksailor.dev";
}; };
} }
{ {
"Nextcloud" = { "Nextcloud" = {
icon = "nextcloud.png";
description = "Nextcloud Suite"; description = "Nextcloud Suite";
href = "https://cloud.darksailor.dev"; href = "https://cloud.darksailor.dev";
}; };
} }
{ {
"Open WebUI" = { "Open WebUI" = {
icon = "open-webui.png";
description = "Open WebUI for self hosted llms"; description = "Open WebUI for self hosted llms";
href = "https://llama.darksailor.dev"; href = "https://llama.darksailor.dev";
}; };
@@ -92,6 +103,44 @@
]; ];
} }
]; ];
bookmarks = [
{
"Nix" = [
{
"Nixpkgs" = [
{
abbr = "pkgs";
href = "https://search.nixos.org/packages?channel=unstable";
}
];
}
{
"NixOS" = [
{
abbr = "nixos";
href = "https://search.nixos.org/options?channel=unstable";
}
];
}
{
"Home Manager" = [
{
abbr = "hm";
href = "https://home-manager-options.extranix.com";
}
];
}
{
"NixVim" = [
{
abbr = "nixvim";
href = "https://nix-community.github.io/nixvim/search";
}
];
}
];
}
];
}; };
caddy = { caddy = {
virtualHosts."dashboard.darksailor.dev".extraConfig = '' virtualHosts."dashboard.darksailor.dev".extraConfig = ''

View File

@@ -1,20 +1,31 @@
{config, ...}: { {
services.searx = { config,
enable = true; pkgs,
# configureUwsgi = true; ...
# uwsgiConfig = { }: {
# socket = "/run/searx/searx.sock"; systemd.services.websurfx = {
# chmod-socket = "660"; description = "Websurfx";
# }; wantedBy = ["multi-user.target"];
settings = { after = ["network.target"];
server = { serviceConfig = {
port = "8889"; Type = "simple";
secret_key = "foobar"; ExecStart = "${pkgs.websurfx}/bin/websurfx";
base_url = "https://search.darksailor.dev"; Restart = "always";
RestartSec = 5;
User = "websurfx";
Group = "websurfx";
}; };
}; };
users.users.websurfx = {
group = "websurfx";
home = "/var/lib/websurfx";
isSystemUser = true;
# uid = config.ids.uids.websurfx;
};
users.groups.websurfx = {
# gid = config.ids.gids.websurfx;
}; };
services.caddy.virtualHosts."search.darksailor.dev".extraConfig = '' services.caddy.virtualHosts."search.darksailor.dev".extraConfig = ''
reverse_proxy localhost:8889 reverse_proxy localhost:8080
''; '';
} }