Rename project to docspell-cli

This commit is contained in:
Jan Bader
2026-07-19 20:28:05 +02:00
parent 9b5a9899b8
commit fc499af504
5 changed files with 15 additions and 22 deletions
+8 -8
View File
@@ -1,4 +1,4 @@
# Docspell Import # Docspell CLI
Ein Tool zum Aufräumen des Docspell-Importverzeichnisses und zum automatischen Archivieren von bestätigten Dokumenten. Ein Tool zum Aufräumen des Docspell-Importverzeichnisses und zum automatischen Archivieren von bestätigten Dokumenten.
@@ -16,23 +16,23 @@ Das Programm:
- [Docspell Command Line Client (dsc)](https://docspell.org/docs/tools/cli/) - [Docspell Command Line Client (dsc)](https://docspell.org/docs/tools/cli/)
- `jq` Kommandozeilentool - `jq` Kommandozeilentool
- Eine Konfigurationsdatei unter `~/docspell-import.json` - Eine Konfigurationsdatei unter `~/docspell-cli.json`
## Konfiguration ## Konfiguration
Erstellen Sie eine `docspell-import.json` Datei in Ihrem Home-Verzeichnis: [Beispiel-Konfiguration](./docspell-import-example.json) Erstellen Sie eine `docspell-cli.json` Datei in Ihrem Home-Verzeichnis: [Beispiel-Konfiguration](./docspell-cli-example.json)
## Read-only FUSE mount ## Read-only FUSE mount
The `mount` subcommand exposes a Docspell collection as a read-only filesystem. The `mount` subcommand exposes a Docspell collection as a read-only filesystem.
It uses the same `~/docspell-import.json` configuration and password command as the import command. It uses the same `~/docspell-cli.json` configuration and password command as the import command.
Set `mountPath` in the config to define the default mount point and `mountQuery` to define the default Docspell query. Set `mountPath` in the config to define the default mount point and `mountQuery` to define the default Docspell query.
```bash ```bash
mkdir -p ~/mnt/docspell mkdir -p ~/mnt/docspell
docspell-import mount ~/mnt/docspell # starts in the background docspell-cli mount ~/mnt/docspell # starts in the background
# or, with mountPath configured: # or, with mountPath configured:
docspell-import mount docspell-cli mount
# unmount when done # unmount when done
fusermount -u ~/mnt/docspell fusermount -u ~/mnt/docspell
``` ```
@@ -54,8 +54,8 @@ The mount is read-only. File contents are downloaded lazily from `/api/v1/sec/at
Helper commands: Helper commands:
```bash ```bash
docspell-import get-local-path <item-id-or-web-url> docspell-cli get-local-path <item-id-or-web-url>
docspell-import get-url <local-mounted-path-or-item-id> docspell-cli get-url <local-mounted-path-or-item-id>
``` ```
`get-local-path` starts the configured mount in the background if it is not mounted yet. `get-local-path` starts the configured mount in the background if it is not mounted yet.
+1 -1
View File
@@ -1,4 +1,4 @@
module git.javil.eu/jacob1123/docspell-import module git.javil.eu/jacob1123/docspell-cli
go 1.23.4 go 1.23.4
+1 -8
View File
@@ -62,13 +62,6 @@ func main() {
return return
} }
fmt.Println("##################### START #####################")
fmt.Println(" Docspell Import - v0.3")
fmt.Println(" by jacob1123")
fmt.Println(" (based on work by totti4ever) ")
fmt.Println("#################################################")
fmt.Println()
runImportCommand(cfg, password, os.Args[1:]) runImportCommand(cfg, password, os.Args[1:])
} }
@@ -79,7 +72,7 @@ func loadConfigAndPassword() (config, string) {
os.Exit(1) os.Exit(1)
} }
configFile := filepath.Join(homeDir, "docspell-import.json") configFile := filepath.Join(homeDir, "docspell-cli.json")
configData, err := os.ReadFile(configFile) configData, err := os.ReadFile(configFile)
if err != nil { if err != nil {
fmt.Println("Error reading config file:", err) fmt.Println("Error reading config file:", err)
+5 -5
View File
@@ -53,7 +53,7 @@ func runMountCommand(args []string, cfg config, password string) error {
if mountPoint == "" { if mountPoint == "" {
return fmt.Errorf("mount point missing: pass one or set MountPath in config") return fmt.Errorf("mount point missing: pass one or set MountPath in config")
} }
if os.Getenv("DOCSPELL_IMPORT_MOUNT_FOREGROUND") != "1" { if os.Getenv("DOCSPELL_CLI_MOUNT_FOREGROUND") != "1" {
return startMountInBackground(args, mountPoint, false) return startMountInBackground(args, mountPoint, false)
} }
if err := os.MkdirAll(mountPoint, 0755); err != nil { if err := os.MkdirAll(mountPoint, 0755); err != nil {
@@ -73,7 +73,7 @@ func runMountCommand(args []string, cfg config, password string) error {
conn, err := fuse.Mount( conn, err := fuse.Mount(
mountPoint, mountPoint,
fuse.FSName("docspell"), fuse.FSName("docspell"),
fuse.Subtype("docspell-import"), fuse.Subtype("docspell-cli"),
fuse.ReadOnly(), fuse.ReadOnly(),
) )
if err != nil { if err != nil {
@@ -94,7 +94,7 @@ func startMountInBackground(args []string, mountPoint string, quiet bool) error
return nil return nil
} }
cmd := exec.Command(os.Args[0], append([]string{"mount"}, args...)...) cmd := exec.Command(os.Args[0], append([]string{"mount"}, args...)...)
cmd.Env = append(os.Environ(), "DOCSPELL_IMPORT_MOUNT_FOREGROUND=1") cmd.Env = append(os.Environ(), "DOCSPELL_CLI_MOUNT_FOREGROUND=1")
logFile, err := mountLogFile() logFile, err := mountLogFile()
if err != nil { if err != nil {
return err return err
@@ -226,9 +226,9 @@ func cleanMountPath(path string) string {
func mountLogPath() string { func mountLogPath() string {
cacheDir, err := os.UserCacheDir() cacheDir, err := os.UserCacheDir()
if err != nil || cacheDir == "" { if err != nil || cacheDir == "" {
return filepath.Join(os.TempDir(), "docspell-import-mount.log") return filepath.Join(os.TempDir(), "docspell-cli-mount.log")
} }
return filepath.Join(cacheDir, "docspell-import", "mount.log") return filepath.Join(cacheDir, "docspell-cli", "mount.log")
} }
func mountLogFile() (*os.File, error) { func mountLogFile() (*os.File, error) {