Compare commits

..

4 Commits

Author SHA1 Message Date
d4d1e0a5d4 Updated lockfiles 2025-07-23 14:22:01 -03:00
6268fe3b00 Refactor Nix configurations for improved readability and organization; update package declarations to use 'with pkgs;' syntax and remove unnecessary builtins.attrValues. 2025-07-23 14:18:20 -03:00
5c62858c37 Update flake.lock and vscode configuration
- Updated package references in flake.lock for various dependencies.
- Changed VSCode package from vscodium to vscode and updated extensions.
- Enabled SSH agent start in ssh.nix.
- Refined overlays in default.nix for better package management.
2025-07-23 11:13:43 -03:00
93de9d3665 More Major Changes 2025-07-22 09:39:33 -03:00
38 changed files with 389 additions and 347 deletions

172
flake.lock generated
View File

@@ -105,14 +105,14 @@
"flake-compat": "flake-compat",
"git-hooks": "git-hooks",
"nix": "nix",
"nixpkgs": "nixpkgs_2"
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1751909516,
"narHash": "sha256-MMhscNXWOig2UzkWJkBoNGp0piO+0mln37HFGPkQV58=",
"lastModified": 1753201456,
"narHash": "sha256-dwx5SvXyo7bd8sR4qe4kAKVmoYDKrGDeLymMoR6rObY=",
"owner": "cachix",
"repo": "devenv",
"rev": "36e4cf7d6cb89862e69efce4e5c147ac2e4d38f9",
"rev": "39662b2c5b94ad06573c9aac4fe9f671260d1587",
"type": "github"
},
"original": {
@@ -128,11 +128,11 @@
]
},
"locked": {
"lastModified": 1751854533,
"narHash": "sha256-U/OQFplExOR1jazZY4KkaQkJqOl59xlh21HP9mI79Vc=",
"lastModified": 1753140376,
"narHash": "sha256-7lrVrE0jSvZHrxEzvnfHFE/Wkk9DDqb+mYCodI5uuB8=",
"owner": "nix-community",
"repo": "disko",
"rev": "16b74a1e304197248a1bc663280f2548dbfcae3c",
"rev": "545aba02960caa78a31bd9a8709a0ad4b6320a5c",
"type": "github"
},
"original": {
@@ -219,11 +219,11 @@
]
},
"locked": {
"lastModified": 1743550720,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
"lastModified": 1749398372,
"narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "c621e8422220273271f52058f618c94e405bb0f5",
"rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
"type": "github"
},
"original": {
@@ -261,10 +261,11 @@
]
},
"locked": {
"lastModified": 1749636823,
"lastModified": 1750779888,
"narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "623c56286de5a3193aa38891a6991b28f9bab056",
"rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
"type": "github"
},
"original": {
@@ -283,6 +284,7 @@
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
@@ -318,27 +320,27 @@
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1748186689,
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
"lastModified": 1744584021,
"narHash": "sha256-0RJ4mJzf+klKF4Fuoc8VN8dpQQtZnKksFmR2jhWE1Ew=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
"rev": "52c517c8f6c199a1d6f5118fae500ef69ea845ae",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "48.2",
"ref": "48.1",
"repo": "gnome-shell",
"type": "github"
}
},
"hardware": {
"locked": {
"lastModified": 1751432711,
"narHash": "sha256-136MeWtckSHTN9Z2WRNRdZ8oRP3vyx3L8UxeBYE+J9w=",
"lastModified": 1753122741,
"narHash": "sha256-nFxE8lk9JvGelxClCmwuJYftbHqwnc01dRN4DVLUroM=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "497ae1357f1ac97f1aea31a4cb74ad0d534ef41f",
"rev": "cc66fddc6cb04ab479a1bb062f4d4da27c936a22",
"type": "github"
},
"original": {
@@ -354,15 +356,16 @@
]
},
"locked": {
"lastModified": 1751824240,
"narHash": "sha256-aDDC0CHTlL7QDKWWhdbEgVPK6KwWt+ca0QkmHYZxMzI=",
"lastModified": 1753288231,
"narHash": "sha256-WcMW9yUDfER8kz4NdCaaI/ep0Ef91L+Nf7MetNzHZc4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "fd9e55f5fac45a26f6169310afca64d56b681935",
"rev": "7b5a978e00273b8676c530c03d315f5b75fae564",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-25.05",
"repo": "home-manager",
"type": "github"
}
@@ -378,7 +381,10 @@
"devenv",
"git-hooks"
],
"nixpkgs": "nixpkgs",
"nixpkgs": [
"devenv",
"nixpkgs"
],
"nixpkgs-23-11": [
"devenv"
],
@@ -387,11 +393,11 @@
]
},
"locked": {
"lastModified": 1750955511,
"narHash": "sha256-IDB/oh/P63ZTdhgSkey2LZHzeNhCdoKk+4j7AaPe1SE=",
"lastModified": 1752773918,
"narHash": "sha256-dOi/M6yNeuJlj88exI+7k154z+hAhFcuB8tZktiW7rg=",
"owner": "cachix",
"repo": "nix",
"rev": "afa41b08df4f67b8d77a8034b037ac28c71c77df",
"rev": "031c3cf42d2e9391eee373507d8c12e0f9606779",
"type": "github"
},
"original": {
@@ -429,11 +435,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1751935943,
"narHash": "sha256-ORn5MaLrkUBEKWneV/R+3IafbC7G8UTfHDjXnM9RKqQ=",
"lastModified": 1753236771,
"narHash": "sha256-lQ+lOB8b1Awwd1p4zwqqgu+Fs50PKp1AM2f7zoUdyxE=",
"owner": "nix-community",
"repo": "nix4vscode",
"rev": "8186db71ab2a9b73d73fa20fc32e5601f26ba593",
"rev": "198e14fa2c4d6eebd33a91886cc2a5b849f92150",
"type": "github"
},
"original": {
@@ -444,11 +450,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1751432711,
"narHash": "sha256-136MeWtckSHTN9Z2WRNRdZ8oRP3vyx3L8UxeBYE+J9w=",
"lastModified": 1753122741,
"narHash": "sha256-nFxE8lk9JvGelxClCmwuJYftbHqwnc01dRN4DVLUroM=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "497ae1357f1ac97f1aea31a4cb74ad0d534ef41f",
"rev": "cc66fddc6cb04ab479a1bb062f4d4da27c936a22",
"type": "github"
},
"original": {
@@ -460,17 +466,17 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1747179050,
"narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e",
"lastModified": 1750441195,
"narHash": "sha256-yke+pm+MdgRb6c0dPt8MgDhv7fcBbdjmv1ZceNTyzKg=",
"owner": "cachix",
"repo": "devenv-nixpkgs",
"rev": "0ceffe312871b443929ff3006960d29b120dc627",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"owner": "cachix",
"ref": "rolling",
"repo": "devenv-nixpkgs",
"type": "github"
}
},
@@ -508,11 +514,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1751792365,
"narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=",
"lastModified": 1752950548,
"narHash": "sha256-NS6BLD0lxOrnCiEOcvQCDVPXafX1/ek1dfJHX1nUIzc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb",
"rev": "c87b95e25065c028d31a94f06a62927d18763fdf",
"type": "github"
},
"original": {
@@ -522,50 +528,18 @@
"type": "github"
}
},
"nixpkgs-void-editor": {
"locked": {
"lastModified": 1746035195,
"narHash": "sha256-9eVYmsLuKY0Q9U5fB4bgZyjSJjjJYSUdh4A2BieLECc=",
"owner": "jskrzypek",
"repo": "nixpkgs",
"rev": "cc7e0513e30c8b08753a004bbb221202a01cb408",
"type": "github"
},
"original": {
"owner": "jskrzypek",
"ref": "void-editor",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1746807397,
"narHash": "sha256-zU2z0jlkJGWLhdNr/8AJSxqK8XD0IlQgHp3VZcP56Aw=",
"owner": "cachix",
"repo": "devenv-nixpkgs",
"rev": "c5208b594838ea8e6cca5997fbf784b7cca1ca90",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "rolling",
"repo": "devenv-nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1751792365,
"narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=",
"lastModified": 1753115646,
"narHash": "sha256-yLuz5cz5Z+sn8DRAfNkrd2Z1cV6DaYO9JMrEz4KZo/c=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb",
"rev": "92c2e04a475523e723c67ef872d8037379073681",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"ref": "nixos-25.05",
"repo": "nixpkgs",
"type": "github"
}
@@ -583,11 +557,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1748730660,
"narHash": "sha256-5LKmRYKdPuhm8j5GFe3AfrJL8dd8o57BQ34AGjJl1R0=",
"lastModified": 1751320053,
"narHash": "sha256-3m6RMw0FbbaUUa01PNaMLoO7D99aBClmY5ed9V3vz+0=",
"owner": "nix-community",
"repo": "NUR",
"rev": "2c0bc52fe14681e9ef60e3553888c4f086e46ecb",
"rev": "cbde1735782f9c2bb2c63d5e05fba171a14a4670",
"type": "github"
},
"original": {
@@ -627,11 +601,10 @@
"nix-darwin": "nix-darwin",
"nix4vscode": "nix4vscode",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_3",
"nixpkgs": "nixpkgs_2",
"nixpkgs-darwin": "nixpkgs-darwin",
"nixpkgs-stable": "nixpkgs-stable",
"nixpkgs-unstable": "nixpkgs-unstable",
"nixpkgs-void-editor": "nixpkgs-void-editor",
"pre-commit-hooks": "pre-commit-hooks",
"stylix": "stylix",
"zen-browser": "zen-browser"
@@ -658,15 +631,16 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1751914048,
"narHash": "sha256-xHO3xlw35tCC0f3pN3osPNjgwwwAgusTuZk5iC8oDiE=",
"lastModified": 1753237218,
"narHash": "sha256-DtXr03z/SrNZBPUVUdhL+VM356TZRbJLoyxDx+z0j+s=",
"owner": "danth",
"repo": "stylix",
"rev": "bf0ef81c8fcc30c32db9dab32d379f8d9db835e4",
"rev": "7a60ccb4e664c81cf9db71436cbd7a14b8164f30",
"type": "github"
},
"original": {
"owner": "danth",
"ref": "release-25.05",
"repo": "stylix",
"type": "github"
}
@@ -738,11 +712,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1748180480,
"narHash": "sha256-7n0XiZiEHl2zRhDwZd/g+p38xwEoWtT0/aESwTMXWG4=",
"lastModified": 1750770351,
"narHash": "sha256-LI+BnRoFNRa2ffbe3dcuIRYAUcGklBx0+EcFxlHj0SY=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "87d652edd26f5c0c99deda5ae13dfb8ece2ffe31",
"rev": "5a775c6ffd6e6125947b393872cde95867d85a2a",
"type": "github"
},
"original": {
@@ -754,11 +728,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1748740859,
"narHash": "sha256-OEM12bg7F4N5WjZOcV7FHJbqRI6jtCqL6u8FtPrlZz4=",
"lastModified": 1751159871,
"narHash": "sha256-UOHBN1fgHIEzvPmdNMHaDvdRMgLmEJh2hNmDrp3d3LE=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "57d5f9683ff9a3b590643beeaf0364da819aedda",
"rev": "bded5e24407cec9d01bd47a317d15b9223a1546c",
"type": "github"
},
"original": {
@@ -770,11 +744,11 @@
"tinted-zed": {
"flake": false,
"locked": {
"lastModified": 1725758778,
"narHash": "sha256-8P1b6mJWyYcu36WRlSVbuj575QWIFZALZMTg5ID/sM4=",
"lastModified": 1751158968,
"narHash": "sha256-ksOyv7D3SRRtebpXxgpG4TK8gZSKFc4TIZpR+C98jX8=",
"owner": "tinted-theming",
"repo": "base16-zed",
"rev": "122c9e5c0e6f27211361a04fae92df97940eccf9",
"rev": "86a470d94204f7652b906ab0d378e4231a5b3384",
"type": "github"
},
"original": {
@@ -815,11 +789,11 @@
]
},
"locked": {
"lastModified": 1751930356,
"narHash": "sha256-xiG5vY4KhrIfUGb/MyPXaDiatFJ0mQngook01X4VwHg=",
"lastModified": 1753069499,
"narHash": "sha256-YtgY0ueqKNrBma4Euu8WH23BhUkBujirJDMDE1KujnU=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "06c1a125bfa2002e9d84ebf655271c6f06ab1f38",
"rev": "c64b94235ae24e3b9e01a08f0331d8bb0e5b037a",
"type": "github"
},
"original": {

View File

@@ -60,7 +60,10 @@
# ========= Overlays =========
#
# Custom modifications/overrides to upstream packages.
overlays = import ./overlays {inherit inputs;};
overlays = import ./overlays {
inherit inputs;
inherit lib;
};
#
# ========= Host Configurations =========
@@ -111,7 +114,7 @@
#
# NOTE(starter): As with typical flake-based configs, you'll need to update the nixOS, hm,
# and darwin version numbers below when new releases are available.
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
# The next two inputs are for pinning nixpkgs to stable vs unstable regardless of what the above is set to.
# This is particularly useful when an upcoming stable release is in beta because you can effectively
# keep 'nixpkgs-stable' set to stable for critical packages while setting 'nixpkgs' to the beta branch to
@@ -119,11 +122,10 @@
# See also 'stable-packages' and 'unstable-packages' overlays at 'overlays/default.nix"
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.11";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-void-editor.url = "github:jskrzypek/nixpkgs/void-editor";
hardware.url = "github:nixos/nixos-hardware";
home-manager = {
url = "github:nix-community/home-manager";
url = "github:nix-community/home-manager/release-25.05";
inputs.nixpkgs.follows = "nixpkgs";
};
@@ -158,7 +160,7 @@
devenv.url = "github:cachix/devenv";
stylix = {
url = "github:danth/stylix";
url = "github:danth/stylix/release-25.05";
inputs.nixpkgs.follows = "nixpkgs";
};

View File

@@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
imports = [
#################### Required Configs ####################
common/core # required
@@ -7,9 +6,7 @@
#################### Host-specific Optional Configs ####################
];
home.packages = builtins.attrValues {
inherit (pkgs)
home.packages = with pkgs; [
vlc
;
};
];
}

View File

@@ -3,8 +3,7 @@
lib,
pkgs,
...
}:
{
}: {
imports = lib.flatten [
(lib.custom.scanPaths ./.)
(map lib.custom.relativeToRoot [
@@ -16,16 +15,13 @@
username = lib.mkDefault "exampleSecondUser";
homeDirectory = lib.mkDefault "/home/${config.home.username}";
stateVersion = lib.mkDefault "24.11";
sessionPath = [ "$HOME/.local/bin" ];
sessionPath = ["$HOME/.local/bin"];
};
home.packages = builtins.attrValues {
inherit (pkgs)
home.packages = with pkgs; [
# Packages that don't have custom configs go here
nix-tree
;
};
];
nix = {
package = lib.mkDefault pkgs.nix;

View File

@@ -43,9 +43,7 @@ in {
};
};
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
# FIXME(starter): add/edit as desired
# Packages that don't have custom configs go here
curl
@@ -56,8 +54,7 @@ in {
usbutils
unzip # zip extraction
unrar # rar extraction
;
};
];
nix = {
package = lib.mkDefault pkgs.nix;

View File

@@ -1,5 +0,0 @@
{pkgs, ...}: {
home.packages = with pkgs; [
aider-chat-full
];
}

View File

@@ -1,8 +1,5 @@
{pkgs, ...}: {
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
oterm
;
};
];
}

View File

@@ -1,7 +1,6 @@
# FIXME(starter): customize your bash preferences here
{
imports = [
./aider.nix
./atuin.nix
./autojump.nix
./bash.nix

View File

@@ -1,10 +1,7 @@
{pkgs, ...}: {
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
grc
;
};
];
programs.fish = {
enable = true;

View File

@@ -4,10 +4,7 @@
./zed.nix
];
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
hoppscotch
;
};
];
}

View File

@@ -0,0 +1,20 @@
{pkgs, ...}: {
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
"GitHub.copilot"
"GitHub.copilot-chat"
];
userSettings = {
# Enable Copilot Next Edit Suggestions
"github.copilot.nextEditSuggestions.enabled" = true;
# Other useful Copilot settings
"github.copilot.enable" = true;
"github.copilot.inlineSuggest.enable" = true;
"github.copilot.advanced" = {
"inlineSuggest.enableAutoTrigger" = true;
"inlineSuggest.showEditorCompletions" = true;
};
# Add more Copilot-specific settings as needed
};
};
}

View File

@@ -1,83 +1,79 @@
{pkgs, ...}: {
imports = [
./javascript.nix
./latex.nix
./markdown.nix
./nix.nix
./rust.nix
];
{
pkgs,
lib,
...
}: {
imports = lib.custom.scanPaths ./languages ++ [./completion/copilot.nix];
home.packages = with pkgs; [];
programs.vscode = {
enable = true;
package = pkgs.vscodium;
enableUpdateCheck = false; # Disable VSCode self-update and let Home Manager to manage VSCode versions instead.
enableExtensionUpdateCheck = false; # Disable extensions auto-update and let nix4vscode manage updates and extensions
package = pkgs.vscode;
enableUpdateCheck = false; # Let Home Manager manage VSCode versions
enableExtensionUpdateCheck = false; # Let nix4vscode manage extensions
mutableExtensionsDir = false;
# Extensions
extensions = pkgs.nix4vscode.forVscode [
# General extensions
## Code Completion
"continue.continue"
"rooveterinaryinc.roo-cline"
#"saoudrizwan.claude-dev"
## Development Environment
"ms-toolsai.jupyter"
"ms-vscode-remote.remote-containers"
## Error Checking
"usernamehw.errorlens"
## Export and Visualisation
"ibm.output-colorizer"
"nobuhito.printcode"
"pnp.polacode"
## Git
"lamartire.git-indicators"
"mhutchie.git-graph"
## Miscelaneous
# --- General ---
"britesnow.vscode-toggle-quotes"
"mrmlnc.vscode-duplicate"
"qcz.text-power-tools"
# Language extensions
## CSV
# --- Development ---
"ms-toolsai.jupyter"
"ms-vscode-remote.remote-containers"
# --- Error Checking ---
"usernamehw.errorlens"
# --- Output & Visualization ---
"ibm.output-colorizer"
"nobuhito.printcode"
"pnp.polacode"
# --- Git ---
"lamartire.git-indicators"
"mhutchie.git-graph"
# --- Languages ---
"mechatroner.rainbow-csv"
## Golang
"golang.go"
## Python
"ms-python.python"
## SVG
"jock.svg"
## YAML
"redhat.vscode-yaml"
];
# Settings
userSettings = {
# --- Privacy & Telemetry ---
"telemetry.feedback.enabled" = false;
"telemetry.telemetryLevel" = "off";
"github.copilot.enableTelemetry" = false;
"telemetry.telemetryLevel" = "off";
"telemetry.enableTelemetry" = false;
"telemetry.enableCrashReporter" = false;
"telemetry.disableFeedback" = true;
"workbench.enableExperiments" = false;
"workbench.settings.enableNaturalLanguageSearch" = false;
# --- Updates & Recommendations ---
"extensions.autoUpdate" = false;
"extensions.ignoreRecommendations" = true;
# --- UI ---
"editor.linkedEditing" = true;
"editor.inlineSuggest.enabled" = true;
"continue.enableTabAutocomplete" = true;
"window.menuBarVisibility" = "toggle";
"window.commandCenter" = false;
"window.titleBarStyle" = "native";
"workbench.navigationControl.enabled" = false;
"workbench.layoutControl.enabled" = false;
#"github.copilot.editor.enableAutoCompletions" = true;
# --- Extension-specific telemetry opt-outs ---
"code-runner.enableAppInsights" = false;
"docker-explorer.enableTelemetry" = false;
"gitlens.showWelcomeOnInstall" = false;
"gitlens.showWhatsNewAfterUpgrades" = false;
"java.help.showReleaseNotes" = false;
"julia.enableTelemetry" = false;
"Lua.telemetry.enable" = false;
"material-icon-theme.showWelcomeMessage" = false;
"pros.showWelcomeOnStartup" = false;
"redhat.telemetry.enabled" = false;
"sonarlint.disableTelemetry" = true;
"terraform.telemetry.enabled" = false;
"vsicons.dontShowNewVersionMessage" = true;
"workbench.welcomePage.walkthroughs.openOnInstall" = false;
};
};
}

View File

@@ -0,0 +1,16 @@
{pkgs, ...}: {
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
# CSV language support
"mechatroner.rainbow-csv"
];
userSettings = {
# Add CSV-specific settings here
};
};
# Additional packages for CSV development
home.packages = with pkgs; [
# Add CSV-related CLI tools here
];
}

View File

@@ -0,0 +1,16 @@
{pkgs, ...}: {
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
# Go language support
"golang.go"
];
userSettings = {
# Add Go-specific settings here
};
};
# Additional packages for Go development
home.packages = with pkgs; [
# Add Go-related CLI tools here
];
}

View File

@@ -47,6 +47,7 @@
};
};
# Additional packages for JavaScript development
home.packages = with pkgs; [
deno
pnpm

View File

@@ -25,4 +25,9 @@
];
};
};
# Additional packages for LaTeX development
home.packages = with pkgs; [
# Add LaTeX-related CLI tools here
];
}

View File

@@ -12,4 +12,9 @@
};
};
};
# Additional packages for Markdown development
home.packages = with pkgs; [
# Add Markdown-related CLI tools here
];
}

View File

@@ -1,12 +1,7 @@
{pkgs, ...}: {
home.packages = with pkgs; [
nil
alejandra
deadnix
];
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
# Nix language support
"jnoortheen.nix-ide"
"kamadorueda.alejandra"
];
@@ -15,4 +10,11 @@
"nix.serverPath" = "nil";
};
};
# Additional packages for Nix development
home.packages = with pkgs; [
nil
alejandra
deadnix
];
}

View File

@@ -0,0 +1,16 @@
{pkgs, ...}: {
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
# Python language support
"ms-python.python"
];
userSettings = {
# Add Python-specific settings here
};
};
# Additional packages for Python development
home.packages = with pkgs; [
# Add Python-related CLI tools here
];
}

