Skip to content

Install: HISHTORY_PATH should also handle absolute paths, install should be documented in usage-help and README. #276

@dezza

Description

@dezza
  1. HISHTORY_PATH=/home/user/ results in /home/user/home/user/...

I think its quite the anti-pattern that it doesn't handle absolute paths. Yes, it is documented, but it is atypical and opposite to any other program using ENV vars this way for paths. I'd also argue it would make code less complex if you didn't handle relative paths, but if insisting on this functionality one could have both by look for a / prefix to determine whether its an absolute path.

  1. install should be documented in usage-help.

hishtory -h

hiSHtory: Better shell history

Usage:
  hishtory [command]

History Searching
  export                  Export your shell history and display just the raw commands
  query                   Query your shell history and display the results in an ASCII art table
  tquery                  Interactively query your shell history in a TUI interface

History Management
  redact                  Query for matching commands and remove them from your shell history

Configuration
  config-add              Add a config option
  config-delete           Delete a config option
  config-get              Get the value of a config option
  config-set              Set the value of a config option
  disable                 Disable hiSHtory recording
  enable                  Enable hiSHtory recording
  init                    Re-initialize hiSHtory with a specified secret key

Additional Commands:
  completion              Generate the autocompletion script for the specified shell
  export-json             Export history entries formatted in JSON lines format (as accepted by hishtory import-json, and easily parsable by other tools)
  help                    Help about any command
  import-json             Import history entries formatted in JSON lines format into hiSHtory
  start-web-ui            Serve a basic web UI for interacting with your shell history
  status                  View status info including the secret key which is needed to sync shell history from another machine
  syncing                 Configure syncing to enable or disable syncing with the hishtory backend
  uninstall               Completely uninstall hiSHtory and remove your shell history
  update                  Securely update hishtory to the latest version

Flags:
  -h, --help      help for hishtory
  -v, --version   version for hishtory

Use "hishtory [command] --help" for more information about a command.

hishtory install -h

Copy this binary to ~/.hishtory/ and configure your shell to use it for recording your shell history

Usage:
  hishtory install [flags]

Flags:
      --currently-installed-version string   The currently installed version (used by the update command)
  -h, --help                                 help for install
      --offline                              Install hiSHtory in offline mode with all syncing capabilities disabled
      --skip-config-modification             Skip modifying shell configs and instead instruct the user on how to modify their configs
      --skip-update-config-modification      Skip modifying shell configs for updates
$ 
  1. Manual installation should be documented in README.

People should question and doubt any blackbox one-line installer and currently this is the only proposed option. I believe something like;

HISHTORY_PATH=.local/share/hishtory hishtory install --offline --skip-config-modification --skip-update-config-modification

Is what people are looking for, right after seeing the automatic installation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions