dosapp

command module
v0.0.0-...-28531d7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 10, 2024 License: MIT Imports: 1 Imported by: 0

README

dosapp

Manage DOSBox apps.

Install

First, make sure you have all the dependencies installed:

  • DosBox-X (or DOSBox with configuration)
  • go-task
  • bash - dosapp executes tasks using a shell
  • curl
  • 7zz - Packages currently only work with .7z files, but having unzip and tar are probably good ideas as well

Then, install dosapp:

go install github.com/jfhbrook/dosapp@latest

Getting Started

To get started, run:

dosapp config

This will generate the initial configuration.

Environment Variables

dosapp is configured through dotenv files and environment variables. The following environment variables are respected:

Mount Locations
  • DOSAPP_DISK_HOME: The base location for your dosapp disks. Some apps may create custom disks under this location.
  • DOSAPP_DISK_A: The standard location for the A drive.
  • DOSAPP_DISK_B: The standard location for the B drive.
  • DOSAPP_DISK_C: The standard location for the C drive. Many apps will require this mount to function.
External Binaries
  • DOSAPP_DOSBOX_BIN: The location of the DOSBox binary. Defaults to dosbox-x, which has more features than DOSBox. However, this may be overwritten in cases where vanilla DOSBox is more reliable, or is what's installed.
  • DOSAPP_7Z_BIN: The location of the 7z/7zz binary. The default is 7zz.
  • EDITOR: The editor to use for editing dotenv files. This is commonly set to vi.
  • PAGER: The pager to use for viewing READMEs. Defaults to cat, but is commonly set to less.
Runtime Directory Locations

These directories are typically configured to match the XDG spec, but may be overwritten.

  • DOSAPP_STATE_HOME: The location to store non-critical app state. Defaults to ~/.local/state/dosapp.
  • DOSAPP_CACHE_HOME: The location to store cached app data. Defaults to ~/.cache/dosapp.
  • DOSAPP_LINK_HOME: The location to place bin scripts for apps. Defaults to ~/.local/bin.
  • DOSAPP_DOWNLOAD_HOME: The location to store downloads. Defaults to ~/.cache/dosapp/downloads, and respects DOSAPP_CACHE_HOME.
Other
  • DEBUG: Set to 1 to enable debug logging.

Usage

Start DOSBox

To start DOSBox with the standard configuration and mounts, run:

dosapp
Install an App

To install an app, run:

dosapp install [APP_NAME]
Start an App

To start an installed app with app-specific configuration and mounts, run:

dosapp start [APP_NAME]
Create a Bin Script for an App

To create scripts for your installed app, run dosapp link [APP_NAME]. For example, to create a wp script that launches WordPerfect:

dosapp link wordperfect
Remove the App

To remove an app from your install, clean up any links and remove the configuration, run:

dosapp remove [APP_NAME]

Packages

Here's a list of packages:

Development

This project contains a Taskfile, with two tasks:

  • task check - Run shellcheck against the shell scripts in the project.
  • task install - Symlink ./bin/dosapp to ~/.local/bin/dosapp.

License

I'm releasing this under an MIT license. See LICENSE for details.

Documentation

Overview

Copyright © 2024 Josh Holbrook <josh.holbrook@gmail.com>

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL