mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-03-01 22:59:23 +00:00
Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 070c94a244 | |||
| 70cf8ccf6d | |||
| 63faf4c4bf | |||
|
|
d81ff6dabb | ||
| ed6bef5c7e | |||
| 46b9e3ebeb | |||
| f26303a0ff | |||
| 8379135c81 | |||
| 73d0d6b35f | |||
| 6a839eea56 | |||
| 28c8332058 | |||
| b956119b98 | |||
|
|
0f82f8e65b | ||
|
|
f1277ddf99 | ||
|
|
c834eab42b | ||
|
|
f93deb8bca | ||
|
|
248f57b914 | ||
|
|
86e4f9618c | ||
|
|
7eb97392fb | ||
|
|
8be1a9e7e2 |
@@ -18,6 +18,10 @@
|
|||||||
{
|
{
|
||||||
"type": "command",
|
"type": "command",
|
||||||
"command": "fp=$(cat | jq -r '.tool_input.file_path // empty') && [ -n \"$fp\" ] && [ -f \"$fp\" ] && case \"$fp\" in *.sh|*/bin/*) head -1 \"$fp\" | grep -qE '^#!.*(ba)?sh' && command -v shfmt > /dev/null && shfmt -i 2 -bn -ci -sr -fn -w \"$fp\";; esac; exit 0"
|
"command": "fp=$(cat | jq -r '.tool_input.file_path // empty') && [ -n \"$fp\" ] && [ -f \"$fp\" ] && case \"$fp\" in *.sh|*/bin/*) head -1 \"$fp\" | grep -qE '^#!.*(ba)?sh' && command -v shfmt > /dev/null && shfmt -i 2 -bn -ci -sr -fn -w \"$fp\";; esac; exit 0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "command",
|
||||||
|
"command": "fp=$(cat | jq -r '.tool_input.file_path // empty') && [ -n \"$fp\" ] && [ -f \"$fp\" ] && case \"$fp\" in *.fish) command -v fish_indent > /dev/null && fish_indent -w \"$fp\";; esac; exit 0"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
38
.claude/skills/fish-validate/SKILL.md
Normal file
38
.claude/skills/fish-validate/SKILL.md
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
---
|
||||||
|
name: fish-validate
|
||||||
|
description: >-
|
||||||
|
Validate fish scripts after editing.
|
||||||
|
Apply when writing or modifying any .fish file
|
||||||
|
in config/fish/.
|
||||||
|
user-invocable: false
|
||||||
|
allowed-tools: Bash, Read
|
||||||
|
---
|
||||||
|
|
||||||
|
After editing any `.fish` file in `config/fish/`, validate it:
|
||||||
|
|
||||||
|
## 1. Syntax check
|
||||||
|
|
||||||
|
```bash
|
||||||
|
fish --no-execute <file>
|
||||||
|
```
|
||||||
|
|
||||||
|
If syntax check fails, fix the issue before proceeding.
|
||||||
|
|
||||||
|
## 2. Format check
|
||||||
|
|
||||||
|
Run `fish_indent` to verify formatting:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
fish_indent --check <file>
|
||||||
|
```
|
||||||
|
|
||||||
|
If formatting differs, apply it:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
fish_indent -w <file>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Key files to never validate
|
||||||
|
|
||||||
|
- Files inside `config/fish/functions/` prefixed with `_tide_`
|
||||||
|
(managed by the tide prompt plugin)
|
||||||
22
.claude/skills/lua-format/SKILL.md
Normal file
22
.claude/skills/lua-format/SKILL.md
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
---
|
||||||
|
name: lua-format
|
||||||
|
description: >-
|
||||||
|
Format Lua files after editing.
|
||||||
|
Apply when writing or modifying any .lua file.
|
||||||
|
user-invocable: false
|
||||||
|
allowed-tools: Bash
|
||||||
|
---
|
||||||
|
|
||||||
|
After editing any `.lua` file, format it with stylua:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
stylua <file>
|
||||||
|
```
|
||||||
|
|
||||||
|
Project settings are in `stylua.toml` (90-char line length).
|
||||||
|
|
||||||
|
If stylua is not available, skip formatting silently.
|
||||||
|
|
||||||
|
## Files to never format
|
||||||
|
|
||||||
|
- Files inside `config/nvim/` managed by plugins (lazy.nvim lockfile)
|
||||||
@@ -1,11 +1,16 @@
|
|||||||
---
|
---
|
||||||
name: shell-validate
|
name: shell-validate
|
||||||
description: Validate shell scripts after editing. Apply when writing or modifying any shell script in local/bin/ or scripts/.
|
description: >-
|
||||||
|
Validate shell scripts after editing.
|
||||||
|
Apply when writing or modifying any shell script
|
||||||
|
in local/bin/ or scripts/.
|
||||||
user-invocable: false
|
user-invocable: false
|
||||||
allowed-tools: Bash, Read, Grep
|
allowed-tools: Bash, Read, Grep
|
||||||
---
|
---
|
||||||
|
|
||||||
After editing any shell script in `local/bin/`, `scripts/`, or `config/` (files with a `#!` shebang or `# shellcheck shell=` directive), validate it:
|
After editing any shell script in `local/bin/`, `scripts/`, or `config/`
|
||||||
|
(files with a `#!` shebang or `# shellcheck shell=` directive),
|
||||||
|
validate it:
|
||||||
|
|
||||||
## 1. Determine the shell
|
## 1. Determine the shell
|
||||||
|
|
||||||
@@ -28,7 +33,9 @@ If syntax check fails, fix the issue before proceeding.
|
|||||||
|
|
||||||
## 3. ShellCheck
|
## 3. ShellCheck
|
||||||
|
|
||||||
Run `shellcheck <file>`. The project `.shellcheckrc` already disables SC2039, SC2166, SC2154, SC1091, SC2174, SC2016. Only report and fix warnings that are NOT in that exclude list.
|
Run `shellcheck <file>`. The project `.shellcheckrc` already
|
||||||
|
disables SC2039, SC2166, SC2154, SC1091, SC2174, SC2016.
|
||||||
|
Only report and fix warnings that are NOT in that exclude list.
|
||||||
|
|
||||||
## Key files to never validate (not shell scripts)
|
## Key files to never validate (not shell scripts)
|
||||||
|
|
||||||
|
|||||||
2
.github/workflows/linters.yml
vendored
2
.github/workflows/linters.yml
vendored
@@ -36,4 +36,4 @@ jobs:
|
|||||||
token: ${{ secrets.GITHUB_TOKEN }}
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
- name: Run PR Lint
|
- name: Run PR Lint
|
||||||
uses: ivuorinen/actions/pr-lint@c40f80e9c569f700ce5275766dcfeba99c168899 # v2026.02.10
|
uses: ivuorinen/actions/pr-lint@8faacf8a1cae049c1471708dcb408a167e91afaf # v2026.02.24
|
||||||
|
|||||||
2
.github/workflows/sync-labels.yml
vendored
2
.github/workflows/sync-labels.yml
vendored
@@ -30,4 +30,4 @@ jobs:
|
|||||||
issues: write
|
issues: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: ivuorinen/actions/sync-labels@c40f80e9c569f700ce5275766dcfeba99c168899 # v2026.02.10
|
- uses: ivuorinen/actions/sync-labels@8faacf8a1cae049c1471708dcb408a167e91afaf # v2026.02.24
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ repos:
|
|||||||
args: [-i, "2", -bn, -ci, -sr, -fn, -w]
|
args: [-i, "2", -bn, -ci, -sr, -fn, -w]
|
||||||
|
|
||||||
- repo: https://github.com/rhysd/actionlint
|
- repo: https://github.com/rhysd/actionlint
|
||||||
rev: v1.7.10
|
rev: v1.7.11
|
||||||
hooks:
|
hooks:
|
||||||
- id: actionlint
|
- id: actionlint
|
||||||
|
|
||||||
@@ -76,7 +76,7 @@ repos:
|
|||||||
- id: fish_indent
|
- id: fish_indent
|
||||||
|
|
||||||
- repo: https://github.com/astral-sh/ruff-pre-commit
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
||||||
rev: v0.15.1
|
rev: v0.15.4
|
||||||
hooks:
|
hooks:
|
||||||
- id: ruff-check
|
- id: ruff-check
|
||||||
args: [--fix]
|
args: [--fix]
|
||||||
|
|||||||
@@ -16,3 +16,4 @@ local/bin/antigen.zsh
|
|||||||
local/bin/asdf
|
local/bin/asdf
|
||||||
tools
|
tools
|
||||||
docs/plans
|
docs/plans
|
||||||
|
config/gh/hosts.yml
|
||||||
|
|||||||
@@ -50,6 +50,9 @@ yarn test # Run all tests in tests/
|
|||||||
|
|
||||||
# Shell linting
|
# Shell linting
|
||||||
shellcheck <script> # Lint shell scripts
|
shellcheck <script> # Lint shell scripts
|
||||||
|
|
||||||
|
# Tooling maintenance
|
||||||
|
yarn biome migrate --write # Update biome schema version
|
||||||
```
|
```
|
||||||
|
|
||||||
## Pre-commit Hooks
|
## Pre-commit Hooks
|
||||||
@@ -140,7 +143,9 @@ SC2174 (mkdir -p -m), SC2016 (single-quote expressions).
|
|||||||
- **Vendor file**: `local/bin/fzf-tmux` is vendored from
|
- **Vendor file**: `local/bin/fzf-tmux` is vendored from
|
||||||
junegunn/fzf — do not modify.
|
junegunn/fzf — do not modify.
|
||||||
- **Fish config**: `config/fish/` has its own config chain
|
- **Fish config**: `config/fish/` has its own config chain
|
||||||
(`config.fish`, `exports.fish`, `alias.fish`) plus 80+ functions.
|
(`config.fish`, `exports.fish`, `alias.fish`) plus 60+ functions.
|
||||||
|
- **gh CLI config**: `config/gh/hosts.yml` is managed by `gh` CLI
|
||||||
|
and excluded from prettier (see `.prettierignore`).
|
||||||
- **Python**: Two scripts (`x-compare-versions.py`,
|
- **Python**: Two scripts (`x-compare-versions.py`,
|
||||||
`x-git-largest-files.py`) linted by Ruff (config in `pyproject.toml`).
|
`x-git-largest-files.py`) linted by Ruff (config in `pyproject.toml`).
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://biomejs.dev/schemas/2.3.11/schema.json",
|
"$schema": "https://biomejs.dev/schemas/2.4.4/schema.json",
|
||||||
"vcs": {
|
"vcs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"clientKind": "git",
|
"clientKind": "git",
|
||||||
|
|||||||
@@ -2,21 +2,21 @@
|
|||||||
# Place in ~/.config/fish/completions/phpenv.fish
|
# Place in ~/.config/fish/completions/phpenv.fish
|
||||||
|
|
||||||
# Complete main commands
|
# Complete main commands
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "install" -d "Install a PHP version"
|
complete -c phpenv -f -n __fish_use_subcommand -a install -d "Install a PHP version"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "uninstall" -d "Uninstall a PHP version"
|
complete -c phpenv -f -n __fish_use_subcommand -a uninstall -d "Uninstall a PHP version"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "use" -d "Use PHP version for current shell"
|
complete -c phpenv -f -n __fish_use_subcommand -a use -d "Use PHP version for current shell"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "local" -d "Set PHP version for current project"
|
complete -c phpenv -f -n __fish_use_subcommand -a local -d "Set PHP version for current project"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "global" -d "Set global PHP version"
|
complete -c phpenv -f -n __fish_use_subcommand -a global -d "Set global PHP version"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "list" -d "List installed PHP versions"
|
complete -c phpenv -f -n __fish_use_subcommand -a list -d "List installed PHP versions"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "ls" -d "List installed PHP versions"
|
complete -c phpenv -f -n __fish_use_subcommand -a ls -d "List installed PHP versions"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "current" -d "Show current PHP version"
|
complete -c phpenv -f -n __fish_use_subcommand -a current -d "Show current PHP version"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "which" -d "Show path to PHP binary"
|
complete -c phpenv -f -n __fish_use_subcommand -a which -d "Show path to PHP binary"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "versions" -d "Show all available versions"
|
complete -c phpenv -f -n __fish_use_subcommand -a versions -d "Show all available versions"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "doctor" -d "Check phpenv installation"
|
complete -c phpenv -f -n __fish_use_subcommand -a doctor -d "Check phpenv installation"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "config" -d "Manage configuration"
|
complete -c phpenv -f -n __fish_use_subcommand -a config -d "Manage configuration"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "extensions" -d "Manage PHP extensions"
|
complete -c phpenv -f -n __fish_use_subcommand -a extensions -d "Manage PHP extensions"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "ext" -d "Manage PHP extensions"
|
complete -c phpenv -f -n __fish_use_subcommand -a ext -d "Manage PHP extensions"
|
||||||
complete -c phpenv -f -n "__fish_use_subcommand" -a "help" -d "Show help"
|
complete -c phpenv -f -n __fish_use_subcommand -a help -d "Show help"
|
||||||
|
|
||||||
# Helper functions for completions
|
# Helper functions for completions
|
||||||
function __phpenv_complete_installed_versions
|
function __phpenv_complete_installed_versions
|
||||||
@@ -26,13 +26,13 @@ end
|
|||||||
function __phpenv_complete_available_versions
|
function __phpenv_complete_available_versions
|
||||||
# Try to get dynamic versions first
|
# Try to get dynamic versions first
|
||||||
if command -q curl -a command -q jq; and functions -q __phpenv_parse_version_field
|
if command -q curl -a command -q jq; and functions -q __phpenv_parse_version_field
|
||||||
echo "latest"
|
echo latest
|
||||||
echo "nightly"
|
echo nightly
|
||||||
echo "5.x"
|
echo "5.x"
|
||||||
echo "7.x"
|
echo "7.x"
|
||||||
echo "8.x"
|
echo "8.x"
|
||||||
__phpenv_parse_version_field "latest" "8.4"
|
__phpenv_parse_version_field latest "8.4"
|
||||||
__phpenv_parse_version_field "nightly" "8.5"
|
__phpenv_parse_version_field nightly "8.5"
|
||||||
__phpenv_parse_version_field "5.x" "5.6"
|
__phpenv_parse_version_field "5.x" "5.6"
|
||||||
__phpenv_parse_version_field "7.x" "7.4"
|
__phpenv_parse_version_field "7.x" "7.4"
|
||||||
__phpenv_parse_version_field "8.x" "8.4"
|
__phpenv_parse_version_field "8.x" "8.4"
|
||||||
@@ -64,18 +64,18 @@ complete -c phpenv -f -n "__fish_seen_subcommand_from uninstall use local global
|
|||||||
-a "(__phpenv_complete_installed_versions)" -d "Installed PHP version"
|
-a "(__phpenv_complete_installed_versions)" -d "Installed PHP version"
|
||||||
|
|
||||||
# Add system option for use command
|
# Add system option for use command
|
||||||
complete -c phpenv -f -n "__fish_seen_subcommand_from use" -a "system" -d "Use system PHP"
|
complete -c phpenv -f -n "__fish_seen_subcommand_from use" -a system -d "Use system PHP"
|
||||||
|
|
||||||
# Complete binaries for which command
|
# Complete binaries for which command
|
||||||
complete -c phpenv -f -n "__fish_seen_subcommand_from which" -a "(__phpenv_complete_binaries)" -d "PHP binary"
|
complete -c phpenv -f -n "__fish_seen_subcommand_from which" -a "(__phpenv_complete_binaries)" -d "PHP binary"
|
||||||
|
|
||||||
# Complete config subcommands
|
# Complete config subcommands
|
||||||
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and not __fish_seen_subcommand_from get set list" \
|
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and not __fish_seen_subcommand_from get set list" \
|
||||||
-a "get" -d "Get configuration value"
|
-a get -d "Get configuration value"
|
||||||
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and not __fish_seen_subcommand_from get set list" \
|
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and not __fish_seen_subcommand_from get set list" \
|
||||||
-a "set" -d "Set configuration value"
|
-a set -d "Set configuration value"
|
||||||
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and not __fish_seen_subcommand_from get set list" \
|
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and not __fish_seen_subcommand_from get set list" \
|
||||||
-a "list" -d "List all configuration"
|
-a list -d "List all configuration"
|
||||||
|
|
||||||
# Complete config keys
|
# Complete config keys
|
||||||
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and __fish_seen_subcommand_from get set" \
|
complete -c phpenv -f -n "__fish_seen_subcommand_from config; and __fish_seen_subcommand_from get set" \
|
||||||
@@ -91,27 +91,27 @@ complete -c phpenv -f \
|
|||||||
complete -c phpenv -f \
|
complete -c phpenv -f \
|
||||||
-n "__fish_seen_subcommand_from extensions ext" \
|
-n "__fish_seen_subcommand_from extensions ext" \
|
||||||
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
||||||
-a "install" -d "Install PHP extension"
|
-a install -d "Install PHP extension"
|
||||||
complete -c phpenv -f \
|
complete -c phpenv -f \
|
||||||
-n "__fish_seen_subcommand_from extensions ext" \
|
-n "__fish_seen_subcommand_from extensions ext" \
|
||||||
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
||||||
-a "uninstall" -d "Uninstall PHP extension"
|
-a uninstall -d "Uninstall PHP extension"
|
||||||
complete -c phpenv -f \
|
complete -c phpenv -f \
|
||||||
-n "__fish_seen_subcommand_from extensions ext" \
|
-n "__fish_seen_subcommand_from extensions ext" \
|
||||||
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
||||||
-a "remove" -d "Remove PHP extension"
|
-a remove -d "Remove PHP extension"
|
||||||
complete -c phpenv -f \
|
complete -c phpenv -f \
|
||||||
-n "__fish_seen_subcommand_from extensions ext" \
|
-n "__fish_seen_subcommand_from extensions ext" \
|
||||||
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
||||||
-a "list" -d "List installed extensions"
|
-a list -d "List installed extensions"
|
||||||
complete -c phpenv -f \
|
complete -c phpenv -f \
|
||||||
-n "__fish_seen_subcommand_from extensions ext" \
|
-n "__fish_seen_subcommand_from extensions ext" \
|
||||||
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
||||||
-a "ls" -d "List installed extensions"
|
-a ls -d "List installed extensions"
|
||||||
complete -c phpenv -f \
|
complete -c phpenv -f \
|
||||||
-n "__fish_seen_subcommand_from extensions ext" \
|
-n "__fish_seen_subcommand_from extensions ext" \
|
||||||
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
-n "not __fish_seen_subcommand_from install uninstall remove list ls available" \
|
||||||
-a "available" -d "Show available extensions"
|
-a available -d "Show available extensions"
|
||||||
|
|
||||||
# Complete extension names
|
# Complete extension names
|
||||||
complete -c phpenv -f \
|
complete -c phpenv -f \
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ if not set -q PHPENV_AUTO_SWITCH
|
|||||||
end
|
end
|
||||||
|
|
||||||
if not set -q PHPENV_DEFAULT_EXTENSIONS
|
if not set -q PHPENV_DEFAULT_EXTENSIONS
|
||||||
set -g PHPENV_DEFAULT_EXTENSIONS "opcache"
|
set -g PHPENV_DEFAULT_EXTENSIONS opcache
|
||||||
end
|
end
|
||||||
|
|
||||||
# Initialize PATH on shell startup if global version is set (less aggressive)
|
# Initialize PATH on shell startup if global version is set (less aggressive)
|
||||||
|
|||||||
1
config/fish/conf.d/rustup.fish
Normal file
1
config/fish/conf.d/rustup.fish
Normal file
@@ -0,0 +1 @@
|
|||||||
|
source "/home/ivuorinen/.local/share/cargo/env.fish"
|
||||||
@@ -21,6 +21,7 @@ if status is-interactive
|
|||||||
source "$HOME/.config/op/plugins.sh"
|
source "$HOME/.config/op/plugins.sh"
|
||||||
|
|
||||||
# version manager initializers
|
# version manager initializers
|
||||||
|
type -q mise; and source (mise activate fish|psub)
|
||||||
type -q rbenv; and source (rbenv init -|psub)
|
type -q rbenv; and source (rbenv init -|psub)
|
||||||
type -q pyenv; and source (pyenv init -|psub)
|
type -q pyenv; and source (pyenv init -|psub)
|
||||||
type -q pyenv; and source (pyenv virtualenv-init -|psub)
|
type -q pyenv; and source (pyenv virtualenv-init -|psub)
|
||||||
|
|||||||
@@ -17,6 +17,9 @@ set -q HOSTNAME; or set -x HOSTNAME (hostname -s)
|
|||||||
# Add local bin to path
|
# Add local bin to path
|
||||||
fish_add_path "$XDG_BIN_HOME"
|
fish_add_path "$XDG_BIN_HOME"
|
||||||
|
|
||||||
|
# Add mise shims to path
|
||||||
|
fish_add_path "$XDG_DATA_HOME/mise/shims"
|
||||||
|
|
||||||
# Add cargo bin to path
|
# Add cargo bin to path
|
||||||
fish_add_path "$XDG_SHARE_HOME/cargo/bin"
|
fish_add_path "$XDG_SHARE_HOME/cargo/bin"
|
||||||
|
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ end
|
|||||||
|
|
||||||
function __phpenv_find_version_file -a phpenv_filename
|
function __phpenv_find_version_file -a phpenv_filename
|
||||||
set -l phpenv_dir (pwd)
|
set -l phpenv_dir (pwd)
|
||||||
while test "$phpenv_dir" != "/"
|
while test "$phpenv_dir" != /
|
||||||
if test -f "$phpenv_dir/$phpenv_filename"
|
if test -f "$phpenv_dir/$phpenv_filename"
|
||||||
echo "$phpenv_dir/$phpenv_filename"
|
echo "$phpenv_dir/$phpenv_filename"
|
||||||
return
|
return
|
||||||
@@ -130,13 +130,13 @@ function __phpenv_parse_composer_version
|
|||||||
end
|
end
|
||||||
|
|
||||||
set -l phpenv_platform_php (jq -r '.config.platform.php // empty' composer.json 2>/dev/null)
|
set -l phpenv_platform_php (jq -r '.config.platform.php // empty' composer.json 2>/dev/null)
|
||||||
if test $status -eq 0 -a -n "$phpenv_platform_php" -a "$phpenv_platform_php" != "null"
|
if test $status -eq 0 -a -n "$phpenv_platform_php" -a "$phpenv_platform_php" != null
|
||||||
echo $phpenv_platform_php
|
echo $phpenv_platform_php
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
set -l phpenv_require_php (jq -r '.require.php // empty' composer.json 2>/dev/null)
|
set -l phpenv_require_php (jq -r '.require.php // empty' composer.json 2>/dev/null)
|
||||||
if test $status -eq 0 -a -n "$phpenv_require_php" -a "$phpenv_require_php" != "null"
|
if test $status -eq 0 -a -n "$phpenv_require_php" -a "$phpenv_require_php" != null
|
||||||
__phpenv_parse_semver_constraint $phpenv_require_php
|
__phpenv_parse_semver_constraint $phpenv_require_php
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
@@ -196,7 +196,7 @@ set -g __phpenv_version_cache_time 0
|
|||||||
|
|
||||||
function __phpenv_get_version_info
|
function __phpenv_get_version_info
|
||||||
set -l current_time (date +%s)
|
set -l current_time (date +%s)
|
||||||
set -l cache_duration 300 # 5 minutes
|
set -l cache_duration 300 # 5 minutes
|
||||||
|
|
||||||
# Return cached version if still valid
|
# Return cached version if still valid
|
||||||
if test -n "$__phpenv_version_cache"
|
if test -n "$__phpenv_version_cache"
|
||||||
@@ -236,12 +236,12 @@ end
|
|||||||
# Check if Ondřej PPA is configured on the system
|
# Check if Ondřej PPA is configured on the system
|
||||||
function __phpenv_has_ondrej_ppa
|
function __phpenv_has_ondrej_ppa
|
||||||
if test -d /etc/apt/sources.list.d
|
if test -d /etc/apt/sources.list.d
|
||||||
if grep -rq "ondrej/php" /etc/apt/sources.list.d/ 2>/dev/null
|
if grep -rq ondrej/php /etc/apt/sources.list.d/ 2>/dev/null
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if test -f /etc/apt/sources.list
|
if test -f /etc/apt/sources.list
|
||||||
if grep -q "ondrej/php" /etc/apt/sources.list 2>/dev/null
|
if grep -q ondrej/php /etc/apt/sources.list 2>/dev/null
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -262,34 +262,34 @@ function __phpenv_get_provider
|
|||||||
end
|
end
|
||||||
|
|
||||||
# macOS always uses Homebrew
|
# macOS always uses Homebrew
|
||||||
if test (uname -s) = "Darwin"
|
if test (uname -s) = Darwin
|
||||||
echo "homebrew"
|
echo homebrew
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
# Linux: check for apt with Ondřej PPA first
|
# Linux: check for apt with Ondřej PPA first
|
||||||
if test (uname -s) = "Linux"
|
if test (uname -s) = Linux
|
||||||
if command -q apt-get; and __phpenv_has_ondrej_ppa
|
if command -q apt-get; and __phpenv_has_ondrej_ppa
|
||||||
echo "apt"
|
echo apt
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
# Fall back to Homebrew (Linuxbrew) if available
|
# Fall back to Homebrew (Linuxbrew) if available
|
||||||
if command -q brew
|
if command -q brew
|
||||||
echo "homebrew"
|
echo homebrew
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
# If apt is available but no PPA yet, still use apt provider
|
# If apt is available but no PPA yet, still use apt provider
|
||||||
# (it will prompt to add the PPA when needed)
|
# (it will prompt to add the PPA when needed)
|
||||||
if command -q apt-get
|
if command -q apt-get
|
||||||
echo "apt"
|
echo apt
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# Default fallback
|
# Default fallback
|
||||||
echo "homebrew"
|
echo homebrew
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -319,7 +319,7 @@ function __phpenv_provider_homebrew_ensure_source
|
|||||||
end
|
end
|
||||||
|
|
||||||
# Check and add required taps only if missing
|
# Check and add required taps only if missing
|
||||||
set -l required_taps "shivammathur/php" "shivammathur/extensions"
|
set -l required_taps shivammathur/php shivammathur/extensions
|
||||||
for tap in $required_taps
|
for tap in $required_taps
|
||||||
if not brew tap | grep -qx $tap 2>/dev/null
|
if not brew tap | grep -qx $tap 2>/dev/null
|
||||||
if not brew tap $tap 2>/dev/null
|
if not brew tap $tap 2>/dev/null
|
||||||
@@ -343,7 +343,7 @@ function __phpenv_provider_homebrew_list_installed
|
|||||||
continue
|
continue
|
||||||
end
|
end
|
||||||
|
|
||||||
if test "$phpenv_basename" = "php"
|
if test "$phpenv_basename" = php
|
||||||
set -l phpenv_latest (__phpenv_parse_version_field "latest" "8.4")
|
set -l phpenv_latest (__phpenv_parse_version_field "latest" "8.4")
|
||||||
set -a phpenv_versions $phpenv_latest
|
set -a phpenv_versions $phpenv_latest
|
||||||
else if echo $phpenv_basename | grep -qE '^php@[0-9]+\.[0-9]+$'
|
else if echo $phpenv_basename | grep -qE '^php@[0-9]+\.[0-9]+$'
|
||||||
@@ -375,7 +375,7 @@ function __phpenv_provider_homebrew_list_available
|
|||||||
continue
|
continue
|
||||||
end
|
end
|
||||||
|
|
||||||
if test "$phpenv_clean_name" = "php"
|
if test "$phpenv_clean_name" = php
|
||||||
set -a phpenv_versions "$phpenv_latest_version (latest)"
|
set -a phpenv_versions "$phpenv_latest_version (latest)"
|
||||||
else if echo $phpenv_clean_name | grep -qE '^php@[0-9]+\.[0-9]+$'
|
else if echo $phpenv_clean_name | grep -qE '^php@[0-9]+\.[0-9]+$'
|
||||||
set -l phpenv_version (echo $phpenv_clean_name | sed 's/php@//')
|
set -l phpenv_version (echo $phpenv_clean_name | sed 's/php@//')
|
||||||
@@ -502,7 +502,7 @@ function __phpenv_provider_homebrew_ext_list -a phpenv_version
|
|||||||
for phpenv_ext_dir in $phpenv_cellar_path/*@$phpenv_version
|
for phpenv_ext_dir in $phpenv_cellar_path/*@$phpenv_version
|
||||||
if test -d $phpenv_ext_dir
|
if test -d $phpenv_ext_dir
|
||||||
set -l phpenv_ext_name (basename $phpenv_ext_dir | sed "s/@$phpenv_version//")
|
set -l phpenv_ext_name (basename $phpenv_ext_dir | sed "s/@$phpenv_version//")
|
||||||
if test "$phpenv_ext_name" != "php"
|
if test "$phpenv_ext_name" != php
|
||||||
echo $phpenv_ext_name
|
echo $phpenv_ext_name
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -574,7 +574,7 @@ function __phpenv_provider_apt_ensure_source
|
|||||||
echo ""
|
echo ""
|
||||||
read -P "Add ppa:ondrej/php? [y/N] " -l confirm
|
read -P "Add ppa:ondrej/php? [y/N] " -l confirm
|
||||||
|
|
||||||
if test "$confirm" = "y" -o "$confirm" = "Y"
|
if test "$confirm" = y -o "$confirm" = Y
|
||||||
echo "Adding ppa:ondrej/php..."
|
echo "Adding ppa:ondrej/php..."
|
||||||
if command -q add-apt-repository
|
if command -q add-apt-repository
|
||||||
if sudo add-apt-repository -y ppa:ondrej/php
|
if sudo add-apt-repository -y ppa:ondrej/php
|
||||||
@@ -603,8 +603,7 @@ function __phpenv_provider_apt_list_installed
|
|||||||
return 1
|
return 1
|
||||||
end
|
end
|
||||||
|
|
||||||
dpkg -l 'php[0-9]*-cli' 2>/dev/null | grep '^ii' | \
|
dpkg -l 'php[0-9]*-cli' 2>/dev/null | grep '^ii' | sed -E 's/^ii\s+php([0-9]+\.[0-9]+)-cli.*/\1/' | sort -V | uniq
|
||||||
sed -E 's/^ii\s+php([0-9]+\.[0-9]+)-cli.*/\1/' | sort -V | uniq
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function __phpenv_provider_apt_list_available
|
function __phpenv_provider_apt_list_available
|
||||||
@@ -613,8 +612,7 @@ function __phpenv_provider_apt_list_available
|
|||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
apt-cache search '^php[0-9]+\.[0-9]+-cli$' 2>/dev/null | \
|
apt-cache search '^php[0-9]+\.[0-9]+-cli$' 2>/dev/null | sed -E 's/^php([0-9]+\.[0-9]+)-cli.*/\1/' | sort -V | uniq
|
||||||
sed -E 's/^php([0-9]+\.[0-9]+)-cli.*/\1/' | sort -V | uniq
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function __phpenv_provider_apt_get_php_path -a phpenv_version
|
function __phpenv_provider_apt_get_php_path -a phpenv_version
|
||||||
@@ -644,7 +642,7 @@ function __phpenv_provider_apt_get_php_path -a phpenv_version
|
|||||||
set -l temp_link "$target.$fish_pid"
|
set -l temp_link "$target.$fish_pid"
|
||||||
ln -s "$source" "$temp_link" 2>/dev/null
|
ln -s "$source" "$temp_link" 2>/dev/null
|
||||||
and mv -f "$temp_link" "$target" 2>/dev/null
|
and mv -f "$temp_link" "$target" 2>/dev/null
|
||||||
else if test "$binary" = "phar"; and test -x "/usr/bin/phar$phpenv_version"
|
else if test "$binary" = phar; and test -x "/usr/bin/phar$phpenv_version"
|
||||||
set -l temp_link "$target.$fish_pid"
|
set -l temp_link "$target.$fish_pid"
|
||||||
ln -s "/usr/bin/phar$phpenv_version" "$temp_link" 2>/dev/null
|
ln -s "/usr/bin/phar$phpenv_version" "$temp_link" 2>/dev/null
|
||||||
and mv -f "$temp_link" "$target" 2>/dev/null
|
and mv -f "$temp_link" "$target" 2>/dev/null
|
||||||
@@ -819,8 +817,7 @@ function __phpenv_provider_apt_ext_list -a phpenv_version
|
|||||||
# Filter out core packages (cli, common, etc.)
|
# Filter out core packages (cli, common, etc.)
|
||||||
set -l core_packages cli common opcache fpm cgi phpdbg
|
set -l core_packages cli common opcache fpm cgi phpdbg
|
||||||
|
|
||||||
dpkg -l "php$phpenv_version-*" 2>/dev/null | grep '^ii' | awk '{print $2}' | \
|
dpkg -l "php$phpenv_version-*" 2>/dev/null | grep '^ii' | awk '{print $2}' | sed "s/php$phpenv_version-//" | while read ext
|
||||||
sed "s/php$phpenv_version-//" | while read ext
|
|
||||||
# Skip core packages
|
# Skip core packages
|
||||||
set -l is_core 0
|
set -l is_core 0
|
||||||
for core in $core_packages
|
for core in $core_packages
|
||||||
@@ -837,9 +834,7 @@ end
|
|||||||
|
|
||||||
function __phpenv_provider_apt_ext_available -a phpenv_version
|
function __phpenv_provider_apt_ext_available -a phpenv_version
|
||||||
# List available extensions from apt cache
|
# List available extensions from apt cache
|
||||||
apt-cache search "^php$phpenv_version-" 2>/dev/null | \
|
apt-cache search "^php$phpenv_version-" 2>/dev/null | sed "s/php$phpenv_version-//" | awk '{print $1}' | grep -v -E '^(cli|common|fpm|cgi|phpdbg|dev)$' | sort | uniq
|
||||||
sed "s/php$phpenv_version-//" | awk '{print $1}' | \
|
|
||||||
grep -v -E '^(cli|common|fpm|cgi|phpdbg|dev)$' | sort | uniq
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function __phpenv_provider_apt_get_path_pattern
|
function __phpenv_provider_apt_get_path_pattern
|
||||||
@@ -979,9 +974,9 @@ end
|
|||||||
function __phpenv_resolve_version_alias -a phpenv_version
|
function __phpenv_resolve_version_alias -a phpenv_version
|
||||||
switch $phpenv_version
|
switch $phpenv_version
|
||||||
case latest
|
case latest
|
||||||
__phpenv_parse_version_field "latest" "8.4"
|
__phpenv_parse_version_field latest "8.4"
|
||||||
case nightly
|
case nightly
|
||||||
__phpenv_parse_version_field "nightly" "8.5"
|
__phpenv_parse_version_field nightly "8.5"
|
||||||
case '8.x'
|
case '8.x'
|
||||||
__phpenv_parse_version_field "8.x" "8.4"
|
__phpenv_parse_version_field "8.x" "8.4"
|
||||||
case '7.x'
|
case '7.x'
|
||||||
@@ -997,7 +992,7 @@ function __phpenv_get_formula_name -a phpenv_version
|
|||||||
set -l phpenv_latest_version (__phpenv_parse_version_field "latest" "8.4")
|
set -l phpenv_latest_version (__phpenv_parse_version_field "latest" "8.4")
|
||||||
|
|
||||||
if test "$phpenv_version" = "$phpenv_latest_version"
|
if test "$phpenv_version" = "$phpenv_latest_version"
|
||||||
echo "shivammathur/php/php"
|
echo shivammathur/php/php
|
||||||
else
|
else
|
||||||
echo "shivammathur/php/php@$phpenv_version"
|
echo "shivammathur/php/php@$phpenv_version"
|
||||||
end
|
end
|
||||||
@@ -1140,7 +1135,7 @@ function __phpenv_use
|
|||||||
set -l phpenv_version $argv[1]
|
set -l phpenv_version $argv[1]
|
||||||
|
|
||||||
# Handle special case: restore system PHP
|
# Handle special case: restore system PHP
|
||||||
if test "$phpenv_version" = "system"
|
if test "$phpenv_version" = system
|
||||||
__phpenv_restore_system_path
|
__phpenv_restore_system_path
|
||||||
echo "Restored system PHP"
|
echo "Restored system PHP"
|
||||||
return 0
|
return 0
|
||||||
@@ -1157,7 +1152,7 @@ function __phpenv_use
|
|||||||
end
|
end
|
||||||
|
|
||||||
if not __phpenv_is_version_installed $phpenv_version
|
if not __phpenv_is_version_installed $phpenv_version
|
||||||
if test "$(__phpenv_config_get auto-install)" = "true"
|
if test "$(__phpenv_config_get auto-install)" = true
|
||||||
__phpenv_install $phpenv_version
|
__phpenv_install $phpenv_version
|
||||||
else
|
else
|
||||||
echo "PHP $phpenv_version is not installed. Install with: phpenv install $phpenv_version"
|
echo "PHP $phpenv_version is not installed. Install with: phpenv install $phpenv_version"
|
||||||
@@ -1179,7 +1174,7 @@ function __phpenv_local -a phpenv_version
|
|||||||
return 1
|
return 1
|
||||||
end
|
end
|
||||||
|
|
||||||
echo $phpenv_version > .php-version
|
echo $phpenv_version >.php-version
|
||||||
echo "Set local PHP version to $phpenv_version"
|
echo "Set local PHP version to $phpenv_version"
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -1272,7 +1267,7 @@ function __phpenv_get_tap_versions
|
|||||||
continue
|
continue
|
||||||
end
|
end
|
||||||
|
|
||||||
if test "$phpenv_clean_name" = "php"
|
if test "$phpenv_clean_name" = php
|
||||||
set -a phpenv_versions "$phpenv_latest_version (latest)"
|
set -a phpenv_versions "$phpenv_latest_version (latest)"
|
||||||
else if echo $phpenv_clean_name | grep -qE '^php@[0-9]+\.[0-9]+$'
|
else if echo $phpenv_clean_name | grep -qE '^php@[0-9]+\.[0-9]+$'
|
||||||
set -l phpenv_version (echo $phpenv_clean_name | sed 's/php@//')
|
set -l phpenv_version (echo $phpenv_clean_name | sed 's/php@//')
|
||||||
@@ -1310,7 +1305,7 @@ function __phpenv_doctor
|
|||||||
|
|
||||||
# Show provider information
|
# Show provider information
|
||||||
set -l provider (__phpenv_get_provider)
|
set -l provider (__phpenv_get_provider)
|
||||||
set -l provider_source "auto-detected"
|
set -l provider_source auto-detected
|
||||||
if set -q PHPENV_PROVIDER; and test -n "$PHPENV_PROVIDER"
|
if set -q PHPENV_PROVIDER; and test -n "$PHPENV_PROVIDER"
|
||||||
set provider_source "PHPENV_PROVIDER override"
|
set provider_source "PHPENV_PROVIDER override"
|
||||||
end
|
end
|
||||||
@@ -1429,7 +1424,7 @@ function __phpenv_config_get -a phpenv_key
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if test "$argv[2]" = "--verbose"
|
if test "$argv[2]" = --verbose
|
||||||
if test -n "$phpenv_value"
|
if test -n "$phpenv_value"
|
||||||
echo "$phpenv_key = $phpenv_value (from $phpenv_source)"
|
echo "$phpenv_key = $phpenv_value (from $phpenv_source)"
|
||||||
else
|
else
|
||||||
@@ -1581,19 +1576,18 @@ function __phpenv_get_tap_formulas -a tap_name
|
|||||||
return 1
|
return 1
|
||||||
end
|
end
|
||||||
|
|
||||||
brew tap-info $tap_name --json 2>/dev/null | \
|
brew tap-info $tap_name --json 2>/dev/null | jq -r '.[]|(.formula_names[]?)' 2>/dev/null
|
||||||
jq -r '.[]|(.formula_names[]?)' 2>/dev/null
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function __phpenv_get_available_extensions
|
function __phpenv_get_available_extensions
|
||||||
__phpenv_get_tap_formulas "shivammathur/extensions"
|
__phpenv_get_tap_formulas shivammathur/extensions
|
||||||
end
|
end
|
||||||
|
|
||||||
function __phpenv_extension_available -a phpenv_extension phpenv_version
|
function __phpenv_extension_available -a phpenv_extension phpenv_version
|
||||||
set -l phpenv_available_extensions (__phpenv_get_available_extensions)
|
set -l phpenv_available_extensions (__phpenv_get_available_extensions)
|
||||||
|
|
||||||
if test -z "$phpenv_available_extensions"
|
if test -z "$phpenv_available_extensions"
|
||||||
return 0 # Assume available if can't check
|
return 0 # Assume available if can't check
|
||||||
end
|
end
|
||||||
|
|
||||||
for phpenv_ext_formula in $phpenv_available_extensions
|
for phpenv_ext_formula in $phpenv_available_extensions
|
||||||
@@ -1695,7 +1689,7 @@ function __phpenv_auto_switch --on-variable PWD
|
|||||||
end
|
end
|
||||||
|
|
||||||
set -l phpenv_auto_switch (__phpenv_config_get auto-switch)
|
set -l phpenv_auto_switch (__phpenv_config_get auto-switch)
|
||||||
if test "$phpenv_auto_switch" = "false"
|
if test "$phpenv_auto_switch" = false
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -1718,7 +1712,7 @@ function __phpenv_auto_switch --on-variable PWD
|
|||||||
set -g PHPENV_LAST_SWITCH_TIME $phpenv_current_time
|
set -g PHPENV_LAST_SWITCH_TIME $phpenv_current_time
|
||||||
else
|
else
|
||||||
set -l phpenv_auto_install (__phpenv_config_get auto-install)
|
set -l phpenv_auto_install (__phpenv_config_get auto-install)
|
||||||
if test "$phpenv_auto_install" = "true"
|
if test "$phpenv_auto_install" = true
|
||||||
echo "Auto-installing PHP $phpenv_new_version..."
|
echo "Auto-installing PHP $phpenv_new_version..."
|
||||||
if phpenv install "$phpenv_new_version"
|
if phpenv install "$phpenv_new_version"
|
||||||
set -g PHPENV_LAST_SWITCH_TIME $phpenv_current_time
|
set -g PHPENV_LAST_SWITCH_TIME $phpenv_current_time
|
||||||
@@ -1771,7 +1765,7 @@ function __phpenv_help
|
|||||||
end
|
end
|
||||||
|
|
||||||
function __phpenv_validate_boolean -a phpenv_value
|
function __phpenv_validate_boolean -a phpenv_value
|
||||||
test "$phpenv_value" = "true" -o "$phpenv_value" = "false"
|
test "$phpenv_value" = true -o "$phpenv_value" = false
|
||||||
end
|
end
|
||||||
|
|
||||||
function __phpenv_validate_version -a phpenv_version
|
function __phpenv_validate_version -a phpenv_version
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
---
|
|
||||||
github.com:
|
github.com:
|
||||||
git_protocol: https
|
git_protocol: ssh
|
||||||
users:
|
users:
|
||||||
ivuorinen:
|
ivuorinen:
|
||||||
user: ivuorinen
|
user: ivuorinen
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ config.color_scheme_dirs = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
-- Font and font size
|
-- Font and font size
|
||||||
config.font_size = 16
|
config.font_size = 12
|
||||||
config.font = wezterm.font_with_fallback {
|
config.font = wezterm.font_with_fallback {
|
||||||
{
|
{
|
||||||
family = 'Monaspace Argon NF',
|
family = 'Monaspace Argon NF',
|
||||||
@@ -48,9 +48,9 @@ config.window_background_opacity = 0.97
|
|||||||
config.window_decorations = 'RESIZE'
|
config.window_decorations = 'RESIZE'
|
||||||
config.macos_window_background_blur = 10
|
config.macos_window_background_blur = 10
|
||||||
config.window_padding = {
|
config.window_padding = {
|
||||||
left = 5,
|
left = 10,
|
||||||
right = 5,
|
right = 10,
|
||||||
top = 5,
|
top = 10,
|
||||||
bottom = 5,
|
bottom = 5,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
13
package.json
13
package.json
@@ -34,13 +34,16 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://github.com/ivuorinen/dotfiles#readme",
|
"homepage": "https://github.com/ivuorinen/dotfiles#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@biomejs/biome": "^2.3.1",
|
"@biomejs/biome": "^2.4.4",
|
||||||
"@types/node": "^24.0.1",
|
"@types/node": "^25.3.2",
|
||||||
"bats": "^1.12.0",
|
"bats": "^1.13.0",
|
||||||
"editorconfig-checker": "^6.1.0",
|
"editorconfig-checker": "^6.1.1",
|
||||||
"markdown-table-formatter": "^1.7.0",
|
"markdown-table-formatter": "^1.7.0",
|
||||||
"prettier": "^3.8.1",
|
"prettier": "^3.8.1",
|
||||||
"typescript": "^5.8.3"
|
"typescript": "^5.9.3"
|
||||||
|
},
|
||||||
|
"resolutions": {
|
||||||
|
"minimatch": "^10.2.4"
|
||||||
},
|
},
|
||||||
"packageManager": "yarn@4.12.0"
|
"packageManager": "yarn@4.12.0"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -uo pipefail
|
||||||
# @description Install cargo/rust packages.
|
# @description Install cargo/rust packages.
|
||||||
#
|
#
|
||||||
# shellcheck source=shared.sh
|
# shellcheck source=shared.sh
|
||||||
|
|||||||
178
yarn.lock
178
yarn.lock
@@ -5,18 +5,18 @@ __metadata:
|
|||||||
version: 8
|
version: 8
|
||||||
cacheKey: 10c0
|
cacheKey: 10c0
|
||||||
|
|
||||||
"@biomejs/biome@npm:^2.3.1":
|
"@biomejs/biome@npm:^2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/biome@npm:2.3.11"
|
resolution: "@biomejs/biome@npm:2.4.4"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@biomejs/cli-darwin-arm64": "npm:2.3.11"
|
"@biomejs/cli-darwin-arm64": "npm:2.4.4"
|
||||||
"@biomejs/cli-darwin-x64": "npm:2.3.11"
|
"@biomejs/cli-darwin-x64": "npm:2.4.4"
|
||||||
"@biomejs/cli-linux-arm64": "npm:2.3.11"
|
"@biomejs/cli-linux-arm64": "npm:2.4.4"
|
||||||
"@biomejs/cli-linux-arm64-musl": "npm:2.3.11"
|
"@biomejs/cli-linux-arm64-musl": "npm:2.4.4"
|
||||||
"@biomejs/cli-linux-x64": "npm:2.3.11"
|
"@biomejs/cli-linux-x64": "npm:2.4.4"
|
||||||
"@biomejs/cli-linux-x64-musl": "npm:2.3.11"
|
"@biomejs/cli-linux-x64-musl": "npm:2.4.4"
|
||||||
"@biomejs/cli-win32-arm64": "npm:2.3.11"
|
"@biomejs/cli-win32-arm64": "npm:2.4.4"
|
||||||
"@biomejs/cli-win32-x64": "npm:2.3.11"
|
"@biomejs/cli-win32-x64": "npm:2.4.4"
|
||||||
dependenciesMeta:
|
dependenciesMeta:
|
||||||
"@biomejs/cli-darwin-arm64":
|
"@biomejs/cli-darwin-arm64":
|
||||||
optional: true
|
optional: true
|
||||||
@@ -36,92 +36,83 @@ __metadata:
|
|||||||
optional: true
|
optional: true
|
||||||
bin:
|
bin:
|
||||||
biome: bin/biome
|
biome: bin/biome
|
||||||
checksum: 10c0/b9764070c3d1583466a8861d37dc480c18103f7bb52115db0f265a38e6343d69792c9beea094e0b3db0905cb365b9a82ad2a0f3f05b7f04873a8f9b444263140
|
checksum: 10c0/f2b7620d39caeeb9e0ed070dd1065cc2378626c7fa6ecda3db84b64df4c94fb4909407726044e28c83e8a95121ad389498cc3f0e5be600a421d906ca705b821c
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-darwin-arm64@npm:2.3.11":
|
"@biomejs/cli-darwin-arm64@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-darwin-arm64@npm:2.3.11"
|
resolution: "@biomejs/cli-darwin-arm64@npm:2.4.4"
|
||||||
conditions: os=darwin & cpu=arm64
|
conditions: os=darwin & cpu=arm64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-darwin-x64@npm:2.3.11":
|
"@biomejs/cli-darwin-x64@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-darwin-x64@npm:2.3.11"
|
resolution: "@biomejs/cli-darwin-x64@npm:2.4.4"
|
||||||
conditions: os=darwin & cpu=x64
|
conditions: os=darwin & cpu=x64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-linux-arm64-musl@npm:2.3.11":
|
"@biomejs/cli-linux-arm64-musl@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-linux-arm64-musl@npm:2.3.11"
|
resolution: "@biomejs/cli-linux-arm64-musl@npm:2.4.4"
|
||||||
conditions: os=linux & cpu=arm64 & libc=musl
|
conditions: os=linux & cpu=arm64 & libc=musl
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-linux-arm64@npm:2.3.11":
|
"@biomejs/cli-linux-arm64@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-linux-arm64@npm:2.3.11"
|
resolution: "@biomejs/cli-linux-arm64@npm:2.4.4"
|
||||||
conditions: os=linux & cpu=arm64 & libc=glibc
|
conditions: os=linux & cpu=arm64 & libc=glibc
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-linux-x64-musl@npm:2.3.11":
|
"@biomejs/cli-linux-x64-musl@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-linux-x64-musl@npm:2.3.11"
|
resolution: "@biomejs/cli-linux-x64-musl@npm:2.4.4"
|
||||||
conditions: os=linux & cpu=x64 & libc=musl
|
conditions: os=linux & cpu=x64 & libc=musl
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-linux-x64@npm:2.3.11":
|
"@biomejs/cli-linux-x64@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-linux-x64@npm:2.3.11"
|
resolution: "@biomejs/cli-linux-x64@npm:2.4.4"
|
||||||
conditions: os=linux & cpu=x64 & libc=glibc
|
conditions: os=linux & cpu=x64 & libc=glibc
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-win32-arm64@npm:2.3.11":
|
"@biomejs/cli-win32-arm64@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-win32-arm64@npm:2.3.11"
|
resolution: "@biomejs/cli-win32-arm64@npm:2.4.4"
|
||||||
conditions: os=win32 & cpu=arm64
|
conditions: os=win32 & cpu=arm64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@biomejs/cli-win32-x64@npm:2.3.11":
|
"@biomejs/cli-win32-x64@npm:2.4.4":
|
||||||
version: 2.3.11
|
version: 2.4.4
|
||||||
resolution: "@biomejs/cli-win32-x64@npm:2.3.11"
|
resolution: "@biomejs/cli-win32-x64@npm:2.4.4"
|
||||||
conditions: os=win32 & cpu=x64
|
conditions: os=win32 & cpu=x64
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@isaacs/balanced-match@npm:^4.0.1":
|
"@types/node@npm:^25.3.2":
|
||||||
version: 4.0.1
|
version: 25.3.2
|
||||||
resolution: "@isaacs/balanced-match@npm:4.0.1"
|
resolution: "@types/node@npm:25.3.2"
|
||||||
checksum: 10c0/7da011805b259ec5c955f01cee903da72ad97c5e6f01ca96197267d3f33103d5b2f8a1af192140f3aa64526c593c8d098ae366c2b11f7f17645d12387c2fd420
|
|
||||||
languageName: node
|
|
||||||
linkType: hard
|
|
||||||
|
|
||||||
"@isaacs/brace-expansion@npm:^5.0.1":
|
|
||||||
version: 5.0.1
|
|
||||||
resolution: "@isaacs/brace-expansion@npm:5.0.1"
|
|
||||||
dependencies:
|
dependencies:
|
||||||
"@isaacs/balanced-match": "npm:^4.0.1"
|
undici-types: "npm:~7.18.0"
|
||||||
checksum: 10c0/e5d67c7bbf1f17b88132a35bc638af306d48acbb72810d48fa6e6edd8ab375854773108e8bf70f021f7ef6a8273455a6d1f0c3b5aa2aff06ce7894049ab77fb8
|
checksum: 10c0/946c8758668762d3c3b475281b420e580d0ce828c6847534a822b92be791e23e5879b53001ea928e5352dec8908082d854b8076b7bcfc69549e23ad54b1f98ab
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@types/node@npm:^24.0.1":
|
"balanced-match@npm:^4.0.2":
|
||||||
version: 24.10.9
|
version: 4.0.4
|
||||||
resolution: "@types/node@npm:24.10.9"
|
resolution: "balanced-match@npm:4.0.4"
|
||||||
dependencies:
|
checksum: 10c0/07e86102a3eb2ee2a6a1a89164f29d0dbaebd28f2ca3f5ca786f36b8b23d9e417eb3be45a4acf754f837be5ac0a2317de90d3fcb7f4f4dc95720a1f36b26a17b
|
||||||
undici-types: "npm:~7.16.0"
|
|
||||||
checksum: 10c0/e9e436fcd2136bddb1bbe3271a89f4653910bcf6ee8047c4117f544c7905a106c039e2720ee48f28505ef2560e22fb9ead719f28bf5e075fdde0c1120e38e3b2
|
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"bats@npm:^1.12.0":
|
"bats@npm:^1.13.0":
|
||||||
version: 1.13.0
|
version: 1.13.0
|
||||||
resolution: "bats@npm:1.13.0"
|
resolution: "bats@npm:1.13.0"
|
||||||
bin:
|
bin:
|
||||||
@@ -130,6 +121,15 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"brace-expansion@npm:^5.0.2":
|
||||||
|
version: 5.0.3
|
||||||
|
resolution: "brace-expansion@npm:5.0.3"
|
||||||
|
dependencies:
|
||||||
|
balanced-match: "npm:^4.0.2"
|
||||||
|
checksum: 10c0/e474d300e581ec56851b3863ff1cf18573170c6d06deb199ccbd03b2119c36975f6ce2abc7b770f5bebddc1ab022661a9fea9b4d56f33315d7bef54d8793869e
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"debug@npm:^4.3.4":
|
"debug@npm:^4.3.4":
|
||||||
version: 4.4.3
|
version: 4.4.3
|
||||||
resolution: "debug@npm:4.4.3"
|
resolution: "debug@npm:4.4.3"
|
||||||
@@ -149,7 +149,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"editorconfig-checker@npm:^6.1.0":
|
"editorconfig-checker@npm:^6.1.1":
|
||||||
version: 6.1.1
|
version: 6.1.1
|
||||||
resolution: "editorconfig-checker@npm:6.1.1"
|
resolution: "editorconfig-checker@npm:6.1.1"
|
||||||
bin:
|
bin:
|
||||||
@@ -185,13 +185,13 @@ __metadata:
|
|||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"glob@npm:^13.0.0":
|
"glob@npm:^13.0.0":
|
||||||
version: 13.0.1
|
version: 13.0.6
|
||||||
resolution: "glob@npm:13.0.1"
|
resolution: "glob@npm:13.0.6"
|
||||||
dependencies:
|
dependencies:
|
||||||
minimatch: "npm:^10.1.2"
|
minimatch: "npm:^10.2.2"
|
||||||
minipass: "npm:^7.1.2"
|
minipass: "npm:^7.1.3"
|
||||||
path-scurry: "npm:^2.0.0"
|
path-scurry: "npm:^2.0.2"
|
||||||
checksum: 10c0/af7b863dec8dff74f61d7d6e53104e1f6bbdd482157a196cade8ed857481e876ec35181b38a059b2a7b93ea3b08248f4ff0792fef6dc91814fd5097a716f48e4
|
checksum: 10c0/269c236f11a9b50357fe7a8c6aadac667e01deb5242b19c84975628f05f4438d8ee1354bb62c5d6c10f37fd59911b54d7799730633a2786660d8c69f1d18120a
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -206,13 +206,13 @@ __metadata:
|
|||||||
version: 0.0.0-use.local
|
version: 0.0.0-use.local
|
||||||
resolution: "ivuorinen-dotfiles@workspace:."
|
resolution: "ivuorinen-dotfiles@workspace:."
|
||||||
dependencies:
|
dependencies:
|
||||||
"@biomejs/biome": "npm:^2.3.1"
|
"@biomejs/biome": "npm:^2.4.4"
|
||||||
"@types/node": "npm:^24.0.1"
|
"@types/node": "npm:^25.3.2"
|
||||||
bats: "npm:^1.12.0"
|
bats: "npm:^1.13.0"
|
||||||
editorconfig-checker: "npm:^6.1.0"
|
editorconfig-checker: "npm:^6.1.1"
|
||||||
markdown-table-formatter: "npm:^1.7.0"
|
markdown-table-formatter: "npm:^1.7.0"
|
||||||
prettier: "npm:^3.8.1"
|
prettier: "npm:^3.8.1"
|
||||||
typescript: "npm:^5.8.3"
|
typescript: "npm:^5.9.3"
|
||||||
languageName: unknown
|
languageName: unknown
|
||||||
linkType: soft
|
linkType: soft
|
||||||
|
|
||||||
@@ -240,9 +240,9 @@ __metadata:
|
|||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"lru-cache@npm:^11.0.0":
|
"lru-cache@npm:^11.0.0":
|
||||||
version: 11.2.5
|
version: 11.2.6
|
||||||
resolution: "lru-cache@npm:11.2.5"
|
resolution: "lru-cache@npm:11.2.6"
|
||||||
checksum: 10c0/cc98958d25dddf1c8a8cbdc49588bd3b24450e8dfa78f32168fd188a20d4a0331c7406d0f3250c86a46619ee288056fd7a1195e8df56dc8a9592397f4fbd8e1d
|
checksum: 10c0/73bbffb298760e71b2bfe8ebc16a311c6a60ceddbba919cfedfd8635c2d125fbfb5a39b71818200e67973b11f8d59c5a9e31d6f90722e340e90393663a66e5cd
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -271,19 +271,19 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"minimatch@npm:^10.1.2":
|
"minimatch@npm:^10.2.4":
|
||||||
version: 10.1.2
|
version: 10.2.4
|
||||||
resolution: "minimatch@npm:10.1.2"
|
resolution: "minimatch@npm:10.2.4"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@isaacs/brace-expansion": "npm:^5.0.1"
|
brace-expansion: "npm:^5.0.2"
|
||||||
checksum: 10c0/0cccef3622201703de6ecf9d772c0be1d5513dcc038ed9feb866c20cf798243e678ac35605dac3f1a054650c28037486713fe9e9a34b184b9097959114daf086
|
checksum: 10c0/35f3dfb7b99b51efd46afd378486889f590e7efb10e0f6a10ba6800428cf65c9a8dedb74427d0570b318d749b543dc4e85f06d46d2858bc8cac7e1eb49a95945
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"minipass@npm:^7.1.2":
|
"minipass@npm:^7.1.2, minipass@npm:^7.1.3":
|
||||||
version: 7.1.2
|
version: 7.1.3
|
||||||
resolution: "minipass@npm:7.1.2"
|
resolution: "minipass@npm:7.1.3"
|
||||||
checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557
|
checksum: 10c0/539da88daca16533211ea5a9ee98dc62ff5742f531f54640dd34429e621955e91cc280a91a776026264b7f9f6735947629f920944e9c1558369e8bf22eb33fbb
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -308,13 +308,13 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"path-scurry@npm:^2.0.0":
|
"path-scurry@npm:^2.0.2":
|
||||||
version: 2.0.1
|
version: 2.0.2
|
||||||
resolution: "path-scurry@npm:2.0.1"
|
resolution: "path-scurry@npm:2.0.2"
|
||||||
dependencies:
|
dependencies:
|
||||||
lru-cache: "npm:^11.0.0"
|
lru-cache: "npm:^11.0.0"
|
||||||
minipass: "npm:^7.1.2"
|
minipass: "npm:^7.1.2"
|
||||||
checksum: 10c0/2a16ed0e81fbc43513e245aa5763354e25e787dab0d539581a6c3f0f967461a159ed6236b2559de23aa5b88e7dc32b469b6c47568833dd142a4b24b4f5cd2620
|
checksum: 10c0/b35ad37cf6557a87fd057121ce2be7695380c9138d93e87ae928609da259ea0a170fac6f3ef1eb3ece8a068e8b7f2f3adf5bb2374cf4d4a57fe484954fcc9482
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
@@ -343,7 +343,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"typescript@npm:^5.8.3":
|
"typescript@npm:^5.9.3":
|
||||||
version: 5.9.3
|
version: 5.9.3
|
||||||
resolution: "typescript@npm:5.9.3"
|
resolution: "typescript@npm:5.9.3"
|
||||||
bin:
|
bin:
|
||||||
@@ -353,7 +353,7 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"typescript@patch:typescript@npm%3A^5.8.3#optional!builtin<compat/typescript>":
|
"typescript@patch:typescript@npm%3A^5.9.3#optional!builtin<compat/typescript>":
|
||||||
version: 5.9.3
|
version: 5.9.3
|
||||||
resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin<compat/typescript>::version=5.9.3&hash=5786d5"
|
resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin<compat/typescript>::version=5.9.3&hash=5786d5"
|
||||||
bin:
|
bin:
|
||||||
@@ -363,10 +363,10 @@ __metadata:
|
|||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"undici-types@npm:~7.16.0":
|
"undici-types@npm:~7.18.0":
|
||||||
version: 7.16.0
|
version: 7.18.2
|
||||||
resolution: "undici-types@npm:7.16.0"
|
resolution: "undici-types@npm:7.18.2"
|
||||||
checksum: 10c0/3033e2f2b5c9f1504bdc5934646cb54e37ecaca0f9249c983f7b1fc2e87c6d18399ebb05dc7fd5419e02b2e915f734d872a65da2e3eeed1813951c427d33cc9a
|
checksum: 10c0/85a79189113a238959d7a647368e4f7c5559c3a404ebdb8fc4488145ce9426fcd82252a844a302798dfc0e37e6fb178ff481ed03bc4caf634c5757d9ef43521d
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user