niksos/modules/gui/armcord.nix

278 lines
14 KiB
Nix

{
config,
lib,
pkgs,
...
}: with lib; let
cfg = config.myOptions.programs.armcord;
username = config.myOptions.other.system.username;
storage = "ArmCord/storage";
in {
options.myOptions.programs.armcord = {
enable = mkEnableOption "armcord";
};
config = mkIf cfg.enable {
home-manager.users.${username} = {
home.packages = with pkgs; [
(armcord.overrideAttrs (old: {
postFixup = ''
wrapProgram $out/bin/armcord \
--add-flags "--enable-features=UseOzonePlatform --ozone-platform=wayland"
'';
}))
];
#xdg.configFile = {
# "${storage}/settings.json".text = builtins.toJSON {
# windowStyle = "native";
# channel = "stable";
# armcordCSP = true;
# minimizeToTray = false;
# mobileMode = false;
# automaticPatches = false;
# performanceMode = "performance";
# useLegacyCapturer = false;
# alternativePaste = false;
# dynamicIcon = false;
# spellcheck = false;
# disableAutogain = false;
# startMinimized = false;
# trayIcon = "default";
# mods = "vencord";
# inviteWebsocket = true;
# tray = false;
# skipSplash = true;
# doneSetup = true;
# };
# "${storage}/lang.json".text = builtins.toJSON {
# lang = "en-GB";
# };
# # this file doesn't actually do anything - you have to import it manually because of armcord's limitations
# "${storage}/vencord.json".text = builtins.toJSON {
# settings = {
# notifyAboutUpdates = true;
# autoUpdate = false;
# autoUpdateNotification = true;
# useQuickCss = true;
# themeLinks = [];
# enabledThemes = [];
# enableReactDevtools = false;
# frameless = false;
# transparent = false;
# winCtrlQ = false;
# macosTranslucency = false;
# disableMinSize = false;
# winNativeTitleBar = false;
# plugins = {
# BadgeAPI.enabled = true;
# CommandsAPI.enabled = true;
# ContextMenuAPI.enabled = true;
# MemberListDecoratorsAPI.enabled = false;
# MessageAccessoriesAPI.enabled = false;
# MessageDecorationsAPI.enabled = false;
# MessageEventsAPI.enabled = true;
# MessagePopoverAPI.enabled = false;
# NoticesAPI.enabled = true;
# ServerListAPI.enabled = false;
# SettingsStoreAPI.enabled = false;
# NoTrack.enabled = true;
# Settings = {
# enabled = true;
# settingsLocation = "aboveActivity";
# };
# AlwaysAnimate.enabled = false;
# AlwaysTrust.enabled = false;
# AnonymiseFileNames.enabled = false;
# "WebRichPresence (arRPC)".enabled = false;
# BANger.enabled = false;
# BetterFolders = {
# enabled = true;
# sidebar = true;
# closeAllHomeButton = false;
# closeAllFolders = false;
# forceOpen = false;
# sidebarAnim = true;
# };
# BetterGifAltText.enabled = false;
# BetterNotesBox.enabled = false;
# BetterRoleDot.enabled = false;
# BetterUploadButton.enabled = false;
# BiggerStreamPreview.enabled = false;
# BlurNSFW = {
# enabled = true;
# blurAmount = 10;
# };
# CallTimer.enabled = false;
# ClearURLs.enabled = false;
# ColorSighted.enabled = false;
# ConsoleShortcuts.enabled = false;
# CrashHandler.enabled = true;
# CustomRPC.enabled = false;
# DisableDMCallIdle.enabled = false;
# EmoteCloner.enabled = false;
# Experiments.enabled = false;
# F8Break.enabled = false;
# FakeNitro = {
# enabled = true;
# enableEmojiBypass = true;
# enableStickerBypass = true;
# enableStreamQualityBypass = true;
# transformStickers = true;
# transformEmojis = true;
# transformCompoundSentence = false;
# emojiSize = 48;
# };
# FakeProfileThemes.enabled = false;
# FavoriteEmojiFirst.enabled = false;
# FixInbox.enabled = false;
# ForceOwnerCrown.enabled = false;
# FriendInvites.enabled = false;
# GameActivityToggle.enabled = false;
# GifPaste.enabled = false;
# HideAttachments.enabled = false;
# iLoveSpam.enabled = false;
# IgnoreActivities.enabled = false;
# ImageZoom.enabled = false;
# InvisibleChat.enabled = false;
# KeepCurrentChannel.enabled = false;
# LastFMRichPresence.enabled = false;
# LoadingQuotes.enabled = false;
# MemberCount.enabled = true;
# MessageClickActions.enabled = false;
# MessageLinkEmbeds.enabled = false;
# MessageLogger = {
# enabled = true;
# deleteStyle = "text";
# ignoreBots = false;
# ignoreSelf = false;
# ignoreUsers = "";
# ignoreChannels = "";
# ignoreGuilds = "";
# };
# MessageTags.enabled = false;
# MoreCommands.enabled = false;
# MoreKaomoji.enabled = false;
# MoreUserTags.enabled = false;
# Moyai.enabled = false;
# MuteNewGuild.enabled = false;
# MutualGroupDMs.enabled = false;
# NoBlockedMessages = {
# enabled = true;
# ignoreBlockedMessages = false;
# };
# NoDevtoolsWarning.enabled = false;
# NoF1.enabled = false;
# NoPendingCount.enabled = false;
# NoProfileThemes.enabled = true;
# NoReplyMention = {
# enabled = true;
# userList = "";
# shouldPingListed = true;
# };
# NoScreensharePreview.enabled = false;
# NoUnblockToJump.enabled = false;
# NSFWGateBypass.enabled = false;
# oneko.enabled = false;
# OpenInApp.enabled = false;
# "Party mode 🎉".enabled = false;
# PermissionsViewer.enabled = false;
# petpet.enabled = false;
# PinDMs.enabled = false;
# PlainFolderIcon.enabled = false;
# PlatformIndicators.enabled = false;
# PronounDB.enabled = false;
# QuickMention.enabled = false;
# QuickReply.enabled = false;
# ReactErrorDecoder.enabled = false;
# ReadAllNotificationsButton.enabled = false;
# RelationshipNotifier.enabled = false;
# RevealAllSpoilers.enabled = false;
# ReverseImageSearch.enabled = false;
# ReviewDB.enabled = false;
# RoleColorEverywhere.enabled = false;
# SearchReply.enabled = false;
# SendTimestamps.enabled = false;
# ServerListIndicators.enabled = false;
# ShikiCodeblocks.enabled = false;
# ShowAllMessageButtons.enabled = false;
# ShowConnections.enabled = false;
# ShowHiddenChannels = {
# enabled = true;
# showMode = 0;
# hideUnreads = true;
# };
# ShowMeYourName.enabled = false;
# SilentMessageToggle.enabled = false;
# SilentTyping = {
# enabled = true;
# showIcon = false;
# isEnabled = true;
# };
# SortFriendRequests.enabled = false;
# SpotifyControls.enabled = false;
# SpotifyCrack.enabled = false;
# SpotifyShareCommands.enabled = false;
# StartupTimings.enabled = false;
# SupportHelper.enabled = true;
# TextReplace.enabled = false;
# TimeBarAllActivities.enabled = false;
# Translate.enabled = false;
# TypingIndicator = {
# enabled = true;
# includeMutedChannels = false;
# };
# TypingTweaks = {
# enabled = true;
# alternativeFormatting = true;
# showRoleColors = true;
# showAvatars = true;
# };
# Unindent.enabled = false;
# UnsuppressEmbeds.enabled = false;
# UrbanDictionary.enabled = false;
# UserVoiceShow.enabled = false;
# USRBG.enabled = false;
# UwUifier.enabled = false;
# ValidUser.enabled = false;
# VoiceChatDoubleClick.enabled = false;
# VcNarrator.enabled = false;
# VencordToolbox.enabled = false;
# ViewIcons.enabled = false;
# ViewRaw.enabled = false;
# WebContextMenus.enabled = false;
# GreetStickerPicker.enabled = false;
# WhoReacted.enabled = false;
# Wikisearch.enabled = false;
# FavoriteGifSearch.enabled = false;
# NormalizeMessageLinks.enabled = false;
# PreviewMessage.enabled = false;
# "AI Noise Suppression" = {
# enabled = true;
# isEnabled = true;
# };
# SecretRingToneEnabler.enabled = false;
# VoiceMessages.enabled = false;
# };
# notifications = {
# timeout = 5000;
# position = "bottom-right";
# useNative = "not-focused";
# logLimit = 50;
# };
# cloud = {
# authenticated = false;
# url = "https://api.vencord.dev/";
# settingsSync = false;
# settingsSyncVersion = 1694474144460;
# };
# };
# quickCss = "";
# };
#};
};
};
}