jeirmeister
e4b85e086f
Major structural changes: - Create modular program organization by category (development, gaming, shell, etc.) - Consolidate Python environment configurations using python311 - Introduce comprehensive shell configuration hierarchy - Move utility programs into appropriate categories Details: - Migrate to consistent Python 3.11 usage across all Python tools - Add structured environment management for multiple languages (Python, Rust, Go, JavaScript) - Organize shell utilities into logical categories (security, network, files, etc.) - Consolidate development tools and editor configurations - Move VR configuration to gaming category - Group productivity apps (Bitwarden, Obsidian, Todoist) This restructuring aims to make the configuration more maintainable and easier to extend in preparation for future flake migration.
14 lines
3.5 KiB
JSON
14 lines
3.5 KiB
JSON
{
|
|
"users/jeirmeister/programs/development/env/languages/python/default.nix": "{ config, pkgs, ... }:\n\n{\n imports = [\n ./pipenv.nix\n ./poetry.nix\n ./pyenv.nix\n ];\n\n # Base Python installation\n home.packages = with pkgs; [\n python311\n python311Packages.pip\n python311Packages.setuptools\n python311Packages.wheel\n ];\n\n # Common Python environment variables\n home.sessionVariables = {\n PYTHONDONTWRITEBYTECODE = 1;\n PYTHONIOENCODING = \"UTF-8\";\n PYTHONUSERBASE = \"$HOME/.local/python\";\n PATH = \"$PYTHONUSERBASE/bin:$PATH\";\n };\n\n # Create Python user directory\n home.file.\".local/python/.keep\".text = \"\";\n}",
|
|
|
|
"users/jeirmeister/programs/development/env/languages/python/pipenv.nix": "{ config, pkgs, ... }:\n\n{\n home.packages = with pkgs; [\n python311Packages.pipenv\n ];\n\n home.sessionVariables = {\n PIPENV_VENV_IN_PROJECT = \"1\";\n WORKON_HOME = \"$HOME/.local/share/virtualenvs\";\n PIP_NO_CACHE_DIR = \"off\";\n PIPENV_SKIP_LOCK = \"1\";\n PIPENV_IGNORE_VIRTUALENVS = \"1\";\n PIPENV_MAX_DEPTH = \"5\";\n };\n\n home.file.\".local/share/virtualenvs/.keep\".text = \"\";\n}",
|
|
|
|
"users/jeirmeister/programs/development/env/languages/python/poetry.nix": "{ config, pkgs, ... }:\n\n{\n home.packages = with pkgs; [\n python311Packages.poetry\n ];\n\n home.sessionVariables = {\n POETRY_VIRTUALENVS_IN_PROJECT = \"true\";\n POETRY_CACHE_DIR = \"$HOME/.cache/pypoetry\";\n POETRY_IGNORE_ENVIRONMENT_VARIABLES = \"1\";\n };\n\n home.file.\".config/pypoetry/config.toml\".text = ''\n [virtualenvs]\n in-project = true\n path = \"{cache-dir}/virtualenvs\"\n create = true\n clear = false\n \n [repositories]\n '';\n}",
|
|
|
|
"users/jeirmeister/programs/development/env/languages/python/pyenv.nix": "{ config, pkgs, ... }:\n\n{\n home.packages = with pkgs; [\n pyenv\n ];\n\n home.sessionVariables = {\n PYENV_ROOT = \"$HOME/.pyenv\";\n PATH = \"$PYENV_ROOT/bin:$PATH\";\n PYENV_SHELL = \"zsh\";\n PYENV_VIRTUALENV_INIT = \"1\";\n };\n\n home.file.\".pyenv/version\".text = \"system\";\n \n programs.zsh.initExtra = ''\n eval \"$(pyenv init --path)\"\n eval \"$(pyenv virtualenv-init -)\"\n '';\n}",
|
|
|
|
"users/jeirmeister/programs/development/tools.nix": "{ config, pkgs, ... }:\n\n{\n home.packages = with pkgs; [\n git\n gh\n gnumake\n gcc\n cmake\n # Python development tools\n python311Packages.black\n python311Packages.pylint\n python311Packages.mypy\n python311Packages.pytest\n python311Packages.pytest-cov\n ];\n}",
|
|
|
|
"users/jeirmeister/packages/repo-to-text.nix": "{ lib\n, python311Packages\n, fetchPypi\n, tree\n}:\n\npython311Packages.buildPythonPackage rec {\n pname = \"repo_to_text\";\n version = \"0.4.2\";\n format = \"setuptools\";\n\n src = fetchPypi {\n pname = \"repo_to_text\";\n inherit version;\n sha256 = \"d2oydJFP6PNUyPVZlrOtCkyMrFZyc1fkGRa/ZnqsCkQ=\";\n };\n\n propagatedBuildInputs = with python311Packages; [\n pyyaml\n pyperclip\n pathspec\n ];\n\n buildInputs = [\n tree\n ];\n\n pythonImportsCheck = [ \"repo_to_text\" ];\n\n meta = with lib; {\n description = \"Convert directory/repository structure and contents into a single text file\";\n homepage = \"https://github.com/kirill-markin/repo-to-text\";\n license = licenses.mit;\n maintainers = [];\n };\n\n postInstall = ''\n mv $out/bin/repo_to_text $out/bin/repo-to-text || true\n '';\n}"
|
|
}
|