Reconcile nix setup with PC config
This commit is contained in:
parent
0586ac23dc
commit
d09bfa5c42
24
flake.lock
generated
24
flake.lock
generated
@ -28,11 +28,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758375677,
|
"lastModified": 1761395627,
|
||||||
"narHash": "sha256-BLtD+6qWz7fQjPk2wpwyXQLGI0E30Ikgf2ppn2nVadI=",
|
"narHash": "sha256-9wQpgBRW2PzYw1wx+MgCt1IbPAYz93csApLMgSZOJCk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "edc7468e12be92e926847cb02418e649b02b59dd",
|
"rev": "7296022150cd775917e4c831c393026eae7c2427",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -49,11 +49,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758102940,
|
"lastModified": 1761339987,
|
||||||
"narHash": "sha256-wwqf3+A8EiqwWpcAaPN20QXJLlpGPpwtLTrzgnngI2o=",
|
"narHash": "sha256-IUaawVwItZKi64IA6kF6wQCLCzpXbk2R46dHn8sHkig=",
|
||||||
"owner": "nix-darwin",
|
"owner": "nix-darwin",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "ebd0bfc11fc2b5cff37401e9b3703881ad5fabbd",
|
"rev": "7cd9aac79ee2924a85c211d21fafd394b06a38de",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -65,11 +65,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758262103,
|
"lastModified": 1761349956,
|
||||||
"narHash": "sha256-aBGl3XEOsjWw6W3AHiKibN7FeoG73dutQQEqnd/etR8=",
|
"narHash": "sha256-tH3wHnOJms+U4k/rK2Nn1RfBrhffX92jLP/2VndSn0w=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "12bd230118a1901a4a5d393f9f56b6ad7e571d01",
|
"rev": "02f2cb8e0feb4596d20cc52fda73ccee960e3538",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -87,11 +87,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758381358,
|
"lastModified": 1761424731,
|
||||||
"narHash": "sha256-3edVTFHJavTAZH4D0MMraM+4JxrxXWeizQvlCWXcKnE=",
|
"narHash": "sha256-R1dkdI2bLlhAFOLAT+W40lU1ab7+DBGaOORr/UrFZzY=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "62688dab3927fc080aad78d6814250b65cac1261",
|
"rev": "ceae515c833b8c6ac57307ccdefb08d782ea2432",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@ -4,11 +4,11 @@
|
|||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.gitFull;
|
package = pkgs.gitFull;
|
||||||
aliases = {};
|
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
userEmail = "lazarescu.andrei19@gmail.com";
|
settings = {
|
||||||
userName = "Andrei Lazarescu";
|
alias = {};
|
||||||
extraConfig = {
|
user.email = "lazarescu.andrei19@gmail.com";
|
||||||
|
user.name = "Andrei Lazarescu";
|
||||||
user.signingkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFkft5uSiWODIKIBGFPSCRktDEaxYPbudDUYlYyj53w/";
|
user.signingkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFkft5uSiWODIKIBGFPSCRktDEaxYPbudDUYlYyj53w/";
|
||||||
gpg.format = "ssh";
|
gpg.format = "ssh";
|
||||||
gpg.ssh.program = "/Applications/1Password.app/Contents/MacOS/op-ssh-sign";
|
gpg.ssh.program = "/Applications/1Password.app/Contents/MacOS/op-ssh-sign";
|
||||||
|
|||||||
@ -1,6 +1,8 @@
|
|||||||
{
|
{
|
||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
enableDefaultConfig = false;
|
||||||
|
matchBlocks."*" = {};
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
Host *
|
Host *
|
||||||
IdentityAgent "~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
|
IdentityAgent "~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
|
||||||
|
|||||||
@ -1,23 +1,59 @@
|
|||||||
{ pkgs, ... }:
|
{ lib, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
vscodeExtensions = [
|
||||||
|
"github.copilot"
|
||||||
|
"github.copilot-chat"
|
||||||
|
"ms-azuretools.vscode-containers"
|
||||||
|
"ms-dotnettools.csdevkit"
|
||||||
|
"ms-dotnettools.csharp"
|
||||||
|
"ms-dotnettools.vscode-dotnet-runtime"
|
||||||
|
"ms-vscode-remote.remote-containers"
|
||||||
|
"ms-vscode-remote.remote-ssh"
|
||||||
|
"ms-vscode-remote.remote-ssh-edit"
|
||||||
|
"ms-vscode-remote.remote-wsl"
|
||||||
|
"ms-vscode-remote.vscode-remote-extensionpack"
|
||||||
|
"ms-vscode.remote-explorer"
|
||||||
|
"ms-vscode.remote-server"
|
||||||
|
"ms-vsliveshare.vsliveshare"
|
||||||
|
];
|
||||||
|
|
||||||
|
cursorExtensions = [
|
||||||
|
"anysphere.cursorpyright"
|
||||||
|
"anysphere.remote-ssh"
|
||||||
|
"astro-build.astro-vscode"
|
||||||
|
"castwide.solargraph"
|
||||||
|
"expo.vscode-expo-tools"
|
||||||
|
"github.vscode-github-actions"
|
||||||
|
"jnoortheen.nix-ide"
|
||||||
|
"ms-dotnettools.csdevkit"
|
||||||
|
"ms-dotnettools.csharp"
|
||||||
|
"ms-dotnettools.vscode-dotnet-runtime"
|
||||||
|
"ms-python.anaconda-extension-pack"
|
||||||
|
"ms-python.debugpy"
|
||||||
|
"ms-python.python"
|
||||||
|
"msjsdiag.vscode-react-native"
|
||||||
|
"redhat.vscode-yaml"
|
||||||
|
"rust-lang.rust-analyzer"
|
||||||
|
"shopify.ruby-lsp"
|
||||||
|
];
|
||||||
|
|
||||||
|
installExtensions = editor: extensions: ''
|
||||||
|
if command -v ${editor} >/dev/null 2>&1; then
|
||||||
|
for ext in ${lib.concatStringsSep " " (map lib.escapeShellArg extensions)}; do
|
||||||
|
$DRY_RUN_CMD ${editor} --install-extension "$ext" --force >/dev/null 2>&1 || true
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
in
|
||||||
{
|
{
|
||||||
programs.vscode = {
|
programs.vscode = {
|
||||||
enable = true;
|
enable = true;
|
||||||
mutableExtensionsDir = false;
|
# Allow manual extension installs from within the editor.
|
||||||
|
mutableExtensionsDir = true;
|
||||||
profiles.default = {
|
profiles.default = {
|
||||||
enableExtensionUpdateCheck = true;
|
enableExtensionUpdateCheck = true;
|
||||||
enableUpdateCheck = true;
|
enableUpdateCheck = true;
|
||||||
extensions = [
|
|
||||||
pkgs.vscode-extensions.ms-vscode-remote.remote-ssh
|
|
||||||
pkgs.vscode-extensions.ms-vscode-remote.remote-ssh-edit
|
|
||||||
pkgs.vscode-extensions.jnoortheen.nix-ide
|
|
||||||
pkgs.vscode-extensions.ms-dotnettools.csdevkit
|
|
||||||
pkgs.vscode-extensions.ms-dotnettools.csharp
|
|
||||||
pkgs.vscode-extensions.ms-dotnettools.vscode-dotnet-runtime
|
|
||||||
pkgs.vscode-extensions.shopify.ruby-lsp
|
|
||||||
pkgs.vscode-extensions.castwide.solargraph
|
|
||||||
pkgs.vscode-extensions.astro-build.astro-vscode
|
|
||||||
];
|
|
||||||
userSettings = {
|
userSettings = {
|
||||||
"editor.fontSize" = 16;
|
"editor.fontSize" = 16;
|
||||||
"editor.fontFamily" = "'FiraCode Nerd Font Mono'";
|
"editor.fontFamily" = "'FiraCode Nerd Font Mono'";
|
||||||
@ -28,4 +64,10 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
home.activation.installEditorExtensions = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||||
|
# Keep your current VS Code and Cursor extensions as baseline.
|
||||||
|
${installExtensions "code" vscodeExtensions}
|
||||||
|
${installExtensions "cursor" cursorExtensions}
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,16 +1,36 @@
|
|||||||
{ pkgs, ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
homebrew = {
|
homebrew = {
|
||||||
enable = true;
|
enable = true;
|
||||||
brews = [ "asdf" "libyaml" "libpq" "k9s" "sst/tap/opencode" "awscli" "helm" "sops" "yq" "opencode"
|
brews = [
|
||||||
{
|
"asdf"
|
||||||
name = "postgresql@17";
|
"awscli"
|
||||||
restart_service = "changed";
|
"azure-cli"
|
||||||
}
|
"cloc"
|
||||||
|
"hashicorp/tap/terraform"
|
||||||
|
"helm"
|
||||||
|
"k9s"
|
||||||
|
"libpq"
|
||||||
|
"sops"
|
||||||
|
"sst/tap/opencode"
|
||||||
|
"yq"
|
||||||
|
];
|
||||||
|
taps = [ "hashicorp/tap" "sst/tap" ];
|
||||||
|
casks = [
|
||||||
|
"cursor"
|
||||||
|
"dotnet-sdk"
|
||||||
|
"firefox"
|
||||||
|
"flutter"
|
||||||
|
"google-chrome"
|
||||||
|
"obsidian"
|
||||||
|
"qbittorrent"
|
||||||
|
"raycast"
|
||||||
|
"slack"
|
||||||
|
"structuredlogviewer"
|
||||||
|
"visual-studio-code"
|
||||||
|
"vlc"
|
||||||
];
|
];
|
||||||
taps = [ "sst/tap" ];
|
|
||||||
casks = [ "raycast" "firefox" "slack" "google-chrome" "cursor" "qbittorrent" "vlc" "obsidian" ];
|
|
||||||
onActivation = {
|
onActivation = {
|
||||||
cleanup = "zap";
|
cleanup = "zap";
|
||||||
};
|
};
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user