257 lines
7.1 KiB
Nix
257 lines
7.1 KiB
Nix
_: {
|
|
imports = [
|
|
./nvim
|
|
./fish
|
|
./kanata
|
|
./kitty
|
|
./tmux
|
|
./git
|
|
./jj
|
|
./niri
|
|
./zed
|
|
./firefox
|
|
];
|
|
|
|
custom.program.graphcial-packages = {
|
|
requirements = [ "graphical" ];
|
|
home-config =
|
|
{ pkgs, ... }:
|
|
{
|
|
home.packages = with pkgs; [
|
|
spotify
|
|
obsidian
|
|
element-desktop
|
|
# chromium
|
|
bind.dnsutils
|
|
mpv
|
|
vlc
|
|
];
|
|
};
|
|
};
|
|
|
|
custom.program.discord = {
|
|
requirements = [ "graphical" ];
|
|
home-config =
|
|
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}:
|
|
let
|
|
disableFeatures = [
|
|
"WebRtcAllowInputVolumeAdjustment"
|
|
"ChromeWideEchoCancellation"
|
|
];
|
|
enableFeatures = [ ];
|
|
commandLineArgs =
|
|
lib.optionals (enableFeatures != [ ]) [
|
|
"--enable-features=${lib.concatStringsSep "," enableFeatures}"
|
|
]
|
|
++ lib.optionals (disableFeatures != [ ]) [
|
|
"--disable-features=${lib.concatStringsSep "," disableFeatures}"
|
|
];
|
|
joinedArgs = lib.concatStringsSep " " commandLineArgs;
|
|
in
|
|
{
|
|
home.file."${config.xdg.configHome}/discord/settings.json".source = pkgs.writeText "settings.json" (
|
|
lib.strings.toJSON (
|
|
let
|
|
endpoint = "https://inject.shelter.uwu.network/shelter+yt_ad_block+yt_embed_fix";
|
|
in
|
|
{
|
|
SKIP_HOST_UPDATE = true;
|
|
MINIMIZE_TO_TRAY = false;
|
|
OPEN_ON_STARTUP = false;
|
|
DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING = true;
|
|
enableHardwareAcceleration = true;
|
|
UPDATE_ENDPOINT = endpoint;
|
|
NEW_UPDATE_ENDPOINT = "${endpoint}/";
|
|
BACKGROUND_COLOR = "#2c2d32";
|
|
|
|
openasar = {
|
|
setup = true;
|
|
# using the performance preset breaks vaapi
|
|
cmdPreset = "balanced";
|
|
# quickstart is buggy and breaks discord sometimes.
|
|
quickstart = false;
|
|
# this css is made for discord compact mode. if you're not using that, stuff won't align!!
|
|
css =
|
|
# css
|
|
''
|
|
/* Hide nitro begging */
|
|
@import url("https://raw.codeberg.page/AllPurposeMat/Disblock-Origin/DisblockOrigin.theme.css");
|
|
|
|
/* Hide the Visual Refresh title bar */
|
|
.visual-refresh {
|
|
/* Hide the bar itself */
|
|
--custom-app-top-bar-height: 0px !important;
|
|
|
|
/* Title bar buttons are still visible so hide them too */
|
|
div.base__5e434 > div.bar_c38106 {
|
|
display: none;
|
|
}
|
|
|
|
/* Bring the server list down a few pixels */
|
|
ul[data-list-id="guildsnav"] > div.itemsContainer_ef3116 {
|
|
margin-top: 8px;
|
|
}
|
|
}
|
|
|
|
:root {
|
|
/* Disblock settings */
|
|
--display-clan-tags: none;
|
|
--display-active-now: none;
|
|
--display-hover-reaction-emoji: none;
|
|
--bool-show-name-gradients: false;
|
|
}
|
|
|
|
/* Make "Read All" vencord button text smaller */
|
|
button.vc-ranb-button {
|
|
font-size: 9.5pt;
|
|
font-weight: normal;
|
|
}
|
|
|
|
/* Hide Discover button */
|
|
div[data-list-item-id="guildsnav___guild-discover-button"] {
|
|
display: none !important;
|
|
}
|
|
|
|
/* Hide voice settings menus in user panel */
|
|
div[class^="micButtonParent__"] button[role="switch"] {
|
|
border-radius: var(--radius-sm);
|
|
& ~ button { display: none; }
|
|
}
|
|
/* Also reduce the gap between the buttons */
|
|
div.container__37e49 > div.buttons__37e49 {
|
|
gap: 1px;
|
|
}
|
|
'';
|
|
};
|
|
}
|
|
)
|
|
);
|
|
|
|
home.packages = with pkgs; [
|
|
(discord.override {
|
|
# we disable updates in settings.json
|
|
disableUpdates = false;
|
|
commandLineArgs = joinedArgs;
|
|
withTTS = false;
|
|
enableAutoscroll = true;
|
|
withOpenASAR = true;
|
|
})
|
|
];
|
|
};
|
|
};
|
|
|
|
custom.program.fun-packages = {
|
|
requirements = [ "fun" ];
|
|
home-config =
|
|
{ pkgs, ... }:
|
|
{
|
|
home.packages = with pkgs; [
|
|
custom.p1n3appl3.tab
|
|
prismlauncher
|
|
];
|
|
};
|
|
};
|
|
|
|
custom.program.cli-packages = {
|
|
requirements = [ "cli" ];
|
|
home-config =
|
|
{ config, pkgs, ... }:
|
|
{
|
|
home.packages = with pkgs; [
|
|
# general cli tools
|
|
sops
|
|
fzf
|
|
htop
|
|
ncdu
|
|
psmisc
|
|
ripgrep
|
|
rsync
|
|
zoxide
|
|
tmux
|
|
direnv
|
|
atuin
|
|
rcon
|
|
lix
|
|
nix-output-monitor
|
|
wget
|
|
comma
|
|
unzip
|
|
pciutils
|
|
|
|
# dev tools
|
|
gdb
|
|
clang-tools
|
|
rustup
|
|
git
|
|
python3
|
|
unixtools.xxd
|
|
net-tools
|
|
sqlite-interactive
|
|
tokei
|
|
just
|
|
uv
|
|
llvmPackages.bintools
|
|
|
|
(writeShellScriptBin "nas" ''
|
|
mkdir -p ~/Documents/nas
|
|
${sshfs}/bin/sshfs fili:/storage/storage/data/ ~/Documents/nas
|
|
cd ~/Documents/nas
|
|
'')
|
|
];
|
|
|
|
# Set up direnv
|
|
programs.direnv = {
|
|
package = pkgs.direnv;
|
|
silent = false;
|
|
nix-direnv = {
|
|
enable = true;
|
|
package = pkgs.nix-direnv;
|
|
};
|
|
};
|
|
|
|
home.file = {
|
|
"${config.xdg.configHome}/sqlite3/sqliterc".source = pkgs.writeText ".sqliterc" ''
|
|
.mode box
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
|
|
custom.program.homedirs = {
|
|
home-config =
|
|
{ config, ... }:
|
|
{
|
|
home.file = {
|
|
"dl".source = config.lib.file.mkOutOfStoreSymlink "${config.xdg.userDirs.download}";
|
|
"doc".source = config.lib.file.mkOutOfStoreSymlink "${config.xdg.userDirs.documents}";
|
|
};
|
|
};
|
|
};
|
|
|
|
custom.program.xdg = {
|
|
home-config =
|
|
{ config, ... }:
|
|
{
|
|
xdg = {
|
|
enable = true;
|
|
|
|
configHome = "${config.home.homeDirectory}/.config";
|
|
userDirs = {
|
|
enable = true;
|
|
documents = "${config.home.homeDirectory}/Documents";
|
|
desktop = "${config.home.homeDirectory}/Documents";
|
|
download = "${config.home.homeDirectory}/Downloads";
|
|
music = "${config.home.homeDirectory}/Documents/personal/music";
|
|
pictures = "${config.home.homeDirectory}/Documents/personal/pictures";
|
|
};
|
|
|
|
mime.enable = true;
|
|
};
|
|
};
|
|
};
|
|
}
|