Skip to content

Commit fb4dc78

Browse files
Prepare release 0.5.0-rc.1
1 parent c33cb8e commit fb4dc78

3 files changed

Lines changed: 63 additions & 27 deletions

File tree

README.md

Lines changed: 49 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ A terminal command to open Unity projects quickly from the command line.
44

55
![](doc/Screenshot_Open_Path.png)
66

7-
## Supported Platforms
7+
# Supported Platforms
88

99
- macOS
1010
- Windows
1111
- Linux (TBD)
1212

13-
## Commands
13+
# Commands
1414

1515
| Name | Description |
1616
|--------------------------------|-----------------------------------------------------------------------------|
@@ -42,12 +42,38 @@ If the `version` argument is omitted, an interactive prompt shows all installed
4242

4343
---
4444

45-
## Installation
45+
# Installation
4646

47-
### From Source (recommended)
47+
Get the tool from either of these sources:
48+
49+
1. NuGet
50+
2. Build from source
51+
3. Download binary from GitHub
52+
53+
## 1 NuGet Global Tool
54+
55+
The easiest way to install `ucll` is as a .NET global tool via NuGet:
56+
57+
```shell
58+
dotnet tool install --global UnityCommandLineLauncher
59+
```
60+
61+
**Requirements:**
62+
63+
- [.NET 10.0](https://dotnet.microsoft.com/download) or newer
64+
65+
> If you don't want to install .NET just for this tool, you can use a self-contained (standalone) binary, see below.
66+
67+
68+
After installation, the `ucll` command will be available globally in your terminal.
69+
70+
## 2 From Source
4871

4972
1. Clone the repository.
50-
2. Checkout a release tag and take note of the signature, e.g. `git tag -v v1.0.0`.
73+
2. Checkout a release tag and take note of the security signature, e.g.
74+
```shell
75+
git tag -v v1.0.0
76+
```
5177
3. Navigate to the project directory:
5278
```shell
5379
cd src/ucll
@@ -58,9 +84,9 @@ If the `version` argument is omitted, an interactive prompt shows all installed
5884
```
5985
5. Find the binary in e.g. `src/ucll/bin/osx-arm64/publish/`
6086

61-
### Download Binaries
87+
## 3 Download Binaries
6288

63-
Or, download a binary from the GitHub _Releases_ page.
89+
Download a prebuilt `binary from the GitHub _Releases_ page.
6490

6591
E.g. for macOS with an M4 Apple processor:
6692
`ucll-osx-arm64.tar.gz`
@@ -69,7 +95,7 @@ See [Security.md](Security.md) for instructions on how to verify the authenticit
6995

7096
---
7197

72-
## Setup
98+
# Setup
7399

74100
It is recommended to create an alias for `ucll` in your shell config (.zshrc, .bashrc, etc.):
75101

@@ -91,14 +117,14 @@ You may need to make the file executable on Unix:
91117
chmod +x ucll
92118
```
93119

94-
### Interaction Selection Prompt
120+
## Interaction Selection Prompt
95121

96122
Various commands have optional parameters which show a selection prompt:
97123

98124
- Use the arrow keys to select an item and press Enter to confirm
99125
- Type on the keyboard to start searching.
100126

101-
### Enhanced Fuzzy Search (Optional)
127+
## Enhanced Fuzzy Search (Optional)
102128

103129
Install [fzf](https://github.com/junegunn/fzf) 0.67.0 or newer:
104130

@@ -118,11 +144,11 @@ Press the ESC key to cancel the prompt.
118144
If `fzf` is not installed, the built-in search will be used as a fallback.
119145
Press CTRL + C to cancel the prompt. Known bug: This will leave the console cursor hidden.
120146

121-
### Shell Completion (Optional)
147+
## Shell Completion (Optional)
122148

123149
`ucll` supports generating shell completion scripts to enable tab completion for commands and options.
124150

125-
#### ZSH Setup
151+
### ZSH Setup
126152

127153
1. **Generate the completion script:**
128154
```shell
@@ -144,15 +170,15 @@ Press CTRL + C to cancel the prompt. Known bug: This will leave the console curs
144170
```
145171
Or simply open a new terminal window.
146172

147-
#### Completion Usage
173+
### Completion Usage
148174

149175
Once installed, you can use tab completion:
150176

151177
- `ucll <TAB>` - Shows all available commands
152178
- `ucll open <TAB>` - Shows options like `--favorite`, `--code-editor`, `--dry-run`
153179
- `ucll version-usage <TAB>` - Shows options like `--plaintext`, `--modules`
154180

155-
#### Updating Completions
181+
### Updating Completions
156182

157183
When you update `ucll` or new commands are added, regenerate the completion script:
158184

@@ -161,13 +187,13 @@ ucll completion > ~/.zsh/completions/_ucll
161187
exec zsh
162188
```
163189

164-
### Unity Hub
190+
## Unity Hub
165191

166192
- Ensure version 3.15.4 or newer is installed (https://unity.com/download)
167193

168194
---
169195

170-
## Usage
196+
# Usage
171197

172198
Discover available commands and options:
173199

@@ -191,7 +217,7 @@ ucll open path/to/project -- -batchmode -quit
191217
ucll install 2022.3.10f1 -- --module webgl
192218
```
193219

194-
## Features
220+
# Features
195221

196222
- Opens Unity projects from the terminal (faster than using the Unity Hub GUI)
197223
- Interactive project selection from Unity Hub's recent projects (optional favorites filter)
@@ -201,7 +227,7 @@ ucll install 2022.3.10f1 -- --module webgl
201227
- Forwards additional Unity CLI arguments (e.g. `-batchmode -quit`)
202228
- Auto-detects Unity Hub and Editor installation paths
203229

204-
## Configuration
230+
# Configuration
205231

206232
> If Unity Hub and the editors are installed in their default location, there should be no configuration needed.
207233
@@ -226,7 +252,7 @@ Environment variables are optional but speed up execution for non-default instal
226252

227253
The placeholder `{0}` is part of the path pattern and will be replaced with the Editor version at runtime.
228254

229-
## Tips & Examples
255+
# Tips & Examples
230256

231257
The command API is intentionally kept simple and (hopefully) logical.
232258
Save your favorite invocations as aliases to make the most out of this tool:
@@ -255,9 +281,9 @@ cd $(ucll project-path)
255281

256282
---
257283

258-
## Design Background
284+
# Design Background
259285

260-
### Problems
286+
## Problems
261287

262288
- Unity Hub is slow to open and requires manual project management
263289
- GUI-based workflows are cumbersome for multiple projects
@@ -267,15 +293,15 @@ cd $(ucll project-path)
267293
- install command requires architecture detection on macOS
268294
- Managing many editor versions and projects can be cumbersome because of the missing usage overview
269295

270-
### Solutions
296+
## Solutions
271297

272298
- Terminal access is faster (global hotkeys, IDE integration, _Finder_ context menu)
273299
- The tool improves existing Unity Hub API
274300
- Additional commands provide convenience functionality
275301

276302
---
277303

278-
## Contributing
304+
# Contributing
279305

280306
See the [guideline](CONTRIBUTING.md).
281307

src/ucll.build/Publishing.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,19 @@
11
# Publishing (for Maintainers)
22

3-
The GitHub `release.yml` workflow takes care of running this project to produce binaries and then
4-
signs them before uploading a new release.
3+
## Workflow
54

6-
To publish locally:
5+
- Update the version in the `ucll.csproj` file, e.g. `1.0.0-rc.1`.
6+
- Ensure the Readme.md and AppConfiguration.cs help are up-to-date.
7+
- Commit and tag the commit with a prefixed version, e.g. `v1.0.0-rc.1`
8+
9+
The GitHub `release.yml` workflow takes care of running the build project to produce binaries and then
10+
signs them before uploading a new GitHub release.
11+
12+
It then also publishes a tool package version to NuGet.
13+
14+
## Local Publish
15+
16+
This should only be necessary if the GitHub workflow breaks down and a local hotfix release is required.
717

818
Install the `gpg` utility to let the publish process sign release artifacts with your personal key.
919

src/ucll/ucll.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<OutputType>Exe</OutputType>
44
<SelfContained>true</SelfContained>
55
<PublishSingleFile>true</PublishSingleFile>
6-
<Version>0.4.0</Version>
6+
<Version>0.5.0-rc.1</Version>
77

88
<!--Slim down the bundles executable.-->
99
<PublishTrimmed>true</PublishTrimmed>

0 commit comments

Comments
 (0)