View File

@@ -0,0 +1,19 @@
{pkgs, ...}: {
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
# Rust language support
"barbosshack.crates-io"
"tamasfe.even-better-toml"
"rust-lang.rust-analyzer"
];
userSettings = {
# Add Rust-specific settings here
};
};
# Additional packages for Rust development
home.packages = with pkgs; [
cargo
rustc
];
}

View File

@@ -0,0 +1,16 @@
{pkgs, ...}: {
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
# SVG language support
"jock.svg"
];
userSettings = {
# Add SVG-specific settings here
};
};
# Additional packages for SVG development
home.packages = with pkgs; [
# Add SVG-related CLI tools here
];
}

View File

@@ -0,0 +1,16 @@
{pkgs, ...}: {
programs.vscode = {
extensions = pkgs.nix4vscode.forVscode [
# YAML language support
"redhat.vscode-yaml"
];
userSettings = {
# Add YAML-specific settings here
};
};
# Additional packages for YAML development
home.packages = with pkgs; [
# Add YAML-related CLI tools here
];
}

View File

@@ -1,19 +0,0 @@
{pkgs, ...}: {
programs.vscode = {
extensions =
pkgs.nix4vscode.forVscode
[
# General
"serayuzgur.crates"
"tamasfe.even-better-toml"
"rust-lang.rust-analyzer"
];
userSettings = {
};
};
home.packages = with pkgs; [
cargo
rustc
];
}

View File

@@ -2,12 +2,9 @@
{pkgs, ...}: {
#imports = [ ./foo.nix ];
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
teams-for-linux
signal-desktop
discord
;
};
];
}

View File

@@ -1,11 +1,9 @@
# FIXME(starter): add/edit any optional, media related pkgs here
{ pkgs, ... }:
{
{pkgs, ...}: {
#imports = [ ./foo.nix ];
home.packages = builtins.attrValues {
inherit (pkgs)
home.packages = with pkgs; [
vlc
;
};
# ...other packages
];
}

View File

@@ -8,12 +8,9 @@
#imports = [ ./foo.nix ];
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
blender
inkscape
libreoffice-qt
;
};
];
}

View File

@@ -1,8 +1,5 @@
{pkgs, ...}: {
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
lmstudio
;
};
];
}

View File

@@ -1,8 +1,5 @@
{pkgs, ...}: {
home.packages = builtins.attrValues {
inherit
(pkgs)
home.packages = with pkgs; [
obsidian
;
};
];
}

View File

@@ -4,7 +4,7 @@
...
}: {
programs.ssh = lib.optionalAttrs pkgs.stdenv.isLinux {
startAgent = false;
startAgent = true;
enableAskPassword = true;
};
}

View File

@@ -1,7 +1,6 @@
# NOTE(starter): configure your audio needs as required.
{ pkgs, ... }:
{
hardware.pulseaudio.enable = false;
{pkgs, ...}: {
services.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
@@ -12,10 +11,8 @@
jack.enable = true;
};
environment.systemPackages = builtins.attrValues {
inherit (pkgs)
environment.systemPackages = with pkgs; [
playerctl # cli utility and lib for controlling media players
# pamixer # cli pulseaudio sound mixer
;
};
];
}

