summaryrefslogtreecommitdiff
path: root/hm/soft
diff options
context:
space:
mode:
authoradikro <adikro@disroot.org>2025-12-20 03:14:45 +0100
committeradikro <adikro@disroot.org>2025-12-20 03:14:45 +0100
commit791bc419b6dac7c70951981ef6b34cdf85828470 (patch)
tree56d0962fdf829ae942feb1344763e54dbc3c89a3 /hm/soft
parente60410393cea222b16743a1a87f29c06b9b3543b (diff)
absolutely massive rewrite, made (almost) everything modular with changes to come
Diffstat (limited to 'hm/soft')
-rw-r--r--hm/soft/awww.nix14
-rw-r--r--hm/soft/easyeffects.nix13
-rw-r--r--hm/soft/fuzzel.nix13
-rw-r--r--hm/soft/gaming.nix12
-rw-r--r--hm/soft/media.nix27
-rw-r--r--hm/soft/nixcord.nix130
-rw-r--r--hm/soft/satty.nix13
-rw-r--r--hm/soft/soft.nix15
-rw-r--r--hm/soft/spicetify.nix24
-rw-r--r--hm/soft/swayidle.nix13
-rw-r--r--hm/soft/swaylock.nix14
11 files changed, 288 insertions, 0 deletions
diff --git a/hm/soft/awww.nix b/hm/soft/awww.nix
new file mode 100644
index 0000000..e807c9d
--- /dev/null
+++ b/hm/soft/awww.nix
@@ -0,0 +1,14 @@
+{ config, lib, pkgs, inputs, ... }:
+let
+ cfg = config.szpont.hm.soft.awww;
+in
+{
+ options.szpont.hm.soft.awww.enable = lib.mkEnableOption "enables awww";
+
+ config = lib.mkIf cfg.enable {
+ services.swww = {
+ enable = true;
+ package = inputs.awww.packages.${pkgs.stdenv.hostPlatform.system}.awww;
+ };
+ };
+}
diff --git a/hm/soft/easyeffects.nix b/hm/soft/easyeffects.nix
new file mode 100644
index 0000000..beb9ad6
--- /dev/null
+++ b/hm/soft/easyeffects.nix
@@ -0,0 +1,13 @@
+{ config, lib, ... }:
+let
+ cfg = config.szpont.hm.soft.easyeffects;
+in
+{
+ options.szpont.hm.soft.easyeffects.enable = lib.mkEnableOption "EasyEffects audio equalizer";
+
+ config = lib.mkIf cfg.enable {
+ services.easyeffects = {
+ enable = true;
+ };
+ };
+}
diff --git a/hm/soft/fuzzel.nix b/hm/soft/fuzzel.nix
new file mode 100644
index 0000000..234aff7
--- /dev/null
+++ b/hm/soft/fuzzel.nix
@@ -0,0 +1,13 @@
+{ config, lib, ... }:
+let
+ cfg = config.szpont.hm.soft.fuzzel;
+in
+{
+ options.szpont.hm.soft.fuzzel.enable = lib.mkEnableOption "enables fuzzel";
+
+ config = lib.mkIf cfg.enable {
+ programs.fuzzel = {
+ enable = true;
+ };
+ };
+}
diff --git a/hm/soft/gaming.nix b/hm/soft/gaming.nix
new file mode 100644
index 0000000..5fc7095
--- /dev/null
+++ b/hm/soft/gaming.nix
@@ -0,0 +1,12 @@
+{ config, lib, ... }:
+let
+ cfg = config.szpont.hm.soft.gaming;
+in
+{
+ options.szpont.hm.soft.gaming.enable = lib.mkEnableOption "gaming hm config";
+ config = lib.mkIf cfg.enable {
+ programs.mangohud = {
+ enable = true;
+ };
+ };
+}
diff --git a/hm/soft/media.nix b/hm/soft/media.nix
new file mode 100644
index 0000000..0184957
--- /dev/null
+++ b/hm/soft/media.nix
@@ -0,0 +1,27 @@
+{ config, lib, pkgs, ... }:
+let
+ cfg = config.szpont.hm.soft.media;
+in
+{
+ options.szpont.hm.soft.media.enable = lib.mkEnableOption "media playback and processing tools";
+
+ config = lib.mkIf cfg.enable {
+ programs.mpv = {
+ enable = true;
+ config = {
+
+ };
+ };
+ programs.yt-dlp = {
+ enable = true;
+ package = pkgs.yt-dlp_git;
+ };
+
+ home.packages = with pkgs; [
+ # syncplay
+ syncplay-nogui
+ ffmpeg
+ imagemagick
+ ];
+ };
+}
diff --git a/hm/soft/nixcord.nix b/hm/soft/nixcord.nix
new file mode 100644
index 0000000..4da3466
--- /dev/null
+++ b/hm/soft/nixcord.nix
@@ -0,0 +1,130 @@
+{ inputs, config, lib, pkgs, ... }:
+let
+ cfg = config.szpont.hm.soft.nixcord;
+in
+{
+ imports = [ inputs.nixcord.homeModules.nixcord ];
+
+ options.szpont.hm.soft.nixcord.enable = lib.mkEnableOption "nixcord configuration";
+
+ config = lib.mkIf cfg.enable {
+ programs.nixcord = {
+ enable = true;
+ package = pkgs.discord-krisp;
+ discord = {
+ enable = true;
+ vencord.enable = false;
+ equicord.enable = true;
+ };
+ config = {
+ frameless = true;
+ plugins = {
+ alwaysExpandRoles = { enable = true; hideArrow = true; };
+ alwaysTrust = { enable = true; domain = false; };
+ anammox.enable = true;
+ betterAudioPlayer.enable = true;
+ betterGifAltText.enable = true;
+ betterGifPicker.enable = true;
+ betterInvites.enable = true;
+ betterNotesBox = { enable = true; hide = true; };
+ betterQuickReact = { enable = true; columns = 6.0; rows = 1.0; compactMode = true; };
+ betterRoleContext.enable = true;
+ betterUploadButton.enable = true;
+ biggerStreamPreview.enable = true;
+ callTimer.enable = true;
+ characterCounter = { enable = true; colorEffects = false; };
+ cleanChannelName.enable = true;
+ clearUrLs.enable = true;
+ copyFileContents.enable = true;
+ copyStickerLinks.enable = true;
+ crashHandler.enable = true;
+ customTimestamps.enable = true;
+ disableCallIdle.enable = true;
+ disableDeepLinks.enable = true;
+ dontRoundMyTimestamps.enable = true;
+ equicordHelper = { enable = true; noMirroredCamera = true; };
+ expressionCloner.enable = true;
+ fakeNitro = { enable = true; enableEmojiBypass = false; enableStickerBypass = false; };
+ favoriteEmojiFirst.enable = true;
+ fixCodeblockGap.enable = true;
+ fixFileExtensions.enable = true;
+ fixImagesQuality.enable = true;
+ fixSpotifyEmbeds.enable = true;
+ fixYoutubeEmbeds.enable = true;
+ forceOwnerCrown.enable = true;
+ friendsSince.enable = true;
+ fullSearchContext.enable = true;
+ fullUserInChatbox.enable = true;
+ gifCollections = { enable = true; preventDuplicates = true; showCopyImageLink = true; };
+ gifRoulette = { enable = true; pingOwnerChance = true; };
+ guildTagSettings.enable = true;
+ homeTyping.enable = true;
+ ignoreTerms.enable = true;
+ iLoveSpam.enable = true;
+ imageFilename.enable = true;
+ imageLink.enable = true;
+ imageZoom = { enable = true; nearestNeighbour = true; saveZoomValues = true; square = true; };
+ imgToGif.enable = true;
+ inRole.enable = true;
+ inviteDefaults.enable = true;
+ memberCount.enable = true;
+ mentionAvatars = { enable = true; showAtSymbol = true; };
+ messageLinkEmbeds.enable = true;
+ messageLogger = { enable = true; ignoreSelf = true; };
+ moyai.enable = true;
+ musicControls.enable = true;
+ neverPausePreviews.enable = true;
+ newGuildSettings = { enable = true; messages = 1; };
+ newPluginsManager.enable = true;
+ noF1.enable = true;
+ noMaskedUrlPaste.enable = true;
+ noModalAnimation.enable = true;
+ noNitroUpsell.enable = true;
+ noOnboardingDelay.enable = true;
+ noMosaic.enable = true;
+ noProfileThemes.enable = true;
+ noSystemBadge.enable = true;
+ noTypingAnimation.enable = true;
+ overrideForumDefaults = { enable = true; defaultLayout = 2; };
+ onePingPerDm.enable = true;
+ openInApp.enable = true;
+ pauseInvitesForever.enable = true;
+ permissionFreeWill = { enable = true; lockout = false; };
+ permissionsViewer.enable = true;
+ pinDMs = { enable = true; canCollapseDmSection = true; };
+ pinIcon.enable = true;
+ platformIndicators.enable = true;
+ quoter.enable = true;
+ relationshipNotifier.enable = true;
+ roleColorEverywhere.enable = true;
+ saveFavoriteGiFs.enable = true;
+ sendTimestamps.enable = true;
+ serverInfo.enable = true;
+ showConnections.enable = true;
+ showHiddenChannels = { enable = true; };
+ showHiddenThings.enable = true;
+ showResourceChannels.enable = true;
+ showTimeoutDuration.enable = true;
+ spotifyCrack = { enable = true; noSpotifyAutoPause = false; };
+ streamerModeOnStream.enable = true;
+ typingIndicator = { enable = true; indicatorMode = 2; };
+ typingTweaks.enable = true;
+ unindent.enable = true;
+ universalMention = { enable = true; globalMention = true; };
+ unlimitedAccounts.enable = true;
+ unlockedAvatarZoom.enable = true;
+ userVoiceShow.enable = true;
+ validReply.enable = true;
+ validUser.enable = true;
+ viewIcons = { enable = true; format = "png"; };
+ voiceMessages.enable = true;
+ volumeBooster.enable = true;
+ whoReacted.enable = true;
+ whosWatching.enable = true;
+ youtubeAdblock.enable = true;
+ youtubeDescription.enable = true;
+ };
+ };
+ };
+ };
+}
diff --git a/hm/soft/satty.nix b/hm/soft/satty.nix
new file mode 100644
index 0000000..d3964a7
--- /dev/null
+++ b/hm/soft/satty.nix
@@ -0,0 +1,13 @@
+{ config, lib, ... }:
+let
+ cfg = config.szpont.hm.soft.satty;
+in
+{
+ options.szpont.hm.soft.satty.enable = lib.mkEnableOption "enables satty image editor";
+
+ config = lib.mkIf cfg.enable {
+ programs.satty = {
+ enable = true;
+ };
+ };
+}
diff --git a/hm/soft/soft.nix b/hm/soft/soft.nix
new file mode 100644
index 0000000..eb975ea
--- /dev/null
+++ b/hm/soft/soft.nix
@@ -0,0 +1,15 @@
+{ ... }:
+{
+ imports = [
+ ./awww.nix
+ ./easyeffects.nix
+ ./fuzzel.nix
+ ./gaming.nix
+ ./media.nix
+ ./nixcord.nix
+ ./satty.nix
+ ./spicetify.nix
+ ./swayidle.nix
+ ./swaylock.nix
+ ];
+}
diff --git a/hm/soft/spicetify.nix b/hm/soft/spicetify.nix
new file mode 100644
index 0000000..96c4d0d
--- /dev/null
+++ b/hm/soft/spicetify.nix
@@ -0,0 +1,24 @@
+{ inputs, pkgs, config, lib, ... }:
+let
+ cfg = config.szpont.hm.soft.spicetify;
+ spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system};
+in
+{
+ imports = [ inputs.spicetify-nix.homeManagerModules.default ];
+
+ options.szpont.hm.soft.spicetify.enable = lib.mkEnableOption "spicetify config";
+
+ config = lib.mkIf cfg.enable {
+ programs.spicetify = {
+ enable = true;
+
+ enabledExtensions = with spicePkgs.extensions; [
+ adblockify
+ hidePodcasts
+ ];
+
+ theme = spicePkgs.themes.catppuccin;
+ colorScheme = "mocha";
+ };
+ };
+}
diff --git a/hm/soft/swayidle.nix b/hm/soft/swayidle.nix
new file mode 100644
index 0000000..d06c74a
--- /dev/null
+++ b/hm/soft/swayidle.nix
@@ -0,0 +1,13 @@
+{ config, lib, ... }:
+let
+ cfg = config.szpont.hm.soft.swayidle;
+in
+{
+ options.szpont.hm.soft.swayidle.enable = lib.mkEnableOption "enables swayidle";
+
+ config = lib.mkIf cfg.enable {
+ services.swayidle = {
+ enable = true;
+ };
+ };
+}
diff --git a/hm/soft/swaylock.nix b/hm/soft/swaylock.nix
new file mode 100644
index 0000000..a303e48
--- /dev/null
+++ b/hm/soft/swaylock.nix
@@ -0,0 +1,14 @@
+{ config, lib, pkgs, ... }:
+let
+ cfg = config.szpont.hm.soft.swaylock;
+in
+{
+ options.szpont.hm.soft.swaylock.enable = lib.mkEnableOption "enables swaylock";
+
+ config = lib.mkIf cfg.enable {
+ programs.swaylock = {
+ enable = true;
+ package = pkgs.swaylock-effects;
+ };
+ };
+}