mirror of
https://github.com/tauri-apps/create-tauri-app.git
synced 2026-01-31 00:45:16 +01:00
fix: don't unshift(bin) to args when running from deno (#834)
closes #833
This commit is contained in:
6
.changes/running-from-deno.md
Normal file
6
.changes/running-from-deno.md
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
"create-tauri-app": "patch"
|
||||
"create-tauri-app-js": "patch"
|
||||
---
|
||||
|
||||
Fix running `create-tauri-app` using deno.
|
||||
28
README.md
28
README.md
@@ -56,6 +56,12 @@ yarn create tauri-app
|
||||
pnpm create tauri-app
|
||||
```
|
||||
|
||||
### Deno
|
||||
|
||||
```bash
|
||||
deno run -A npm:create-tauri-app
|
||||
```
|
||||
|
||||
### Bun:
|
||||
|
||||
```bash
|
||||
@@ -136,23 +142,25 @@ You can also directly specify the project name, package manager and the template
|
||||
|
||||
```bash
|
||||
# curl
|
||||
sh <(curl https://create.tauri.app/sh) my-tauri-app --template svelte --manager pnpm
|
||||
sh <(curl https://create.tauri.app/sh) my-tauri-app --template svelte
|
||||
# wget
|
||||
sh <(wget https://create.tauri.app/sh) my-tauri-app --template svelte --manager pnpm
|
||||
sh <(wget https://create.tauri.app/sh) my-tauri-app --template svelte
|
||||
# powershell
|
||||
$env:CTA_ARGS="--template svelte --manager pnpm";irm https://create.tauri.app/ps | iex
|
||||
$env:CTA_ARGS="--template svelte";irm https://create.tauri.app/ps | iex
|
||||
# cargo
|
||||
cargo create-tauri-app my-tauri-app --template svelte --manager pnpm
|
||||
cargo create-tauri-app my-tauri-app --template svelte
|
||||
# npm 6.x
|
||||
npm create tauri-app@latest my-tauri-app --template svelte --manager pnpm
|
||||
npm create tauri-app@latest my-tauri-app --template svelte
|
||||
# npm 7+, extra double-dash is needed:
|
||||
npm create tauri-app@latest my-tauri-app -- --template svelte --manager pnpm
|
||||
npm create tauri-app@latest my-tauri-app -- --template svelte
|
||||
# yarn
|
||||
yarn create tauri-app my-tauri-app --template svelte --manager pnpm
|
||||
yarn create tauri-app my-tauri-app --template svelte
|
||||
# pnpm
|
||||
pnpm create tauri-app my-tauri-app --template svelte --manager pnpm
|
||||
pnpm create tauri-app my-tauri-app --template svelte
|
||||
# deno
|
||||
deno run -A npm:create-tauri-app --template svelte
|
||||
# Bun
|
||||
bunx create-tauri-app my-tauri-app --template svelte --manager bun
|
||||
bunx create-tauri-app my-tauri-app --template svelte
|
||||
```
|
||||
|
||||
Currently supported template presets include:
|
||||
@@ -165,6 +173,8 @@ Currently supported template presets include:
|
||||
- `svelte-ts`
|
||||
- `react`
|
||||
- `react-ts`
|
||||
- `preact`
|
||||
- `preact-ts`
|
||||
- `solid`
|
||||
- `solid-ts`
|
||||
- `angular`
|
||||
|
||||
@@ -29,6 +29,12 @@ yarn create tauri-app
|
||||
pnpm create tauri-app
|
||||
```
|
||||
|
||||
### Deno
|
||||
|
||||
```bash
|
||||
deno run -A npm:create-tauri-app
|
||||
```
|
||||
|
||||
## Bun:
|
||||
|
||||
```bash
|
||||
@@ -41,15 +47,15 @@ You can also directly specify the project name, package manager and the template
|
||||
|
||||
```bash
|
||||
# npm 6.x
|
||||
npm create tauri-app@latest my-tauri-app --template svelte --manager pnpm
|
||||
npm create tauri-app@latest my-tauri-app --template svelte
|
||||
# npm 7+, extra double-dash is needed:
|
||||
npm create tauri-app@latest my-tauri-app -- --template svelte --manager pnpm
|
||||
npm create tauri-app@latest my-tauri-app -- --template svelte
|
||||
# yarn
|
||||
yarn create tauri-app my-tauri-app --template svelte --manager pnpm
|
||||
yarn create tauri-app my-tauri-app --template svelte
|
||||
# pnpm
|
||||
pnpm create tauri-app my-tauri-app --template svelte --manager pnpm
|
||||
pnpm create tauri-app my-tauri-app --template svelte
|
||||
# Bun
|
||||
bunx create-tauri-app my-tauri-app --template svelte --manager bun
|
||||
bunx create-tauri-app my-tauri-app --template svelte
|
||||
```
|
||||
|
||||
Currently supported template presets include:
|
||||
@@ -62,6 +68,8 @@ Currently supported template presets include:
|
||||
- `svelte-ts`
|
||||
- `react`
|
||||
- `react-ts`
|
||||
- `preact`
|
||||
- `preact-ts`
|
||||
- `solid`
|
||||
- `solid-ts`
|
||||
- `angular`
|
||||
|
||||
@@ -20,7 +20,7 @@ if (globalThis.navigator?.userAgent?.includes("Deno")) {
|
||||
}
|
||||
// Even if started by a package manager, the binary will be NodeJS or Bun.
|
||||
// Some distribution still use "nodejs" as the binary name.
|
||||
if (binStem.match(/(nodejs|node|bun)-*([0-9]*)*$/g)) {
|
||||
else if (binStem.match(/(nodejs|node|bun)-*([0-9]*)*$/g)) {
|
||||
const managerStem = process.env.npm_execpath
|
||||
? path.parse(process.env.npm_execpath).name.toLowerCase()
|
||||
: null;
|
||||
@@ -52,9 +52,8 @@ if (binStem.match(/(nodejs|node|bun)-*([0-9]*)*$/g)) {
|
||||
}
|
||||
|
||||
// adapted from https://github.com/vitejs/vite/blob/34826aae015ed16dc9b9096c0f778154ca6981a6/packages/create-vite/src/index.ts#L513
|
||||
function pkgManagerFromUserAgent(userAgent) {
|
||||
if (!userAgent) return undefined;
|
||||
return userAgent.split(" ")[0]?.split("/")[0];
|
||||
}
|
||||
const pkgManager = pkgManagerFromUserAgent(process.env.npm_config_user_agent);
|
||||
const userAgent =
|
||||
process.env.npm_config_user_agent ?? globalThis.navigator?.userAgent;
|
||||
const pkgManager = userAgent?.split(" ")[0]?.split("/")[0].toLocaleLowerCase();
|
||||
|
||||
cli.run(args, binName, pkgManager);
|
||||
|
||||
Reference in New Issue
Block a user