View File

@@ -1,6 +1,6 @@
# NOTE(starter): This is just a basic enabling of the XFCE windows manager for simplicity
{
services.displayManager = {
services.xserver.displayManager = {
gdm.enable = true;
gdm.wayland = true;
};

View File

@@ -1,5 +1,5 @@
{pkgs, ...}: {
services.desktopManager.gnome.enable = true;
services.xserver.desktopManager.gnome.enable = true;
#environment.sessionVariables.GTK_USE_PORTAL = "1";
environment.sessionVariables.NIXOS_OZONE_WL = "1";

View File

@@ -0,0 +1,5 @@
{config, ...}: {
services.tailscale = {
enable = true;
};
}

View File

@@ -1,5 +1,5 @@
{
services.thermald.enable = true;
services.thermald.enable = false;
services.tlp = {
enable = true;

View File

@@ -71,9 +71,10 @@
"hosts/common/optional/services/bluetooth.nix"
"hosts/common/optional/services/ollama.nix"
"hosts/common/optional/services/docker.nix"
"hosts/common/optional/services/tailscale.nix"
"hosts/common/optional/audio.nix" # pipewire and cli controls
"hosts/common/optional/gnome.nix"
"hosts/common/optional/gdm.nix"
"hosts/common/optional/kde.nix"
"hosts/common/optional/sddm.nix"
"hosts/common/optional/flatpak.nix"
"hosts/common/optional/thermal-management.nix"

View File

@@ -4,8 +4,7 @@
lib,
pkgs,
...
}:
{
}: {
imports = lib.flatten [
(map lib.custom.relativeToRoot [
"modules/common/host-spec.nix"
@@ -23,7 +22,7 @@
username = "user";
};
fileSystems."/boot".options = [ "umask=0077" ]; # Removes permissions and security warnings.
fileSystems."/boot".options = ["umask=0077"]; # Removes permissions and security warnings.
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.systemd-boot = {
enable = true;
@@ -44,14 +43,12 @@
"systemd.journald.forward_to_console=1"
];
environment.systemPackages = builtins.attrValues {
inherit (pkgs)
environment.systemPackages = with pkgs; [
wget
curl
rsync
git
;
};
];
networking = {
networkmanager.enable = true;
@@ -61,15 +58,15 @@
qemuGuest.enable = true;
openssh = {
enable = true;
ports = [ 22 ];
ports = [22];
settings.PermitRootLogin = "yes";
authorizedKeysFiles = lib.mkForce [ "/etc/ssh/authorized_keys.d/%u" ];
authorizedKeysFiles = lib.mkForce ["/etc/ssh/authorized_keys.d/%u"];
};
};
nix = {
# registry and nixPath shouldn't be required here because flakes but removal results in warning spam on build
registry = lib.mapAttrs (_: value: { flake = value; }) inputs;
registry = lib.mapAttrs (_: value: {flake = value;}) inputs;
nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry;
settings = {

View File

@@ -1,7 +1,11 @@
#
# This file defines overlays/custom modifications to upstream packages
#
{inputs, ...}: let
{
inputs,
lib,
...
}: let
# Adds my custom packages
additions = final: prev: (prev.lib.packagesFromDirectoryRecursive {
callPackage = prev.lib.callPackageWith final;
@@ -11,24 +15,19 @@
linuxModifications = final: prev: prev.lib.mkIf final.stdenv.isLinux {};
modifications = final: prev: {
# example = prev.example.overrideAttrs (oldAttrs: let ... in {
# ...
# });
# flameshot = prev.flameshot.overrideAttrs {
# cmakeFlags = [
# (prev.lib.cmakeBool "USE_WAYLAND_GRIM" true)
# (prev.lib.cmakeBool "USE_WAYLAND_CLIPBOARD" true)
# ];
# };
overlays = [
inputs.nix4vscode.overlays.forVscode
inputs.nix4vscode.overlays.default
(self: super: {
vscodium =
super.vscodium.overrideAttrs (oldAttrs: rec {
vscode = final.unstable.vscode;
vscodium = final.unstable.vscodium;
})
(self: super: {
vscodium = super.vscodium.overrideAttrs (oldAttrs: rec {
nativeBuildInputs = oldAttrs.nativeBuildInputs or [] ++ [self.makeWrapper];
postInstall =
oldAttrs.postInstall
or ""
(oldAttrs.postInstall or "")
+ ''
wrapProgram $out/bin/codium --set LD_LIBRARY_PATH "${self.stdenv.cc.cc.lib}/lib/"
'';

View File

@@ -18,9 +18,7 @@
BOOTSTRAP_SSH_PORT = "22";
BOOTSTRAP_SSH_KEY = "~/.ssh/id_manu";
nativeBuildInputs = builtins.attrValues {
inherit
(pkgs)
nativeBuildInputs = with pkgs; [
# NOTE(starter): add any packages you want available in the shell when accessing the parent directory.
# These will be installed regardless of what was installed specific for the host or home configs
nix
@@ -37,7 +35,6 @@
bats # for bash testing
age # for bootstrap script
ssh-to-age # for bootstrap script
;
};
];
};
}