2021-08-25 00:27:20 -04:00
|
|
|
{ config, pkgs, lib, ... }:
|
|
|
|
with lib;
|
|
|
|
{
|
|
|
|
config = mkIf (config.sconfig.profile == "desktop") {
|
|
|
|
services.pcscd.enable = true;
|
|
|
|
|
2021-11-02 14:47:46 -04:00
|
|
|
sconfig = {
|
2022-02-03 22:19:24 -05:00
|
|
|
alacritty.enable = true;
|
2021-11-02 14:47:46 -04:00
|
|
|
security-tools = true;
|
2022-10-09 03:47:33 -04:00
|
|
|
pipewire = true;
|
2021-11-02 14:47:46 -04:00
|
|
|
};
|
2021-09-07 20:32:11 -04:00
|
|
|
|
2022-08-08 13:40:03 -04:00
|
|
|
services.udev.extraHwdb = ''
|
|
|
|
mouse:usb:*
|
|
|
|
MOUSE_DPI=600@1000
|
|
|
|
'';
|
|
|
|
|
2021-12-28 20:56:11 -05:00
|
|
|
fonts.fonts = [ pkgs.bck-nerdfont ];
|
2021-10-11 01:05:54 -04:00
|
|
|
|
2022-02-05 13:11:00 -05:00
|
|
|
environment.variables.MOZ_ENABLE_WAYLAND = "1";
|
2022-01-14 00:07:21 -05:00
|
|
|
environment.variables.MOZ_USE_XINPUT2 = "1";
|
|
|
|
|
2021-08-25 00:27:20 -04:00
|
|
|
environment.systemPackages = with pkgs; [
|
2021-11-02 14:46:18 -04:00
|
|
|
chromium
|
2021-08-25 00:27:20 -04:00
|
|
|
discord
|
|
|
|
element-desktop
|
|
|
|
ffmpeg
|
|
|
|
gimp
|
|
|
|
glxinfo
|
|
|
|
gnome3.dconf-editor
|
|
|
|
opensc
|
|
|
|
pavucontrol
|
2021-09-28 14:47:24 -04:00
|
|
|
qemu_full
|
2021-08-25 00:27:20 -04:00
|
|
|
tdesktop
|
|
|
|
youtube-dl
|
|
|
|
|
|
|
|
(mpv-with-scripts.override { scripts = [ mpvScripts.mpris ]; })
|
|
|
|
|
|
|
|
(vscode-with-extensions.override {
|
|
|
|
vscode = vscodium;
|
|
|
|
vscodeExtensions = with pkgs.vscode-extensions; [
|
2021-12-08 14:08:37 -05:00
|
|
|
jnoortheen.nix-ide
|
2021-11-09 11:02:28 -05:00
|
|
|
ms-azuretools.vscode-docker
|
2021-10-17 16:16:36 -04:00
|
|
|
ms-python.python
|
2021-12-03 12:06:28 -05:00
|
|
|
shardulm94.trailing-spaces
|
2021-08-25 00:27:20 -04:00
|
|
|
];
|
|
|
|
})
|
|
|
|
|
|
|
|
(wrapFirefox firefox-unwrapped {
|
|
|
|
extraPolicies = {
|
2021-11-08 21:40:42 -05:00
|
|
|
NewTabPage = false;
|
2021-08-25 00:27:20 -04:00
|
|
|
CaptivePortal = false;
|
|
|
|
DisableFirefoxStudies = true;
|
|
|
|
OfferToSaveLogins = false;
|
|
|
|
DisableFormHistory = true;
|
|
|
|
SearchSuggestEnabled = false;
|
2022-06-19 00:55:07 -04:00
|
|
|
|
|
|
|
Preferences = builtins.mapAttrs
|
|
|
|
(n: v: { Value = v; Status = "locked"; })
|
|
|
|
{
|
|
|
|
"browser.contentblocking.category" = "strict";
|
|
|
|
"browser.zoom.siteSpecific" = false;
|
2022-06-19 23:20:00 -04:00
|
|
|
"extensions.formautofill.addresses.enabled" = false;
|
|
|
|
"extensions.formautofill.creditCards.enabled" = false;
|
2022-06-19 00:55:07 -04:00
|
|
|
"network.IDN_show_punycode" = true;
|
|
|
|
"ui.key.menuAccessKeyFocuses" = false;
|
|
|
|
};
|
|
|
|
|
2021-08-25 00:27:20 -04:00
|
|
|
};
|
|
|
|
})
|
|
|
|
|
2022-08-29 00:08:49 -04:00
|
|
|
(pkgs.writeShellScriptBin "my-dash-to-panel" ''
|
|
|
|
dconf write /org/gnome/shell/extensions/dash-to-panel/group-apps false
|
|
|
|
dconf write /org/gnome/shell/extensions/dash-to-panel/isolate-workspaces true
|
|
|
|
dconf write /org/gnome/shell/extensions/dash-to-panel/panel-positions "'{\"0\":\"TOP\"}'"
|
|
|
|
dconf write /org/gnome/shell/extensions/dash-to-panel/panel-sizes "'{\"0\":40}'"
|
|
|
|
dconf write /org/gnome/shell/extensions/dash-to-panel/show-window-previews false
|
|
|
|
'')
|
|
|
|
|
2021-08-25 00:27:20 -04:00
|
|
|
];
|
|
|
|
|
2021-10-27 11:36:44 -04:00
|
|
|
sconfig.user-settings = ''
|
2022-07-18 15:02:59 -04:00
|
|
|
mkdir -p ~/.config/VSCodium/User
|
2021-10-27 11:36:44 -04:00
|
|
|
ln -sf /etc/vscode-settings.json ~/.config/VSCodium/User/settings.json
|
|
|
|
ln -sf /etc/vscode-keybindings.json ~/.config/VSCodium/User/keybindings.json
|
|
|
|
'';
|
|
|
|
|
2021-10-27 11:17:34 -04:00
|
|
|
environment.etc."vscode-settings.json".text = builtins.toJSON {
|
2022-09-15 14:48:20 -04:00
|
|
|
"diffEditor.renderSideBySide" = false;
|
2022-07-20 23:59:17 -04:00
|
|
|
"editor.cursorSurroundingLines" = 9;
|
2021-10-27 11:17:34 -04:00
|
|
|
"editor.renderFinalNewline" = false;
|
2022-07-18 21:36:02 -04:00
|
|
|
"editor.scrollBeyondLastLine" = false;
|
2021-10-27 11:17:34 -04:00
|
|
|
"files.insertFinalNewline" = true;
|
|
|
|
"files.trimFinalNewlines" = true;
|
2021-10-28 01:28:55 -04:00
|
|
|
"files.watcherExclude"."**/result/**" = true;
|
2022-06-29 13:28:45 -04:00
|
|
|
"git.autofetch" = true;
|
2021-10-27 11:17:34 -04:00
|
|
|
"git.confirmSync" = false;
|
2022-09-01 11:56:40 -04:00
|
|
|
"python.formatting.provider" = "black";
|
2021-10-27 11:17:34 -04:00
|
|
|
"security.workspace.trust.banner" = "never";
|
|
|
|
"security.workspace.trust.startupPrompt" = "never";
|
|
|
|
"security.workspace.trust.untrustedFiles" = "newWindow";
|
|
|
|
"terminal.external.linuxExec" = "x-terminal-emulator";
|
2021-12-27 13:51:19 -05:00
|
|
|
"terminal.integrated.fontFamily" = "DejaVuSansMono Nerd Font";
|
2021-10-27 11:17:34 -04:00
|
|
|
"terminal.integrated.fontSize" = 16;
|
2022-07-19 13:33:59 -04:00
|
|
|
"terminal.integrated.minimumContrastRatio" = 1;
|
2022-09-01 12:07:31 -04:00
|
|
|
"terminal.integrated.shellIntegration.enabled" = false;
|
2021-10-27 11:17:34 -04:00
|
|
|
"terminal.integrated.showExitAlert" = false;
|
2021-12-03 12:06:28 -05:00
|
|
|
"trailing-spaces.highlightCurrentLine" = false;
|
2021-10-27 11:17:34 -04:00
|
|
|
"update.showReleaseNotes" = false;
|
|
|
|
"window.menuBarVisibility" = "hidden";
|
|
|
|
"workbench.startupEditor" = "none";
|
2022-09-06 13:40:09 -04:00
|
|
|
|
|
|
|
# NixOS specific vscode settings, do not copy to other operating systems:
|
|
|
|
"extensions.autoCheckUpdates" = false;
|
|
|
|
"extensions.autoUpdate" = false;
|
|
|
|
"update.mode" = "none";
|
2021-10-27 11:17:34 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
environment.etc."vscode-keybindings.json".text = builtins.toJSON [
|
|
|
|
{ key = "ctrl+w"; command = "-workbench.action.terminal.killEditor"; }
|
|
|
|
{ key = "ctrl+e"; command = "-workbench.action.quickOpen"; }
|
|
|
|
{ key = "ctrl+e"; command = "workbench.action.quickOpen"; when = "!terminalFocus"; }
|
|
|
|
];
|
2021-08-25 00:27:20 -04:00
|
|
|
|
2022-07-17 09:29:57 -04:00
|
|
|
virtualisation.podman.enable = true;
|
2021-08-25 00:27:20 -04:00
|
|
|
|
2022-01-02 16:37:05 -05:00
|
|
|
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
2022-06-10 10:26:24 -04:00
|
|
|
boot.loader.timeout = 1;
|
2021-08-25 00:27:20 -04:00
|
|
|
};
|
|
|
|
}
|