Format everything with alejandra
This commit is contained in:
parent
82bbd7ce87
commit
7888103b1e
100 changed files with 2827 additions and 2756 deletions
|
|
@ -1,14 +1,12 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./discord.nix
|
||||
./firefox.nix
|
||||
./micro.nix
|
||||
./keepassxc.nix
|
||||
./jamesdsp.nix
|
||||
./vscode.nix
|
||||
./git.nix
|
||||
./ssh.nix
|
||||
];
|
||||
{...}: {
|
||||
imports = [
|
||||
./discord.nix
|
||||
./firefox.nix
|
||||
./micro.nix
|
||||
./keepassxc.nix
|
||||
./jamesdsp.nix
|
||||
./vscode.nix
|
||||
./git.nix
|
||||
./ssh.nix
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,41 +1,45 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
discordOverlay = self: super: {
|
||||
discord = super.discord.override {
|
||||
withOpenASAR = true;
|
||||
withVencord = true;
|
||||
};
|
||||
# Update some stuff while I wait for nixpkgs
|
||||
/*vencord = super.vencord.overrideAttrs rec {
|
||||
version = "522fdcd";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "Vendicated";
|
||||
repo = "Vencord";
|
||||
rev = "522fdcd";
|
||||
#rev = "v${version}";
|
||||
hash = "sha256-9G7FNL4pHaaLachzJmeAol0WpNUj533K2FNa7DH0eBM=";
|
||||
};
|
||||
};*/
|
||||
};
|
||||
stock-discord = self: super: {
|
||||
discord = super.discord.override {
|
||||
withOpenASAR = false;
|
||||
withVencord = false;
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
# Sometimes discord breaks after updates, and launching it stock once fixes it
|
||||
specialisation.stockDiscord.configuration = {
|
||||
nixpkgs.overlays = lib.mkAfter [ stock-discord ];
|
||||
};
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
discordOverlay = self: super: {
|
||||
discord = super.discord.override {
|
||||
withOpenASAR = true;
|
||||
withVencord = true;
|
||||
};
|
||||
# Update some stuff while I wait for nixpkgs
|
||||
/*
|
||||
vencord = super.vencord.overrideAttrs rec {
|
||||
version = "522fdcd";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "Vendicated";
|
||||
repo = "Vencord";
|
||||
rev = "522fdcd";
|
||||
#rev = "v${version}";
|
||||
hash = "sha256-9G7FNL4pHaaLachzJmeAol0WpNUj533K2FNa7DH0eBM=";
|
||||
};
|
||||
};
|
||||
*/
|
||||
};
|
||||
stock-discord = self: super: {
|
||||
discord = super.discord.override {
|
||||
withOpenASAR = false;
|
||||
withVencord = false;
|
||||
};
|
||||
};
|
||||
in {
|
||||
# Sometimes discord breaks after updates, and launching it stock once fixes it
|
||||
specialisation.stockDiscord.configuration = {
|
||||
nixpkgs.overlays = lib.mkAfter [stock-discord];
|
||||
};
|
||||
|
||||
nixpkgs.overlays = [ discordOverlay ];
|
||||
home-manager.users.toast = {
|
||||
home.packages = with pkgs; [
|
||||
discord
|
||||
vesktop
|
||||
];
|
||||
};
|
||||
nixpkgs.overlays = [discordOverlay];
|
||||
home-manager.users.toast = {
|
||||
home.packages = with pkgs; [
|
||||
discord
|
||||
vesktop
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,57 +1,59 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
{
|
||||
# System wide firefox settings
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
policies = {
|
||||
"DisablePocket" = true;
|
||||
"DisableTelemetry" = true;
|
||||
# You need these for Spotify
|
||||
"EncryptedMediaExtensions" = { "Enabled" = true; };
|
||||
"ExtensionSettings" = {
|
||||
# TODO: Install extensions the NUR instead of from AMO
|
||||
"uBlock0@raymondhill.net" = {
|
||||
"installation_mode" = "force_installed";
|
||||
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
};
|
||||
# Decentraleyes
|
||||
"jid1-BoFifL9Vbdl2zQ@jetpack" = {
|
||||
"installation_mode" = "normal_installed";
|
||||
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/decentraleyes/latest.xpi";
|
||||
};
|
||||
"jid1-MnnxcxisBPnSXQ@jetpack" = {
|
||||
"installation_mode" = "normal_installed";
|
||||
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi";
|
||||
};
|
||||
# Uninstall the kde plasma integration extension if KDE is not installed
|
||||
"plasma-browser-integration@kde.org"."installation_mode" = lib.mkDefault "blocked";
|
||||
};
|
||||
"Preferences" = {
|
||||
# Enable video hardware acceleration
|
||||
"media.ffmpeg.vaapi.enabled" = {
|
||||
"Value" = true;
|
||||
"Status" = "default";
|
||||
};
|
||||
"dom.security.https_only_mode" = {
|
||||
"Value" = true;
|
||||
"Status" = "locked";
|
||||
};
|
||||
"general.smoothScroll.msdPhysics.enabled" = {
|
||||
"Value" = true;
|
||||
"Status" = "default";
|
||||
};
|
||||
};
|
||||
"PromptForDownloadLocation" = true;
|
||||
# I use an external password manager, so the built in one just bothers me
|
||||
"PasswordManagerEnabled" = false;
|
||||
"Permissions" = {
|
||||
"Autoplay" = {
|
||||
"Allow" = [ "https://www.youtube.com" ];
|
||||
"Default" = "block-audio-video";
|
||||
};
|
||||
};
|
||||
"FirefoxHome" = { "SponsoredTopSites" = false; };
|
||||
};
|
||||
};
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
# System wide firefox settings
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
policies = {
|
||||
"DisablePocket" = true;
|
||||
"DisableTelemetry" = true;
|
||||
# You need these for Spotify
|
||||
"EncryptedMediaExtensions" = {"Enabled" = true;};
|
||||
"ExtensionSettings" = {
|
||||
# TODO: Install extensions the NUR instead of from AMO
|
||||
"uBlock0@raymondhill.net" = {
|
||||
"installation_mode" = "force_installed";
|
||||
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
};
|
||||
# Decentraleyes
|
||||
"jid1-BoFifL9Vbdl2zQ@jetpack" = {
|
||||
"installation_mode" = "normal_installed";
|
||||
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/decentraleyes/latest.xpi";
|
||||
};
|
||||
"jid1-MnnxcxisBPnSXQ@jetpack" = {
|
||||
"installation_mode" = "normal_installed";
|
||||
"install_url" = "https://addons.mozilla.org/firefox/downloads/latest/privacy-badger17/latest.xpi";
|
||||
};
|
||||
# Uninstall the kde plasma integration extension if KDE is not installed
|
||||
"plasma-browser-integration@kde.org"."installation_mode" = lib.mkDefault "blocked";
|
||||
};
|
||||
"Preferences" = {
|
||||
# Enable video hardware acceleration
|
||||
"media.ffmpeg.vaapi.enabled" = {
|
||||
"Value" = true;
|
||||
"Status" = "default";
|
||||
};
|
||||
"dom.security.https_only_mode" = {
|
||||
"Value" = true;
|
||||
"Status" = "locked";
|
||||
};
|
||||
"general.smoothScroll.msdPhysics.enabled" = {
|
||||
"Value" = true;
|
||||
"Status" = "default";
|
||||
};
|
||||
};
|
||||
"PromptForDownloadLocation" = true;
|
||||
# I use an external password manager, so the built in one just bothers me
|
||||
"PasswordManagerEnabled" = false;
|
||||
"Permissions" = {
|
||||
"Autoplay" = {
|
||||
"Allow" = ["https://www.youtube.com"];
|
||||
"Default" = "block-audio-video";
|
||||
};
|
||||
};
|
||||
"FirefoxHome" = {"SponsoredTopSites" = false;};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
{ pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
home-manager.users.toast = {
|
||||
programs.git = {
|
||||
package = pkgs.gitFull;
|
||||
|
|
@ -11,6 +13,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
home.packages = [ pkgs.git-cola ];
|
||||
home.packages = [pkgs.git-cola];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
users.users.toast.packages = [ pkgs.jamesdsp ];
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
users.users.toast.packages = [pkgs.jamesdsp];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,63 +1,69 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
kpxcSettings = lib.generators.toINI {} {
|
||||
General = {
|
||||
# Not sure what changing this does, I'll leave it alone
|
||||
ConfigVersion = 2;
|
||||
MinimizeAfterUnlock = true;
|
||||
AutoSaveAfterEveryChange = false;
|
||||
};
|
||||
GUI = {
|
||||
ApplicationTheme = "classic";
|
||||
MinimizeOnStartup = false;
|
||||
MinimizeOnClose = true;
|
||||
MinimizeToTray = true;
|
||||
ShowTrayIcon = true;
|
||||
# 0 is icons, 1 is text, 2 is text next to icons, 3 is text under icons, and 4 is follow style
|
||||
ToolButtonStyle = 0; # Would choose 4 but it's too big for a small window
|
||||
# monochrome-light, monochrome-dark or colorful
|
||||
TrayIconAppearance = "monochrome-light";
|
||||
};
|
||||
Security = {
|
||||
HideNotes = true;
|
||||
IconDownloadFallback = true;
|
||||
};
|
||||
SSHAgent.Enabled = true;
|
||||
};
|
||||
in
|
||||
|
||||
{
|
||||
home-manager = {
|
||||
extraSpecialArgs = { kpxcSettings = kpxcSettings; };
|
||||
users.toast = { config, pkgs, kpxcSettings, ... }: {
|
||||
# No module for KeePassXC config :(
|
||||
home = {
|
||||
packages = [ pkgs.keepassxc ];
|
||||
file = {
|
||||
".config/keepassxc/keepassxc.ini".text = kpxcSettings;
|
||||
# For some reason the autostart .desktop is not the same as the regular one
|
||||
".config/autostart/org.keepassxc.KeePassXC.desktop".text = ''
|
||||
[Desktop Entry]
|
||||
Name=KeePassXC
|
||||
GenericName=Password Manager
|
||||
Exec=keepassxc
|
||||
TryExec=keepassxc
|
||||
Icon=keepassxc
|
||||
StartupWMClass=keepassxc
|
||||
StartupNotify=true
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Version=1.0
|
||||
Categories=Utility;Security;Qt;
|
||||
MimeType=application/x-keepass2;
|
||||
X-GNOME-Autostart-enabled=true
|
||||
X-GNOME-Autostart-Delay=2
|
||||
X-KDE-autostart-after=panel
|
||||
X-LXQt-Need-Tray=true
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
kpxcSettings = lib.generators.toINI {} {
|
||||
General = {
|
||||
# Not sure what changing this does, I'll leave it alone
|
||||
ConfigVersion = 2;
|
||||
MinimizeAfterUnlock = true;
|
||||
AutoSaveAfterEveryChange = false;
|
||||
};
|
||||
GUI = {
|
||||
ApplicationTheme = "classic";
|
||||
MinimizeOnStartup = false;
|
||||
MinimizeOnClose = true;
|
||||
MinimizeToTray = true;
|
||||
ShowTrayIcon = true;
|
||||
# 0 is icons, 1 is text, 2 is text next to icons, 3 is text under icons, and 4 is follow style
|
||||
ToolButtonStyle = 0; # Would choose 4 but it's too big for a small window
|
||||
# monochrome-light, monochrome-dark or colorful
|
||||
TrayIconAppearance = "monochrome-light";
|
||||
};
|
||||
Security = {
|
||||
HideNotes = true;
|
||||
IconDownloadFallback = true;
|
||||
};
|
||||
SSHAgent.Enabled = true;
|
||||
};
|
||||
in {
|
||||
home-manager = {
|
||||
extraSpecialArgs = {kpxcSettings = kpxcSettings;};
|
||||
users.toast = {
|
||||
config,
|
||||
pkgs,
|
||||
kpxcSettings,
|
||||
...
|
||||
}: {
|
||||
# No module for KeePassXC config :(
|
||||
home = {
|
||||
packages = [pkgs.keepassxc];
|
||||
file = {
|
||||
".config/keepassxc/keepassxc.ini".text = kpxcSettings;
|
||||
# For some reason the autostart .desktop is not the same as the regular one
|
||||
".config/autostart/org.keepassxc.KeePassXC.desktop".text = ''
|
||||
[Desktop Entry]
|
||||
Name=KeePassXC
|
||||
GenericName=Password Manager
|
||||
Exec=keepassxc
|
||||
TryExec=keepassxc
|
||||
Icon=keepassxc
|
||||
StartupWMClass=keepassxc
|
||||
StartupNotify=true
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Version=1.0
|
||||
Categories=Utility;Security;Qt;
|
||||
MimeType=application/x-keepass2;
|
||||
X-GNOME-Autostart-enabled=true
|
||||
X-GNOME-Autostart-Delay=2
|
||||
X-KDE-autostart-after=panel
|
||||
X-LXQt-Need-Tray=true
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,21 +1,27 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home-manager = {
|
||||
users.toast = { config, pkgs, ... }:
|
||||
{
|
||||
programs.micro = {
|
||||
enable = true;
|
||||
settings = {
|
||||
# Use xclip/wl-clipboard for copying and pasting
|
||||
clipboard = lib.mkForce "external";
|
||||
};
|
||||
};
|
||||
/*
|
||||
On a kde wayland session micro uses xsel or xclip instead of wl-clipboard
|
||||
which doesn't work, so I only install wl-clipboard here to make micro use it
|
||||
*/
|
||||
home.packages = with pkgs; [ wl-clipboard ];
|
||||
};
|
||||
};
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
home-manager = {
|
||||
users.toast = {
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.micro = {
|
||||
enable = true;
|
||||
settings = {
|
||||
# Use xclip/wl-clipboard for copying and pasting
|
||||
clipboard = lib.mkForce "external";
|
||||
};
|
||||
};
|
||||
/*
|
||||
On a kde wayland session micro uses xsel or xclip instead of wl-clipboard
|
||||
which doesn't work, so I only install wl-clipboard here to make micro use it
|
||||
*/
|
||||
home.packages = with pkgs; [wl-clipboard];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
{...}: {
|
||||
home-manager.users.toast = {
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -1,40 +1,45 @@
|
|||
{ config, pkgs, flakeSelf, ... }:
|
||||
let inputs = flakeSelf.inputs; in
|
||||
{
|
||||
nixpkgs.overlays = [ inputs.catppuccin-vsc.overlays.default ];
|
||||
home-manager.users.toast = {
|
||||
home.packages = with pkgs; [
|
||||
nixpkgs-fmt
|
||||
];
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
mutableExtensionsDir = false;
|
||||
extensions = with inputs.vscode-extensions.extensions.x86_64-linux.open-vsx; [
|
||||
jnoortheen.nix-ide
|
||||
(pkgs.catppuccin-vsc.override {
|
||||
workbenchMode = "flat";
|
||||
extraBordersEnabled = true;
|
||||
})
|
||||
catppuccin.catppuccin-vsc-icons
|
||||
waderyan.gitblame
|
||||
];
|
||||
userSettings = {
|
||||
# VSCode doesn't like nested settings
|
||||
# https://stackoverflow.com/questions/74134436/is-it-possible-to-express-settings-in-vs-codes-settings-json-where-each-dot-sep
|
||||
# TODO: write a function that unnests settings
|
||||
"workbench.colorTheme" = "Catppuccin Mocha";
|
||||
"workbench.iconTheme" = "catppuccin-mocha";
|
||||
"editor.fontFamily" = "JetBrainsMono Nerd Font";
|
||||
"editor.semanticHighlighting.enabled" = true;
|
||||
"nix.enableLanguageServer" = true;
|
||||
"nix.serverPath" = "${pkgs.nil}/bin/nil";
|
||||
"nix.serverSettings" = {
|
||||
"nil"."formatting"."command" = [ "nixpkgs-fmt" ];
|
||||
};
|
||||
"terminal.integrated.minimumContrastRatio" = 1;
|
||||
"window.titleBarStyle" = "custom";
|
||||
};
|
||||
};
|
||||
};
|
||||
config,
|
||||
pkgs,
|
||||
flakeSelf,
|
||||
...
|
||||
}: let
|
||||
inputs = flakeSelf.inputs;
|
||||
in {
|
||||
nixpkgs.overlays = [inputs.catppuccin-vsc.overlays.default];
|
||||
home-manager.users.toast = {
|
||||
home.packages = with pkgs; [
|
||||
nixpkgs-fmt
|
||||
];
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
mutableExtensionsDir = false;
|
||||
extensions = with inputs.vscode-extensions.extensions.x86_64-linux.open-vsx; [
|
||||
jnoortheen.nix-ide
|
||||
(pkgs.catppuccin-vsc.override {
|
||||
workbenchMode = "flat";
|
||||
extraBordersEnabled = true;
|
||||
})
|
||||
catppuccin.catppuccin-vsc-icons
|
||||
waderyan.gitblame
|
||||
];
|
||||
userSettings = {
|
||||
# VSCode doesn't like nested settings
|
||||
# https://stackoverflow.com/questions/74134436/is-it-possible-to-express-settings-in-vs-codes-settings-json-where-each-dot-sep
|
||||
# TODO: write a function that unnests settings
|
||||
"workbench.colorTheme" = "Catppuccin Mocha";
|
||||
"workbench.iconTheme" = "catppuccin-mocha";
|
||||
"editor.fontFamily" = "JetBrainsMono Nerd Font";
|
||||
"editor.semanticHighlighting.enabled" = true;
|
||||
"nix.enableLanguageServer" = true;
|
||||
"nix.serverPath" = "${pkgs.nil}/bin/nil";
|
||||
"nix.serverSettings" = {
|
||||
"nil"."formatting"."command" = ["nixpkgs-fmt"];
|
||||
};
|
||||
"terminal.integrated.minimumContrastRatio" = 1;
|
||||
"window.titleBarStyle" = "custom";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue