mirror of
https://mau.dev/andreijiroh-dev/dotfiles.git
synced 2025-02-22 13:12:06 +00:00
Update nix files and stuff
This commit is contained in:
parent
18b7c4e226
commit
45e09b810a
7 changed files with 813 additions and 12 deletions
17
.config/home-manager/home.nix
Normal file
17
.config/home-manager/home.nix
Normal file
|
@ -0,0 +1,17 @@
|
|||
{ config, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./meta.nix
|
||||
];
|
||||
|
||||
# Home Manager needs a bit of information about you and the paths it should
|
||||
# manage. Also don't ask how we got here on the roleplaying part on the main
|
||||
# nixpkgs branch of the dotfiles.
|
||||
# TODO: Update the username and homeDirectory when switching between host-specific
|
||||
# branches.
|
||||
home = {
|
||||
username = "gildedguy";
|
||||
homeDirectory = "/home/gildedguy";
|
||||
};
|
||||
}
|
193
.config/home-manager/meta.nix
Normal file
193
.config/home-manager/meta.nix
Normal file
|
@ -0,0 +1,193 @@
|
|||
# This is the meta configuration for my dotfiles with home-manager, except
|
||||
# some home.{username,userDirectory} configs to ensure portability between
|
||||
# hosts
|
||||
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
# https://fnordig.de/til/nix/home-manager-allow-unfree.html
|
||||
nixpkgs = {
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
# https://github.com/nix-community/home-manager/issues/2942
|
||||
allowUnfreePredicate = (_: true);
|
||||
};
|
||||
};
|
||||
|
||||
# This value determines the Home Manager release that your configuration is
|
||||
# compatible with. This helps avoid breakage when a new Home Manager release
|
||||
# introduces backwards incompatible changes.
|
||||
#
|
||||
# You should not change this value, even if you update Home Manager. If you do
|
||||
# want to update the value, then make sure to first check the Home Manager
|
||||
# release notes.
|
||||
home.stateVersion = "24.11"; # Please read the comment before changing.
|
||||
|
||||
# The home.packages option allows you to install Nix packages into your
|
||||
# environment.
|
||||
home.packages = with pkgs; [
|
||||
# # Adds the 'hello' command to your environment. It prints a friendly
|
||||
# # "Hello, world!" when run.
|
||||
# pkgs.hello
|
||||
|
||||
# # It is sometimes useful to fine-tune packages, for example, by applying
|
||||
# # overrides. You can do that directly here, just don't forget the
|
||||
# # parentheses. Maybe you want to install Nerd Fonts with a limited number of
|
||||
# # fonts?
|
||||
# (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
|
||||
|
||||
# # You can also create simple shell scripts directly inside your
|
||||
# # configuration. For example, this adds a command 'my-hello' to your
|
||||
# # environment:
|
||||
# (pkgs.writeShellScriptBin "my-hello" ''
|
||||
# echo "Hello, ${config.home.username}!"
|
||||
# '')
|
||||
|
||||
## devtools ##
|
||||
# https://httpie.io
|
||||
httpie
|
||||
# https://devenv.sh
|
||||
devenv
|
||||
# https://cli.github.com
|
||||
gh
|
||||
# bet we'll going to have a field day since Copilot is now available for free
|
||||
# (this is seperate from the gh copilot extension for those asking)
|
||||
# context: https://github.blog/news-insights/product-news/github-copilot-in-vscode-free/
|
||||
github-copilot-cli
|
||||
# markdownlint
|
||||
markdownlint-cli
|
||||
# https://doppler.com
|
||||
doppler
|
||||
direnv
|
||||
shellcheck
|
||||
hadolint
|
||||
|
||||
## programming languages
|
||||
deno
|
||||
nodejs_22
|
||||
python313
|
||||
pipx
|
||||
pipenv
|
||||
|
||||
## language servers ##
|
||||
# nix language server - https://github.com/oxalica/nil
|
||||
nil
|
||||
# https://github.com/alesbrelih/gitlab-ci-ls
|
||||
gitlab-ci-ls
|
||||
];
|
||||
|
||||
home.sessionPath = [
|
||||
"${config.home.homeDirectory}/bin"
|
||||
];
|
||||
|
||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
||||
# plain files is through 'home.file'.
|
||||
home.file = {
|
||||
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
||||
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
||||
# # symlink to the Nix store copy.
|
||||
# ".screenrc".source = dotfiles/screenrc;
|
||||
|
||||
# # You can also set the file content immediately.
|
||||
# ".gradle/gradle.properties".text = ''
|
||||
# org.gradle.console=verbose
|
||||
# org.gradle.daemon.idletimeout=3600000
|
||||
# '';
|
||||
};
|
||||
|
||||
# Home Manager can also manage your environment variables through
|
||||
# 'home.sessionVariables'. These will be explicitly sourced when using a
|
||||
# shell provided by Home Manager. If you don't want to manage your shell
|
||||
# through Home Manager then you have to manually source 'hm-session-vars.sh'
|
||||
# located at either
|
||||
#
|
||||
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
# or
|
||||
#
|
||||
# ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
# or
|
||||
#
|
||||
# /etc/profiles/per-user/gildedguy/etc/profile.d/hm-session-vars.sh
|
||||
#
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nano";
|
||||
NIXOS_ALLOW_UNFREE = "1"; # for impure builds
|
||||
GIT_EDITOR = "code --wait";
|
||||
VISUAL = "code --wait";
|
||||
DOCKER_BUILDKIT = "1";
|
||||
};
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
# let me cook with the configs, starting with git
|
||||
programs.git = {
|
||||
enable = true;
|
||||
package = pkgs.gitAndTools.gitFull;
|
||||
lfs = {
|
||||
enable = true;
|
||||
};
|
||||
userName = "Andrei Jiroh Halili";
|
||||
userEmail = "ajhalili2006@andreijiroh.dev";
|
||||
aliases = {
|
||||
signoff = "commit --signoff";
|
||||
amend = "commit -a --amend";
|
||||
remotes = "remote -v";
|
||||
root = "rev-parse --show-toplevel";
|
||||
unstage = "restore --staged";
|
||||
stats = "status";
|
||||
};
|
||||
extraConfig = {
|
||||
format = {
|
||||
signOff = true;
|
||||
};
|
||||
init = {
|
||||
defaultBranch = "main";
|
||||
};
|
||||
|
||||
# https://groups.google.com/g/binary-transparency/c/f-BI4o8HZW0
|
||||
transfer = {
|
||||
fsckobjects = true;
|
||||
};
|
||||
fetch = {
|
||||
fsckobjects = true;
|
||||
};
|
||||
receive = {
|
||||
fsckobjects = true;
|
||||
};
|
||||
push = {
|
||||
autoSetupRemote = true;
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscode;
|
||||
enableExtensionUpdateCheck = true;
|
||||
mutableExtensionsDir = true;
|
||||
# userSettings = {
|
||||
# "nix.enableLanguageServer" = true;
|
||||
# "nix.serverPath" = "nil";
|
||||
# "window.customTitleBarVisibility" = "auto";
|
||||
# "window.titleBarStyle" = "custom";
|
||||
# "window.menuBarVisibility" = "classic";
|
||||
# "redhat.telemetry.enabled" = true;
|
||||
# "github.copilot.editor.enableAutoCompletions" = false;
|
||||
# "github.copilot.chat.followUps" = "always";
|
||||
# "github.copilot.chat.terminalChatLocation" = "terminal";
|
||||
# "git.confirmSync" = false;
|
||||
# "microsoft-authentication.implementation" = "msal";
|
||||
# "workbench.colorTheme" = "GitHub Dark Colorblind (Beta)";
|
||||
# "workbench.iconTheme" = "material-icon-theme";
|
||||
# "workbench.productIconTheme" = "material-product-icons";
|
||||
# };
|
||||
# We're importing what's generated from nix4vscode here as a workaround
|
||||
# for now.
|
||||
#extensions = lib.attrsets.mapAttrsToList (_: v: v) vscExts;
|
||||
};
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{ pkgs, lib }:
|
||||
|
||||
let
|
||||
inherit (pkgs.stdenv) isDarwin isLinux isi686 isx86_64 isAarch32 isAarch64;
|
||||
|
@ -10,6 +10,30 @@ merge
|
|||
(merge
|
||||
(merge
|
||||
{
|
||||
"ms-python"."vscode-pylance" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-pylance";
|
||||
publisher = "ms-python";
|
||||
version = "2024.12.100";
|
||||
sha256 = "167cj9r476whfjg474s4nf7zi8v7cj58vrqiw86y4vcgl57v4h50";
|
||||
};
|
||||
"esbenp"."prettier-vscode" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "prettier-vscode";
|
||||
publisher = "esbenp";
|
||||
version = "11.0.0";
|
||||
sha256 = "1fcz8f4jgnf24kblf8m8nwgzd5pxs2gmrv235cpdgmqz38kf9n54";
|
||||
};
|
||||
"ms-azuretools"."vscode-docker" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-docker";
|
||||
publisher = "ms-azuretools";
|
||||
version = "1.29.3";
|
||||
sha256 = "1j35yr8f0bqzv6qryw0krbfigfna94b519gnfy46sr1licb6li6g";
|
||||
};
|
||||
"dbaeumer"."vscode-eslint" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-eslint";
|
||||
publisher = "dbaeumer";
|
||||
version = "3.0.13";
|
||||
sha256 = "0yjrylvkw5q9w7kjigndm5m66qn8nranrm0m7qna8ggi0f2nz5cp";
|
||||
};
|
||||
"eamodio"."gitlens" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "gitlens";
|
||||
publisher = "eamodio";
|
||||
|
@ -22,30 +46,210 @@ merge
|
|||
version = "5.16.0";
|
||||
sha256 = "0ggwj2y84dyqhzl9kisddx64559bkhnfv94zxz6zcqyfq0vpycng";
|
||||
};
|
||||
"github"."vscode-pull-request-github" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-pull-request-github";
|
||||
publisher = "github";
|
||||
version = "0.103.2024121117";
|
||||
sha256 = "0k90870ra85np0dg19mx2blr1yg9i2sk25mx08bblqh0hh0s5941";
|
||||
};
|
||||
"github"."copilot" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "copilot";
|
||||
publisher = "github";
|
||||
version = "1.254.1278";
|
||||
sha256 = "0n55apya8q87l4ijfvj3qqwg6sij1k9is99zc2wffgmghqb9fv7l";
|
||||
};
|
||||
"wakatime"."vscode-wakatime" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-wakatime";
|
||||
publisher = "wakatime";
|
||||
version = "25.0.0";
|
||||
sha256 = "1c5ilsj8zvcrhvh3gb9wbgz8llfkjgxnv39r12a3iyy3fvdg5zlz";
|
||||
};
|
||||
"github"."copilot-chat" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "copilot-chat";
|
||||
publisher = "github";
|
||||
version = "0.24.2024121201";
|
||||
sha256 = "14cs1ncbv0fib65m1iv6njl892p09fmamjkfyxrsjqgks2hisz5z";
|
||||
};
|
||||
"xabikos"."javascriptsnippets" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "javascriptsnippets";
|
||||
publisher = "xabikos";
|
||||
version = "1.8.0";
|
||||
sha256 = "19xg24alxsvq8pvafprshg7qxzx8p37bzk7qz6kjgkpvandrdpl6";
|
||||
};
|
||||
"github"."github-vscode-theme" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "github-vscode-theme";
|
||||
publisher = "github";
|
||||
version = "6.3.5";
|
||||
sha256 = "0jj7bp5iadrm2h75pdn96z0wzygv0sfa93karvlqlwagh2hrvrkl";
|
||||
};
|
||||
"golang"."go" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "go";
|
||||
publisher = "golang";
|
||||
version = "0.45.0";
|
||||
sha256 = "1ihy5pd5ymxarcgnq8ky7nfa9kk9x3hdazajirrh5f1m4cwgizn3";
|
||||
};
|
||||
"donjayamanne"."githistory" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "githistory";
|
||||
publisher = "donjayamanne";
|
||||
version = "0.6.20";
|
||||
sha256 = "0x9q7sh5l1frpvfss32ypxk03d73v9npnqxif4fjwcfwvx5mhiww";
|
||||
};
|
||||
"streetsidesoftware"."code-spell-checker" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "code-spell-checker";
|
||||
publisher = "streetsidesoftware";
|
||||
version = "4.0.29";
|
||||
sha256 = "1vx7qs66vbkshig029qgxmcx1shg5hkjkj7bd693hzfhz8702krs";
|
||||
};
|
||||
"editorconfig"."editorconfig" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "editorconfig";
|
||||
publisher = "editorconfig";
|
||||
version = "0.16.4";
|
||||
sha256 = "0fa4h9hk1xq6j3zfxvf483sbb4bd17fjl5cdm3rll7z9kaigdqwg";
|
||||
};
|
||||
"bradlc"."vscode-tailwindcss" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-tailwindcss";
|
||||
publisher = "bradlc";
|
||||
version = "0.13.64";
|
||||
sha256 = "14962pavlbdmqki6m7y7k9nvz1pcicrn3dw10lrcq8vxbj2bc416";
|
||||
};
|
||||
"davidanson"."vscode-markdownlint" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-markdownlint";
|
||||
publisher = "davidanson";
|
||||
version = "0.57.0";
|
||||
sha256 = "1gsc3xsvy4qbz75frk6jjf2f95b0frmbclhgxi1j49zbh16y2b76";
|
||||
};
|
||||
"mikestead"."dotenv" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "dotenv";
|
||||
publisher = "mikestead";
|
||||
version = "1.0.1";
|
||||
sha256 = "0rs57csczwx6wrs99c442qpf6vllv2fby37f3a9rhwc8sg6849vn";
|
||||
};
|
||||
"github"."codespaces" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "codespaces";
|
||||
publisher = "github";
|
||||
version = "1.17.3";
|
||||
sha256 = "1g4b7gd24cifmh62v1dj1b79yp5z6jbffmwh2nlymjbqf9h4bll9";
|
||||
};
|
||||
"mtxr"."sqltools" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "sqltools";
|
||||
publisher = "mtxr";
|
||||
version = "0.28.3";
|
||||
sha256 = "0zs8gdfar6g7j1mybdrpx7rmydlb1smqicw9438hrfzw301cffkd";
|
||||
};
|
||||
"codezombiech"."gitignore" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "gitignore";
|
||||
publisher = "codezombiech";
|
||||
version = "0.9.0";
|
||||
sha256 = "0ww0x28m83fv5zdqkmz108rsxb60fyy5y0ksknb2xchirzwhayi0";
|
||||
};
|
||||
"github"."remotehub" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "remotehub";
|
||||
publisher = "github";
|
||||
version = "0.65.2024112101";
|
||||
sha256 = "0mbw1nzvf8ch55vq0lsf0qpfl1dgyk5y80pca81j9dplyz4vrgax";
|
||||
};
|
||||
"ms-vscode"."remote-repositories" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "remote-repositories";
|
||||
publisher = "ms-vscode";
|
||||
version = "0.43.2024112101";
|
||||
sha256 = "1mss2fkpx21dm5rlnbhqw7japxz4k22grrv66ja34fl9fbqli9zw";
|
||||
};
|
||||
"github"."vscode-github-actions" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-github-actions";
|
||||
publisher = "github";
|
||||
version = "0.27.0";
|
||||
sha256 = "0sk8cgnk4pyjxwfi3hr3qrajffvdncvq3xbjn73g3jz0ygakg7xi";
|
||||
};
|
||||
"ms-vscode"."azure-repos" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "azure-repos";
|
||||
publisher = "ms-vscode";
|
||||
version = "0.41.2024112101";
|
||||
sha256 = "1dgyr1zmrl1aihlsfn0grrysmzf4g47m968zdn7fyc17hl857r59";
|
||||
};
|
||||
"orta"."vscode-jest" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-jest";
|
||||
publisher = "orta";
|
||||
version = "6.4.0";
|
||||
sha256 = "0asjg2ycq20qg2zyxybnmas2br08mjwhsw03y0qz24g8rkn9a7s4";
|
||||
};
|
||||
"tamasfe"."even-better-toml" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "even-better-toml";
|
||||
publisher = "tamasfe";
|
||||
version = "0.21.2";
|
||||
sha256 = "0208cms054yj2l8pz9jrv3ydydmb47wr4i0sw8qywpi8yimddf11";
|
||||
};
|
||||
"bierner"."markdown-mermaid" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "markdown-mermaid";
|
||||
publisher = "bierner";
|
||||
version = "1.27.0";
|
||||
sha256 = "1c9nvi2r3frbyi2ygff2zh3ylvr4df585mb6b5r8n6g5aa9kzp6k";
|
||||
};
|
||||
"prisma"."prisma" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "prisma";
|
||||
publisher = "prisma";
|
||||
version = "6.1.0";
|
||||
sha256 = "1m4i60hm62m1bl6nn4pk0l54ph7zf0c3ppvx4qc4bwpqv82k7xv1";
|
||||
};
|
||||
"bierner"."markdown-preview-github-styles" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "markdown-preview-github-styles";
|
||||
publisher = "bierner";
|
||||
version = "2.1.0";
|
||||
sha256 = "1fn9gdf3xj1drch4djn6c9lg94i2r9yjpfrf1a0y4v8q2zjk8sz8";
|
||||
};
|
||||
"gitlab"."gitlab-workflow" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "gitlab-workflow";
|
||||
publisher = "gitlab";
|
||||
version = "5.26.0";
|
||||
sha256 = "1xb8a834bgblc4zcrdc9v3by3wv3fls3bz3bm7rxaqyvszlpb42d";
|
||||
};
|
||||
"bierner"."markdown-emoji" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "markdown-emoji";
|
||||
publisher = "bierner";
|
||||
version = "0.3.1";
|
||||
sha256 = "0409sks7zz0lp1a0x6nxsh11yfnnb36s802q6dwfwjnblp049xw1";
|
||||
};
|
||||
"denoland"."vscode-deno" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-deno";
|
||||
publisher = "denoland";
|
||||
version = "3.43.1";
|
||||
sha256 = "0lna1znrbsdggzp6mx079461p21ngwgqz6mb7i3d0bnpxb844x3a";
|
||||
};
|
||||
"bierner"."markdown-checkbox" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "markdown-checkbox";
|
||||
publisher = "bierner";
|
||||
version = "0.4.0";
|
||||
sha256 = "0jbfi0av84ixwhcpysh9gyrsfxpy65igiidrdarn7vgsvxsdr0q2";
|
||||
};
|
||||
"unifiedjs"."vscode-mdx" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-mdx";
|
||||
publisher = "unifiedjs";
|
||||
version = "1.8.12";
|
||||
sha256 = "0afzx5i6bw7hmm4f8vdvx6a6mx053gmvc0gn78fz94b6fyaijsl7";
|
||||
};
|
||||
"bierner"."emojisense" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "emojisense";
|
||||
publisher = "bierner";
|
||||
version = "0.10.0";
|
||||
sha256 = "14rb8licb32rh04g7lq73lmfx4pk2p4x63427l3s9fw9idsiwgrw";
|
||||
};
|
||||
"bierner"."markdown-yaml-preamble" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "markdown-yaml-preamble";
|
||||
publisher = "bierner";
|
||||
version = "0.1.0";
|
||||
sha256 = "1xlb6dvrsy2sp92lax1nq01xcrax1nm256ns9b4vvkq7p4njpqp5";
|
||||
};
|
||||
"bierner"."markdown-footnotes" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "markdown-footnotes";
|
||||
publisher = "bierner";
|
||||
version = "0.1.1";
|
||||
sha256 = "1pp64x8cn4vmpscmzv2dg6bakjhnwd36rms2wl6bs5laq29k5wl7";
|
||||
};
|
||||
"bierner"."github-markdown-preview" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "github-markdown-preview";
|
||||
publisher = "bierner";
|
||||
version = "0.3.0";
|
||||
sha256 = "124vsg5jxa90j3mssxi18nb3wn6fji6b0mnnkasa89rgx3jfb5pf";
|
||||
};
|
||||
"pkief"."material-product-icons" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "material-product-icons";
|
||||
publisher = "pkief";
|
||||
|
@ -58,20 +262,182 @@ merge
|
|||
version = "1.26.0";
|
||||
sha256 = "1n414wwd6my4xjmh55b6l0s8bqadnq35ya1isxvdi6yabapbwg9f";
|
||||
};
|
||||
"coolbear"."systemd-unit-file" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "systemd-unit-file";
|
||||
publisher = "coolbear";
|
||||
version = "1.0.6";
|
||||
sha256 = "0sc0zsdnxi4wfdlmaqwb6k2qc21dgwx6ipvri36x7agk7m8m4736";
|
||||
};
|
||||
"ms-vscode"."wordcount" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "wordcount";
|
||||
publisher = "ms-vscode";
|
||||
version = "0.1.0";
|
||||
sha256 = "164s721bqbw2lh770vli9vij8q79033nd5k1acxwadmlf99hmgj1";
|
||||
};
|
||||
"ms-vscode"."vscode-github-issue-notebooks" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-github-issue-notebooks";
|
||||
publisher = "ms-vscode";
|
||||
version = "0.0.130";
|
||||
sha256 = "0g82z1qpj1abfykflk0yq0j40mqwfkxk7sx0ms9q7wa2yblwj1fk";
|
||||
};
|
||||
"exiasr"."hadolint" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "hadolint";
|
||||
publisher = "exiasr";
|
||||
version = "1.1.2";
|
||||
sha256 = "00x6bnjm0yk0fcw91c47g8c5shgbcvxyyz49r4y23q4gqizvaqz8";
|
||||
};
|
||||
"drknoxy"."eslint-disable-snippets" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "eslint-disable-snippets";
|
||||
publisher = "drknoxy";
|
||||
version = "1.4.1";
|
||||
sha256 = "1djjknfg81cjbn4bcalc7gg9fha5lzwmpmmrzm68n87qvld58hs4";
|
||||
};
|
||||
"leighlondon"."eml" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "eml";
|
||||
publisher = "leighlondon";
|
||||
version = "0.4.0";
|
||||
sha256 = "180gis04nisccr9l4ibks5fn2gp327b9bmwjiap81lir859kkrzv";
|
||||
};
|
||||
"jnoortheen"."nix-ide" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "nix-ide";
|
||||
publisher = "jnoortheen";
|
||||
version = "0.3.5";
|
||||
sha256 = "12sg67mn3c8mjayh9d6y8qaky00vrlnwwx58v1f1m4qrbdjqab46";
|
||||
};
|
||||
"matthewpi"."caddyfile-support" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "caddyfile-support";
|
||||
publisher = "matthewpi";
|
||||
version = "0.4.0";
|
||||
sha256 = "1fjhirybvb92frqj1ssh49a73q497ny69z9drdjlkpaccpbvb0r7";
|
||||
};
|
||||
"ultram4rine"."vscode-choosealicense" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-choosealicense";
|
||||
publisher = "ultram4rine";
|
||||
version = "0.9.4";
|
||||
sha256 = "1hs8sjbq9rvs8wkaxx9nh9swbdca9rfkamf2mcvp3gyw7d5park2";
|
||||
};
|
||||
"tailscale"."vscode-tailscale" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-tailscale";
|
||||
publisher = "tailscale";
|
||||
version = "1.0.0";
|
||||
sha256 = "0j41xbz6zangq7i4mj4xgdpsswss3jnznyd9v3943yvfhmkq5a1h";
|
||||
};
|
||||
"wdhongtw"."gpg-indicator" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "gpg-indicator";
|
||||
publisher = "wdhongtw";
|
||||
version = "0.7.2";
|
||||
sha256 = "0sfn2lvj2a7kwkbjpswbl9hwhpcv053gnxny5x5rhsqcsq2nx8yk";
|
||||
};
|
||||
"r3inbowari"."gomodexplorer" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "gomodexplorer";
|
||||
publisher = "r3inbowari";
|
||||
version = "0.3.18";
|
||||
sha256 = "1k0assbxwakbsxfp5d2kcq1pfg3rzdmzc96d7qgrhrp9lx22n8p9";
|
||||
};
|
||||
"doppler"."doppler-vscode" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "doppler-vscode";
|
||||
publisher = "doppler";
|
||||
version = "0.0.10";
|
||||
sha256 = "1cqaxnf45in44i4za36diirgh1q5rkmk27is9h6zgnmgl2i9awa7";
|
||||
};
|
||||
"yahyabatulu"."vscode-markdown-alert" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-markdown-alert";
|
||||
publisher = "yahyabatulu";
|
||||
version = "0.0.4";
|
||||
sha256 = "1b4ngq3hn362ngdybjazr0x73whr7p5sbxms80s8mdd7yhq949kl";
|
||||
};
|
||||
"martellaj"."license-injector" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "license-injector";
|
||||
publisher = "martellaj";
|
||||
version = "0.0.2";
|
||||
sha256 = "09d9bbd5drp3krla2q37dp4rrz4mb20mnsrkjpb00n1mvf7q1fps";
|
||||
};
|
||||
"codiium"."wrangler" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "wrangler";
|
||||
publisher = "codiium";
|
||||
version = "0.0.1";
|
||||
sha256 = "1g2wx6ln2kym2daqgc3nxw995rb1c1n7j3gqj0vfbk520qp4vhfx";
|
||||
};
|
||||
"joel-harkes"."emlviewer" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "emlviewer";
|
||||
publisher = "joel-harkes";
|
||||
version = "0.0.4";
|
||||
sha256 = "08rh5j50jkhcywkngf493cdim15f6vbj08av6m1cvp0v3ha21vdq";
|
||||
};
|
||||
"aikebang"."mkdocs-syntax-highlight" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "mkdocs-syntax-highlight";
|
||||
publisher = "aikebang";
|
||||
version = "0.2.1";
|
||||
sha256 = "1gpcjdcf9yr263cql14wwyw2f5fsq06i2bsr8nja0izyw76g8wvm";
|
||||
};
|
||||
"devfile"."vscode-devfile" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "vscode-devfile";
|
||||
publisher = "devfile";
|
||||
version = "0.0.2";
|
||||
sha256 = "156vq1gr7x94nrjlgv1a5qz0r8k5vh9y9hz1f0jaxcjcynjp4ijs";
|
||||
};
|
||||
}
|
||||
(lib.attrsets.optionalAttrs (isLinux && (isi686 || isx86_64)) { }))
|
||||
(lib.attrsets.optionalAttrs (isLinux && (isAarch32 || isAarch64)) { }))
|
||||
(lib.attrsets.optionalAttrs (isDarwin && (isi686 || isx86_64)) { }))
|
||||
(lib.attrsets.optionalAttrs (isDarwin && (isAarch32 || isAarch64)) { })
|
||||
(lib.attrsets.optionalAttrs (isLinux && (isi686 || isx86_64)) {
|
||||
"ms-python"."python" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "python";
|
||||
publisher = "ms-python";
|
||||
version = "2024.23.2024121901";
|
||||
sha256 = "01wfhbaq9v2wvnndh6dphq1f6c04dg0yx9p7637v9bl124zm0qw7";
|
||||
arch = "linux-x64";
|
||||
};
|
||||
"timonwong"."shellcheck" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "shellcheck";
|
||||
publisher = "timonwong";
|
||||
version = "0.37.1";
|
||||
sha256 = "13gdyiafqla7dra17q842d8a7vrgmf0im4z6qm6xzgim71qzcqhy";
|
||||
arch = "linux-x64";
|
||||
};
|
||||
}))
|
||||
(lib.attrsets.optionalAttrs (isLinux && (isAarch32 || isAarch64)) {
|
||||
"ms-python"."python" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "python";
|
||||
publisher = "ms-python";
|
||||
version = "2024.23.2024121901";
|
||||
sha256 = "1qs14aca323yqc93rrnwvp7v40k9z2500lj9pkh5sa2pfm9cl68x";
|
||||
arch = "linux-arm64";
|
||||
};
|
||||
"timonwong"."shellcheck" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "shellcheck";
|
||||
publisher = "timonwong";
|
||||
version = "0.37.1";
|
||||
sha256 = "1xp4qyrs8rcaba94nm26da0lf0qjbchp218jm4iyczg5dpgvp6hk";
|
||||
arch = "linux-arm64";
|
||||
};
|
||||
}))
|
||||
(lib.attrsets.optionalAttrs (isDarwin && (isi686 || isx86_64)) {
|
||||
"ms-python"."python" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "python";
|
||||
publisher = "ms-python";
|
||||
version = "2024.23.2024121901";
|
||||
sha256 = "0jh7rkh5j2l8irb2d43hy9n5kw59czyijsiq5f9641rfl6yvakzh";
|
||||
arch = "darwin-x64";
|
||||
};
|
||||
"timonwong"."shellcheck" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "shellcheck";
|
||||
publisher = "timonwong";
|
||||
version = "0.37.1";
|
||||
sha256 = "0jvi9pzw80ga47p9zy92wy43prci5dj8lfa5syxl5cvchd3848v1";
|
||||
arch = "darwin-x64";
|
||||
};
|
||||
}))
|
||||
(lib.attrsets.optionalAttrs (isDarwin && (isAarch32 || isAarch64)) {
|
||||
"ms-python"."python" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "python";
|
||||
publisher = "ms-python";
|
||||
version = "2024.23.2024121901";
|
||||
sha256 = "1d0w7ih58bg1smmjp3i798qbf08maqa3m263ygvllyawy3kl03qr";
|
||||
arch = "darwin-arm64";
|
||||
};
|
||||
"timonwong"."shellcheck" = vscode-utils.extensionFromVscodeMarketplace {
|
||||
name = "shellcheck";
|
||||
publisher = "timonwong";
|
||||
version = "0.37.1";
|
||||
sha256 = "0l72fmphy7v86jdlbk4xclaxm6g2mc2cd3jcydwrnwyfagh2n9di";
|
||||
arch = "darwin-arm64";
|
||||
};
|
||||
})
|
||||
|
|
190
.nix4vscode.toml
190
.nix4vscode.toml
|
@ -1,7 +1,7 @@
|
|||
# SPDX-License-Identifier: MPL-2.0
|
||||
# To use thhis configuration, you must have nix4vscode installed, either
|
||||
# via "cargo build" or good old "nix develop" from a local clone of the
|
||||
# tooling's sources.
|
||||
# To use thhis configuration, you must have nix4vscode installed, either via "cargo build"
|
||||
# or good old "nix develop" from a local clone of the tooling's sources. This is currently
|
||||
# manually managed to be in sync with code --list-extensions while Settings Sync is enabled.
|
||||
|
||||
# TODO: Bump this on every VS Code release here.
|
||||
vscode_version = "1.96.0"
|
||||
|
@ -30,6 +30,103 @@ extension_name = "gitlens"
|
|||
[[extensions]]
|
||||
publisher_name = "vivaxy"
|
||||
extension_name = "vscode-conventional-commits"
|
||||
[[extensions]]
|
||||
publisher_name = "gitlab"
|
||||
extension_name = "gitlab-workflow"
|
||||
[[extensions]]
|
||||
publisher_name = "exiasr"
|
||||
extension_name = "hadolint"
|
||||
[[extensions]]
|
||||
publisher_name = "editorconfig"
|
||||
extension_name = "editorconfig"
|
||||
[[extensions]]
|
||||
publisher_name = "donjayamanne"
|
||||
extension_name = "githistory"
|
||||
[[extensions]]
|
||||
publisher_name = "devfile"
|
||||
extension_name = "vscode-devfile"
|
||||
[[extensions]]
|
||||
publisher_name = "tailscale"
|
||||
extension_name = "vscode-tailscale"
|
||||
[[extensions]]
|
||||
publisher_name = "timonwong"
|
||||
extension_name = "shellcheck"
|
||||
|
||||
# github
|
||||
[[extensions]]
|
||||
publisher_name = "github"
|
||||
extension_name = "copilot"
|
||||
[[extensions]]
|
||||
publisher_name = "github"
|
||||
extension_name = "vscode-github-actions"
|
||||
[[extensions]]
|
||||
publisher_name = "github"
|
||||
extension_name = "remotehub"
|
||||
[[extensions]]
|
||||
publisher_name = "github"
|
||||
extension_name = "copilot-chat"
|
||||
[[extensions]]
|
||||
publisher_name = "github"
|
||||
extension_name = "codespaces"
|
||||
[[extensions]]
|
||||
publisher_name = "github"
|
||||
extension_name = "vscode-pull-request-github"
|
||||
|
||||
# markdown
|
||||
[[extensions]]
|
||||
publisher_name = "aikebang"
|
||||
extension_name = "mkdocs-syntax-highlight"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "emojisense"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "markdown-checkbox"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "github-markdown-preview"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "markdown-emoji"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "markdown-footnotes"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "markdown-mermaid"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "markdown-preview-github-styles"
|
||||
[[extensions]]
|
||||
publisher_name = "bierner"
|
||||
extension_name = "markdown-yaml-preamble"
|
||||
|
||||
# microsoft
|
||||
[[extensions]]
|
||||
publisher_name = "ms-azuretools"
|
||||
extension_name = "vscode-docker"
|
||||
# temporarily commented out per https://github.com/nix-community/nix4vscode/issues/135
|
||||
#[[extensions]]
|
||||
#publisher_name = "ms-python"
|
||||
#extension_name = "debugpy"
|
||||
[[extensions]]
|
||||
publisher_name = "ms-python"
|
||||
extension_name = "python"
|
||||
[[extensions]]
|
||||
publisher_name = "ms-python"
|
||||
extension_name = "vscode-pylance"
|
||||
[[extensions]]
|
||||
publisher_name = "ms-vscode"
|
||||
extension_name = "azure-repos"
|
||||
[[extensions]]
|
||||
publisher_name = "ms-vscode"
|
||||
extension_name = "remote-repositories"
|
||||
[[extensions]]
|
||||
publisher_name = "ms-vscode"
|
||||
extension_name = "vscode-github-issue-notebooks"
|
||||
[[extensions]]
|
||||
publisher_name = "ms-vscode"
|
||||
extension_name = "wordcount"
|
||||
|
||||
# programming languages + IntelliSense
|
||||
[[extensions]]
|
||||
|
@ -44,3 +141,90 @@ extension_name = "vscode-yaml"
|
|||
[[extensions]]
|
||||
publisher_name = "unifiedjs"
|
||||
extension_name = "vscode-mdx"
|
||||
[[extensions]]
|
||||
publisher_name = "davidanson"
|
||||
extension_name = "vscode-markdownlint"
|
||||
[[extensions]]
|
||||
publisher_name = "golang"
|
||||
extension_name = "go"
|
||||
[[extensions]]
|
||||
publisher_name = "mikestead"
|
||||
extension_name = "dotenv"
|
||||
[[extensions]]
|
||||
publisher_name = "joel-harkes"
|
||||
extension_name = "emlviewer"
|
||||
[[extensions]]
|
||||
publisher_name = "leighlondon"
|
||||
extension_name = "eml"
|
||||
[[extensions]]
|
||||
publisher_name = "matthewpi"
|
||||
extension_name = "caddyfile-support"
|
||||
[[extensions]]
|
||||
publisher_name = "bradlc"
|
||||
extension_name = "vscode-tailwindcss"
|
||||
[[extensions]]
|
||||
publisher_name = "christan-kohler"
|
||||
extension_name = "npm-intellisense"
|
||||
[[extensions]]
|
||||
publisher_name = "codezombiech"
|
||||
extension_name = "gitignore"
|
||||
[[extensions]]
|
||||
publisher_name = "codiium"
|
||||
extension_name = "wrangler"
|
||||
[[extensions]]
|
||||
publisher_name = "coolbear"
|
||||
extension_name = "systemd-unit-file"
|
||||
[[extensions]]
|
||||
publisher_name = "dbaeumer"
|
||||
extension_name = "vscode-eslint"
|
||||
[[extensions]]
|
||||
publisher_name = "drknoxy"
|
||||
extension_name = "eslint-disable-snippets"
|
||||
[[extensions]]
|
||||
publisher_name = "esbenp"
|
||||
extension_name = "prettier-vscode"
|
||||
[[extensions]]
|
||||
publisher_name = "martellaj"
|
||||
extension_name = "license-injector"
|
||||
[[extensions]]
|
||||
publisher_name = "mtxr"
|
||||
extension_name = "sqltools"
|
||||
[[extensions]]
|
||||
publisher_name = "mtxr"
|
||||
extension_name = "sqltools-mysql"
|
||||
[[extensions]]
|
||||
publisher_name = "mtxr"
|
||||
extension_name = "sqltools-pg"
|
||||
[[extensions]]
|
||||
publisher_name = "mtxr"
|
||||
extension_name = "sqltools-sqlite"
|
||||
[[extensions]]
|
||||
publisher_name = "orta"
|
||||
extension_name = "vscode-jest"
|
||||
[[extensions]]
|
||||
publisher_name = "prisma"
|
||||
extension_name = "prisma"
|
||||
[[extensions]]
|
||||
publisher_name = "r3inbowari"
|
||||
extension_name = "gomodexplorer"
|
||||
[[extensions]]
|
||||
publisher_name = "socheatsok78"
|
||||
extension_name = "dotenv-vscode-stripped"
|
||||
[[extensions]]
|
||||
publisher_name = "streetsidesoftware"
|
||||
extension_name = "code-spell-checker"
|
||||
[[extensions]]
|
||||
publisher_name = "tamasfe"
|
||||
extension_name = "even-better-toml"
|
||||
[[extensions]]
|
||||
publisher_name = "ultram4rine"
|
||||
extension_name = "vscode-choosealicense"
|
||||
[[extensions]]
|
||||
publisher_name = "wdhongtw"
|
||||
extension_name = "gpg-indicator"
|
||||
[[extensions]]
|
||||
publisher_name = "xabikos"
|
||||
extension_name = "javascriptsnippets"
|
||||
[[extensions]]
|
||||
publisher_name = "yahyabatulu"
|
||||
extension_name = "vscode-markdown-alert"
|
||||
|
|
20
README.md
20
README.md
|
@ -1,15 +1,29 @@
|
|||
# `@andreijiroh-dev/dotfiles@nixos` - @ajhalili2006's dotfiles under nixos + nixpkgs!
|
||||
|
||||
Yup, I'm starting a fresh for my dotfiles, now with [nixpkgs](https://nixos.org)
|
||||
and [home-manager]()
|
||||
Yup, I'm starting a fresh for my dotfiles for 2025 and beyond, now with
|
||||
[nixpkgs](https://nixos.org) and [home-manager](https://nix-community.github.io/home-manager).
|
||||
(Don't worry, I'll be maintaining the yadm-era setup for non-Nix setups seperately)
|
||||
|
||||
## Usage
|
||||
|
||||
### Using my Nixpkgs config
|
||||
|
||||
Make sure Git is installed in your NixOS/nixpkgs setup (via `/etc/nixos/configuration.nix` or
|
||||
the usual `nix-env -iA nixpkgs.gitFull` or `nix profile install nixpkgs#gitFull` if using
|
||||
Flakes) for the setup to work.
|
||||
|
||||
```bash
|
||||
cd ~
|
||||
git init
|
||||
git remote add origin https://mau.dev/andreijiroh-dev/dotfiles
|
||||
# TODO: add the rest
|
||||
```
|
||||
|
||||
## Directory + File Map
|
||||
|
||||
### Essientials
|
||||
|
||||
* [`.config/nixos`](./.config/nixos/) - my NixOS configuration as a flake, including system tools
|
||||
* [`.config/nixos`](./.config/nixos/) - my NixOS configuration as a flake, including system tools,
|
||||
usually in sync
|
||||
* [`.config/home-manager`](./.config/home-manager/) - Home-manager configs, mostly CLI and desktop apps go here
|
||||
* [`bin`](./bin) - Shell scripts! (because Nix looks like Haskell to me)
|
||||
|
|
15
bin/nix4vscode-config-builder
Executable file
15
bin/nix4vscode-config-builder
Executable file
|
@ -0,0 +1,15 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Output the VSCode version
|
||||
echo 'vscode_version = "'$(code --version | head -n1)'"'
|
||||
echo
|
||||
|
||||
# Loop through each installed extension
|
||||
code --list-extensions | while read extension; do
|
||||
publisher_name=$(echo "$extension" | cut -d '.' -f 1)
|
||||
extension_name=$(echo "$extension" | cut -d '.' -f 2-)
|
||||
echo '[[extensions]]'
|
||||
echo 'publisher_name = "'$publisher_name'"'
|
||||
echo 'extension_name = "'$extension_name'"'
|
||||
echo
|
||||
done
|
12
bin/nix4vscode-generator
Executable file
12
bin/nix4vscode-generator
Executable file
|
@ -0,0 +1,12 @@
|
|||
#!/usr/bin/env bash
|
||||
set -o pipefail
|
||||
|
||||
if [[ $DEBUG != "" ]]; then
|
||||
set -x
|
||||
fi
|
||||
|
||||
NIX4VSCODE_PATH=$(command -v nix4vscode)
|
||||
NIX4VSCODE=${NIX4VSCODE:-"$HOME/bin/nix4vscode"}
|
||||
|
||||
"$NIX4VSCODE" --output "$HOME/.config/nixos/shared/vscode-extensions.nix" "$HOME/.nix4vscode.toml"
|
||||
"$NIX4VSCODE" --openvsx --output "$HOME/.config/nixos/shared/openvsx-extensions.nix" "$HOME/.nix4vscode.toml" || true
|
Loading…
Add table
Reference in a new issue