README.md 3.32 KB
Newer Older
David Seaward's avatar
David Seaward committed
1 2
# Shipwright

David Seaward's avatar
David Seaward committed
3
[project] | [code] | [tracker] | [wiki]
David Seaward's avatar
David Seaward committed
4

5 6 7 8 9 10 11 12 13 14 15 16 17 18
*Shipwright* is a toolkit for developers assembling a Liberty Deckplan
Host (LDH). These tools are not suitable for production use.

## Install from source

Shipwright tools are intended to be run from source via the
`shipwright` command, which can be installed as follows:

```
git clone https://source.puri.sm/liberty/ldh_developer.git
cd ldh_developer
./bootstrap
```

19 20
You should now be able to call `shipwright list` from the command
prompt. If not, see **Troubleshooting**.
David Seaward's avatar
David Seaward committed
21 22 23

## Instructions

24 25 26 27
To see available tools, call `shipwright list`

To get help on a particular tool, call `shipwright help TOOL`.
For example, `shipwright help shipyard`.
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66

Instructions for other tools are found on the Shipwright [wiki].

## Creating a new tool

Every new tool should be made up of:

* its own folder, including a `README.md` file
* at least one entry in the `bin` folder

## Troubleshooting

If you can't call `shipwright` from the command line, follow these
steps and report a bug at the step that you encounter a failure.

1. Check that the file `~/.local/bin/shipwright` exists. It should be
   a working symlink to `ldh_developer/shipwright` in the folder where
   you cloned the Git repository. If you have moved that folder,
   simply run `./bootstrap` again to recreate the symlink.

2. Check your $PATH. If you invoke `echo $PATH` the result should
   include `~/.local/bin` (in expanded form). If it doesn't...

3. Restart your session, it may not have existed at the beginning of
   your sesssion. If it still doesn't appear...

4. Check `~/.profile`, add a clause like the one below, and restart
   your session...

        # set PATH so it includes user's private bin if it exists
        if [ -d "$HOME/.local/bin" ] ; then
            PATH="$HOME/.local/bin:$PATH"
        fi

5. If you still can't call `shipwright`, make a note of your distro
   version and shell version and report an upstream query, asking
   how to add `~/.local/bin/` to your $PATH. If upstream cannot help,
   create an issue in the Shipwright [tracker] and reference the
   upstream query.
David Seaward's avatar
David Seaward committed
67

68 69 70
If you can call `shipwright` from the command line and encounter a
problem while doing so, please create an issue in the Shipwright
[tracker].
David Seaward's avatar
David Seaward committed
71

David Seaward's avatar
David Seaward committed
72
## Sharing and contributions
73 74 75 76 77 78 79 80
<!-- 
    Please, don't remove the trailing spaces at the end of each line here,
    it's a cheap way to get newlines in markdown. 
-->
Shipwright (LDH developer)  
<https://source.puri.sm/liberty/ldh_developer>   
Copyright 2018 Purism SPC  
SPDX-License-Identifier: AGPL-3.0-or-later  
David Seaward's avatar
David Seaward committed
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96

Shared under AGPL-3.0-or-later. We adhere to the Community Covenant
1.0 without modification, and certify origin per DCO 1.1 with a
signed-off-by line. Contributions under the same terms are welcome.

For details see:

* [COPYING.AGPL.md], full license text
* [CODE_OF_CONDUCT.md], full conduct text
* [CONTRIBUTING.DCO.md], full origin text

<!-- Links -->

[project]: https://source.puri.sm/liberty/ldh_developer
[code]: https://source.puri.sm/liberty/ldh_developer/tree/master
[tracker]: https://source.puri.sm/liberty/ldh_developer/issues
David Seaward's avatar
David Seaward committed
97
[wiki]: https://source.puri.sm/liberty/ldh_developer/wikis/home
David Seaward's avatar
David Seaward committed
98 99 100 101 102 103
[SETUP.md]: SETUP.md
[COPYING.AGPL.md]: COPYING.AGPL.md
[CODE_OF_CONDUCT.md]: CODE_OF_CONDUCT.md
[CONTRIBUTING.DCO.md]: CONTRIBUTING.DCO.md
[COPYING.md]: COPYING.md
[CONTRIBUTING.md]: CONTRIBUTING.md