Skip to content

Commit 6634a2a

Browse files
authored
Simulot/issue205 (#206)
1 parent 9c62473 commit 6634a2a

2 files changed

Lines changed: 66 additions & 49 deletions

File tree

docs/releases.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@
22

33
## Release 0.13.1
44

5+
### Improvement: [#195](https://github.com/simulot/immich-go/issues/195) Rethink the user interactions with the CLI application #195
6+
7+
#### Use Bubble Tea library to provide a modern TUI (Terminal User Interface)
8+
9+
10+
### API KEY self provisioning
11+
When the server and the API keys aren't given on the command line, immich-go ask the user if he wants to get a key from a server, and saves it the configuration file.
12+
513
### Fix [#199](https://github.com/simulot/immich-go/issues/199)
614

715
## Release 0.13.0

readme.md

Lines changed: 58 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -40,26 +40,35 @@ For insights into the reasoning behind this alternative to `immich-cli`, please
4040
4141

4242
# Executing `immich-go`
43-
The `immich-go` is a command line tool.
43+
The `immich-go` is a command line tool that must be run from a terminal window.
4444
The `immich-go` program uses the Immich API. Hence it need the server address and a valid API key.
4545

4646

4747
```sh
4848
immich-go -server URL -key KEY -general_options COMMAND -command_options... {files}
4949
```
5050

51-
| **Parameter** | **Description** | **Default value** |
52-
|-----------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------|
53-
| `-use-configuration=path/to/config/file` | Specifies the configuration file to use. <br>Server URL and the API key are stored into the immich-go configuration file. They can be omitted for the next runs. | `$HOME/.immich-go/immich-go.json` |
54-
| `-server URL` | URL of the Immich service, example http://<your-ip>:2283 or https://your-domain | |
55-
| `-api URL` | URL of the Immich api endpoint (http://container_ip:3301) | |
56-
| `-device-uuid VALUE` | Force the device identification | `$HOSTNAME` |
57-
| `-skip-verify-ssl <bool>` | Skip SSL verification for use with self-signed certificates | `false` |
58-
| `-key KEY` | A key generated by the user. Uploaded photos will belong to the key's owner. | |
59-
| `-no-colors-log` | Remove color codes from logs. | |
60-
| `-log-level` | Adjust the log verbosity as follows: <br> - `ERROR`: Display only errors <br> - `WARNING`: Same as previous one plus non blocking error <br> - `OK`: Same as previous plus actions <br> - `INFO`: Same as previous one plus progressions | `OK` |
61-
| `-log-file=file` | Write all messages to a file | |
62-
| `-time-zone=time_zone_name` | Set the time zone | |
51+
52+
> Boolean options have a default value indicated below. Mentioning any option on the common line changes the option to TRUE.
53+
>To force an option to FALSE, use the following syntax: `-option=FALSE`.
54+
>
55+
>Example: Immich-go check the server's SSL certificate. you can disable this behavior by turning on the `skip-verify-ssl` option. Just add `-skip-verify-ssl`.
56+
>`-skip-verify-ssl` is equivalent to `-skip-verify-ssl=TRUE`. To turn off the feature (which is the default behavior), use `-skip-verify-ssl=FALSE`
57+
58+
59+
60+
| **Parameter** | **Description** | **Default value** |
61+
| ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ |
62+
| `-use-configuration=path/to/config/file` | Specifies the configuration file to use. <br>Server URL and the API key are stored into the immich-go configuration file. They can be omitted for the next runs. | `$HOME/.immich-go/immich-go.json` |
63+
| `-server=URL` | URL of the Immich service, example http://<your-ip>:2283 or https://your-domain | |
64+
| `-api=URL` | URL of the Immich api endpoint (http://container_ip:3301) | |
65+
| `-device-uuid=VALUE` | Force the device identification | `$HOSTNAME` |
66+
| `-skip-verify-ssl` | Skip SSL verification for use with self-signed certificates | `false` |
67+
| `-key=KEY` | A key generated by the user. Uploaded photos will belong to the key's owner. | |
68+
| `-no-colors-log` | Remove color codes from logs. | `TRUE` on Windows, `FALSE` otherwise |
69+
| `-log-level=LEVEL` | Adjust the log verbosity as follows: <br> - `ERROR`: Display only errors <br> - `WARNING`: Same as previous one plus non blocking error <br> - `OK`: Same as previous plus actions <br> - `INFO`: Same as previous one plus progressions | `OK` |
70+
| `-log-file=file` | Write all messages to a file | |
71+
| `-time-zone=time_zone_name` | Set the time zone | the system's time zone |
6372

6473

6574

@@ -69,43 +78,43 @@ Use this command for uploading photos and videos from a local directory, a zippe
6978

7079
### Switches and options:
7180

72-
| **Parameter** | **Description** | **Default value** |
73-
|------------------------------------|----------------------------------------------------------------------------------------------------------------------------------|-------------------|
74-
| `-album "ALBUM NAME"` | Import assets into the Immich album `ALBUM NAME`. | |
75-
| `-dry-run` | Preview all actions as they would be done. | |
76-
| `-create-album-folder <bool>` | Generate immich albums after folder names. | `FALSE` |
77-
| `-force-sidecar <bool>` | Force sending a .xmp sidecar file beside images. With Google photos date and GPS coordinates are taken from metadata.json files. | `FALSE` |
78-
| `-create-stacks <bool>` | Stack jpg/raw or bursts. | `TRUE` |
79-
| `-stack-jpg-raw <bool>` | Control the stacking of jpg/raw photos. | `TRUE` |
80-
| `-stack-burst <bool>` | Control the stacking bursts. | `TRUE` |
81-
| `-select-types .ext,.ext,.ext...` | List of accepted extensions. |
82-
| `-exclude-types .ext,.ext,.ext...` | List of excluded extensions. |
83-
| <code>-when-no-date FILE&#124;NOW</code> | When the date of take can't be determined, use the FILE's date or the current time NOW. | `FILE` |
81+
| **Parameter** | **Description** | **Default value** |
82+
| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- |
83+
| `-album="ALBUM NAME"` | Import assets into the Immich album `ALBUM NAME`. | |
84+
| `-dry-run` | Preview all actions as they would be done. | `FALSE` |
85+
| `-create-album-folder>` | Generate immich albums after folder names. | `FALSE` |
86+
| `-force-sidecar ` | Force sending a .xmp sidecar file beside images. With Google photos date and GPS coordinates are taken from metadata.json files to creates an XMP file and. | `FALSE` |
87+
| `-create-stacks` | Stack jpg/raw or bursts. | `TRUE` |
88+
| `-stack-jpg-raw` | Control the stacking of jpg/raw photos. | `TRUE` |
89+
| `-stack-burst` | Control the stacking bursts. | `TRUE` |
90+
| `-select-types=".ext,.ext,.ext..."` | List of accepted extensions. | |
91+
| `-exclude-types=".ext,.ext,.ext..."` | List of excluded extensions. | |
92+
| `-when-no-date=FILE\|NOW` | When the date of take can't be determined, use the FILE's date or the current time NOW. | `FILE` |
8493

8594

8695
### Date selection:
8796
Fine-tune import based on specific dates:
8897

89-
| **Parameter** | **Description** |
90-
|-------------------------------|------------------------------------------------|
91-
| `-date YYYY-MM-DD` | import photos taken on a particular day. |
92-
| `-date YYYY-MM` | select photos taken during a particular month. |
93-
| `-date YYYY` | select photos taken during a particular year. |
98+
| **Parameter** | **Description** |
99+
| ------------------ | ---------------------------------------------- |
100+
| `-date=YYYY-MM-DD` | import photos taken on a particular day. |
101+
| `-date=YYYY-MM` | select photos taken during a particular month. |
102+
| `-date=YYYY` | select photos taken during a particular year. |
94103

95104

96105
### Google photos options:
97106
Specialized options for Google Photos management:
98107

99108
| **Parameter** | **Description** | **Default value** |
100-
|------------------------------------|----------------------------------------------------------------------------------|-------------------|
101-
| `-google-photos` | import from a Google Photos structured archive, recreating corresponding albums. |
102-
| `-from-album "GP Album"` | Create the album in `immich` and import album's assets. |
103-
| `-create-albums <bool>` | Controls creation of Google Photos albums in Immich. | `TRUE` |
104-
| `-keep-untitled-albums <bool>` | Untitled albums are imported into `immich` with the name of the folder as title. | `FALSE` |
105-
| `-use-album-folder-as-name <bool>` | Use the folder's name instead of the album title. | `FALSE` |
106-
| `-keep-partner <bool>` | Specifies inclusion or exclusion of partner-taken photos. | `TRUE` |
107-
| `-partner-album "partner's album"` | import assets from partner into given album. |
108-
| `-discard-archived <bool>` | don't import archived assets. | `FALSE` |
109+
| ---------------------------------- | -------------------------------------------------------------------------------- | ----------------- |
110+
| `-google-photos` | import from a Google Photos structured archive, recreating corresponding albums. | |
111+
| `-from-album="GP Album"` | Create the album in `immich` and import album's assets. | |
112+
| `-create-albums` | Controls creation of Google Photos albums in Immich. | `TRUE` |
113+
| `-keep-untitled-albums` | Untitled albums are imported into `immich` with the name of the folder as title. | `FALSE` |
114+
| `-use-album-folder-as-name` | Use the folder's name instead of the album title. | `FALSE` |
115+
| `-keep-partner` | Specifies inclusion or exclusion of partner-taken photos. | `TRUE` |
116+
| `-partner-album="partner's album"` | import assets from partner into given album. | |
117+
| `-discard-archived` | don't import archived assets. | `FALSE` |
109118

110119
Read [here](docs/google-takeout.md) to understand how Google Photos takeout isn't easy to handle.
111120

@@ -142,12 +151,12 @@ Use this command for analyzing the content of your `immich` server to find any f
142151
Before deleting the inferior copies, the system get all albums they belong to, and add the superior copy to them.
143152

144153
### Switches and options:
145-
| **Parameter** | **Description** | **Default value** |
146-
|----------------------------|-------------------------------------------------------------|-------------------------|
147-
| `-yes` | Assume Yes to all questions | `FALSE` |
148-
| `-date` | Check only assets have a date of capture in the given range | `1850-01-04,2030-01-01` |
149-
| `-ignore-tz-errors <bool>` | Ignore timezone difference when searching for duplicates | `FALSE` |
150-
| `-ignore-extension` | Ignore filetype extensions when searching for duplicates | `FALSE` |
154+
| **Parameter** | **Description** | **Default value** |
155+
| ------------------- | ----------------------------------------------------------- | ----------------------- |
156+
| `-yes` | Assume Yes to all questions | `FALSE` |
157+
| `-date` | Check only assets have a date of capture in the given range | `1850-01-04,2030-01-01` |
158+
| `-ignore-tz-errors` | Ignore timezone difference when searching for duplicates | `FALSE` |
159+
| `-ignore-extension` | Ignore filetype extensions when searching for duplicates | `FALSE` |
151160

152161
### Example Usage: clean the `immich` server after having merged a google photo archive and original files
153162

@@ -163,10 +172,10 @@ The possibility to stack images has been introduced with `immich` version 1.83.
163172
Let use it to group burst and jpg/raw images together.
164173

165174
### Switches and options:
166-
| **Parameter** | **Description** | **Default value** |
167-
|---------------|-------------------------------------------------------------|-------------------------|
168-
| `-yes` | Assume Yes to all questions | `FALSE` |
169-
| `-date` | Check only assets have a date of capture in the given range | `1850-01-04,2030-01-01` |
175+
| **Parameter** | **Description** | **Default value** |
176+
| ------------------ | ----------------------------------------------------------- | ----------------------- |
177+
| `-yes` | Assume Yes to all questions | `FALSE` |
178+
| `-date=date_range` | Check only assets have a date of capture in the given range | `1850-01-04,2030-01-01` |
170179

171180

172181
## Command `tool`

0 commit comments

Comments
 (0)