home/breakerbox: make vscode breaker
This commit is contained in:
@@ -53,6 +53,7 @@ in
|
||||
./programs/thunderbird.nix
|
||||
./programs/tmux
|
||||
./programs/uv.nix
|
||||
./programs/vscode
|
||||
./programs/yazi.nix
|
||||
./programs/yt-dlp.nix
|
||||
./programs/zed
|
||||
@@ -72,7 +73,6 @@ in
|
||||
] ++ (optionals graphics [
|
||||
./config/gtk.nix
|
||||
|
||||
./programs/vscode
|
||||
./programs/zathura.nix
|
||||
|
||||
./services/fcitx5.nix
|
||||
@@ -146,7 +146,8 @@ in
|
||||
programs.rofi.enable = graphics;
|
||||
programs.taskwarrior.enable = graphics;
|
||||
programs.thunderbird.enable = graphics;
|
||||
programs.zed.enable = graphics;
|
||||
programs.vscode.enable = graphics;
|
||||
programs.zed-editor.enable = graphics;
|
||||
|
||||
services.copyq.enable = graphics;
|
||||
services.dunst.enable = graphics;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
let
|
||||
cfg = config.programs.vscode;
|
||||
in
|
||||
{
|
||||
lib.mkIf cfg.enable {
|
||||
# TODO: add `dirname` to $PATH upstream
|
||||
systemd.user.services.update-vscode-extensions = {
|
||||
Unit = {
|
||||
|
||||
@@ -1,32 +1,28 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
let
|
||||
cfg = config.programs.vscode;
|
||||
|
||||
mapPrefixToSet = prefix: set:
|
||||
with lib; attrsets.mapAttrs' (k: v: attrsets.nameValuePair ("${prefix}.${k}") v) set;
|
||||
|
||||
configDir = {
|
||||
"vscode" = "Code";
|
||||
"vscode-insiders" = "Code - Insiders";
|
||||
"vscodium" = "VSCodium";
|
||||
}.${cfg.package.pname};
|
||||
userDir = "${config.xdg.configHome}/${configDir}/User";
|
||||
configFilePath = "${userDir}/settings.json";
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./auto-update-extensions.nix
|
||||
# ./extensions
|
||||
];
|
||||
|
||||
home.file.${configFilePath} = {
|
||||
target = "${configFilePath}.ro";
|
||||
onChange = ''install -m660 $(realpath "${configFilePath}.ro") "${configFilePath}"'';
|
||||
home.file = let
|
||||
configDir = {
|
||||
"vscode" = "Code";
|
||||
"vscode-insiders" = "Code - Insiders";
|
||||
"vscodium" = "VSCodium";
|
||||
}.${cfg.package.pname};
|
||||
userDir = "${config.xdg.configHome}/${configDir}/User";
|
||||
configFilePath = "${userDir}/settings.json";
|
||||
in lib.mkIf cfg.enable {
|
||||
${configFilePath} = {
|
||||
target = "${configFilePath}.ro";
|
||||
onChange = ''install -m660 $(realpath "${configFilePath}.ro") "${configFilePath}"'';
|
||||
};
|
||||
};
|
||||
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
|
||||
package = pkgs.vscode.overrideAttrs (prev: {
|
||||
# NOTE: this messes up zsh's tab completion in the terminal whenever code is started
|
||||
# from within a shell
|
||||
@@ -39,6 +35,9 @@ in
|
||||
|
||||
profiles.default = {
|
||||
userSettings = let
|
||||
mapPrefixToSet = prefix: set:
|
||||
lib.mapAttrs' (k: v: lib.nameValuePair "${prefix}.${k}" v) set;
|
||||
|
||||
editor = mapPrefixToSet "editor" {
|
||||
fontFamily = "Fira Code";
|
||||
fontLigatures = true;
|
||||
|
||||
Reference in New Issue
Block a user