diff --git a/playbooks/packages.yaml b/playbooks/packages.yaml index 58e7263..f13c01b 100644 --- a/playbooks/packages.yaml +++ b/playbooks/packages.yaml @@ -23,7 +23,6 @@ - libwebp-devel - mkvtoolnix - mpv - - musescore - nextcloud-client - nextcloud-client-dolphin - obs-studio @@ -90,7 +89,6 @@ - io.openrct2.OpenRCT2 - org.signal.Signal - org.zulip.Zulip - - net.ankiweb.Anki state: latest method: user remote: flathub diff --git a/programs/git.nix b/programs/git.nix index 173e5f1..244e916 100644 --- a/programs/git.nix +++ b/programs/git.nix @@ -42,6 +42,11 @@ }; merge = { conflictstyle = "zdiff3"; }; pull = { rebase = true; }; + "url \"ssh://git@github.com/\"".insteadOf = "https://github.com/"; + "url \"ssh://git@gitlab.com/\"".insteadOf = "https://gitlab.com/"; + "url \"ssh://git@codeberg.com/\"".insteadOf = "https://codeberg.com/"; + "url \"ssh://git@code.millironx.com/\"".insteadOf = + "https://code.millironx.com/"; }; }; } diff --git a/programs/shells.nix b/programs/shells.nix index 6745cf4..edb0f18 100644 --- a/programs/shells.nix +++ b/programs/shells.nix @@ -10,11 +10,53 @@ let } ''; + sourceCodeDirectory = + if pkgs.stdenv.hostPlatform.isDarwin then "~/Developer" else "~/src"; + clone_bash_function = '' + unalias gc + function gc() { + REPO_ID="$(echo "''${1}" | \ + awk '{ + sub(/^git@/, ""); + sub(/^https:\/\//, ""); + sub (/:/, "/"); + sub(/\.git$/, ""); + print + }')" + git clone "https://''${REPO_ID}.git" ${sourceCodeDirectory}/''${REPO_ID} + cd ${sourceCodeDirectory}/''${REPO_ID} + } + + ''; + repo_init_function = '' + function rinit() { + REPO_ID="$(echo "''${1}" | \ + awk '{ + sub(/^git@/, ""); + sub(/^https:\/\//, ""); + sub (/:/, "/"); + sub(/\.git$/, ""); + print + }')" + + mkdir -p ${sourceCodeDirectory}/''${REPO_ID} + cd ${sourceCodeDirectory}/''${REPO_ID} + + git init + + git remote add origin git@''${REPO_ID/\//:}.git + } + + ''; + + shell_functions = shell: + (conda_init shell) + nd_bash_function + clone_bash_function + + repo_init_function; in { programs = { bash = { enable = true; - initExtra = conda_init "bash" + nd_bash_function + '' + initExtra = shell_functions "bash" + '' export PS1="[\[\e[32m\]\u\[\e[m\]@\[\e[33m\]\h\[\e[m\] \[\e[34m\]\W\[\e[m\]] \\$ " ''; }; @@ -37,7 +79,7 @@ in { "zsh-users/zsh-completions" ]; }; - initContent = conda_init "zsh" + nd_bash_function; + initContent = shell_functions "zsh"; }; }; } diff --git a/programs/zed.nix b/programs/zed.nix index b3f7fd6..dba9b38 100644 --- a/programs/zed.nix +++ b/programs/zed.nix @@ -23,13 +23,25 @@ use_modifier_to_send = true; default_model = { provider = "zed.dev"; - model = "claude-3-7-sonnet"; + model = "claude-sonnet-4-5"; }; default_profile = "minimal"; }; buffer_font_family = "FiraCode Nerd Font"; buffer_font_size = 11; features = { edit_prediction_provider = "zed"; }; + git_hosting_providers = [ + { + provider = "forgejo"; + base_url = "https://code.millironx.com"; + name = "Milliron X Code"; + } + { + provider = "forgejo"; + base_url = "https://codeberg.org"; + name = "Codeberg"; + } + ]; languages = { Julia = { formatter = { @@ -52,12 +64,12 @@ }; }; }; + Nix = { + formatter.external.command = "${pkgs.nixfmt-classic}/bin/nixfmt"; + }; }; lsp = { - nil = { - initialization_options.formatting.command = [ "nixfmt" ]; - settings.nix.flake.autoArchive = true; - }; + nil = { settings.nix.flake.autoArchive = true; }; texlab = { settings = { build = { @@ -75,6 +87,7 @@ }; }; tinymist = { + initialization_options = { preview.background.enabled = true; }; settings = { exportPdf = "onSave"; outputPath = "$root/$name"; @@ -97,12 +110,28 @@ ui_font_size = 16; wrap_guides = [ 80 92 120 ]; }; - userTasks = [{ - label = "latexmk (project)"; - command = "latexmk"; - args = [ "-synctex=1" "-pdf" "-recorder" ]; - cwd = "$ZED_DIRNAME"; - tags = [ "latex-build" ]; - }]; + userTasks = [ + { + label = "latexmk (project)"; + command = "latexmk"; + args = [ "-synctex=1" "-pdf" "-recorder" ]; + cwd = "$ZED_DIRNAME"; + tags = [ "latex-build" ]; + } + { + label = "Open Typst preview"; + command = "${ + if pkgs.stdenv.hostPlatform.isDarwin then "open" else "xdg-open" + } http://127.0.0.1:23635/"; + use_new_terminal = true; + allow_concurrent_runs = false; + reveal = "never"; + reveal_target = "dock"; + hide = "always"; + shell = "system"; + show_summary = true; + show_command = true; + } + ]; }; } diff --git a/systems/darwin/corianne.nix b/systems/darwin/corianne.nix index f1c1eb2..c83a9a1 100644 --- a/systems/darwin/corianne.nix +++ b/systems/darwin/corianne.nix @@ -207,7 +207,6 @@ in { ]; casks = [ "alt-tab" - "anki" "db-browser-for-sqlite" "dolphin" "firefox" @@ -216,7 +215,6 @@ in { "iterm2" "logseq" "macfuse" - "musescore" "nextcloud" "openrct2" "qownnotes" @@ -234,6 +232,7 @@ in { "ungoogled-chromium" "veracrypt" "vlc" + "vienna" "vorta" "zed" "zotero"