summaryrefslogtreecommitdiff
path: root/src/_projects/lonestar.html
blob: fd8897570ffdd0e024f0d02f951ac5e28e8b24d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
---
layout:  project
title:   LoneStar
date:    2018-07-01T00:00:00Z
langs:   Bash
license: AGPLv3
repo:    https://git.tyil.nl/tyil/lonestar
---

{% markdown %}
LoneStar is a simple program, written in Bash, to download and install [the
Rakudo Star Perl 6 distribution](https://rakudo.org). As of the moment of
writing this program, Rakudo Star Perl 6 binaries cannot easily be moved around
on the OS, making regular installation methods more troublesome than they ought
to be. To deal with the installation issue, I wrote LoneStar, to just take care
of it. I chose to use Bash to ensure it can run on a wide range of GNU+Linux
systems without much trouble.
{% endmarkdown %}

{% markdown %}
## Installation

LoneStar is given a `Makefile` which can take care of installation. However, it
does not _need_ to be installed if you just want to try it out first. I would
recommend installation anyway, in order to make easy use of the `init`
subcommand (which will update you `$PATH` to include the Perl 6 executables for
you).

You can clone the repo using git, and use `make` to install it:
{% endmarkdown %}

{% highlight sh %}
cd "$(mktemp -d)"
git clone https://gitlab.com/tyil/lonestar .
make DESTDIR=/usr/local install
{% endhighlight %}

{% markdown %}
Some shells will require you to _rehash the $PATH_. On Bash, this is done
using `hash -r`. Zsh users should run `rehash`. Other shell users may have to
consult their respective shell's manual. With newer shells, this is oftentimes
not necessary, though.

## Usage

You can invoke `lonestar` without any parameters to get a list of subcommands
it will accept, together with optional parameters. To just get the latest
Rakudo Star Perl 6 distribution installed, use the `install` subcommand.
{% endmarkdown %}

{% highlight sh %}
lonestar install
{% endhighlight %}

{% markdown %}
Once it has been installed, you can update your `$PATH` with `init`.
{% endmarkdown %}

{% highlight sh %}
eval $(lonestar init)
{% endhighlight %}

{% markdown %}
This will make sure the directory containing the `perl6` program will be
searched whenever you want to run a Perl 6 program. It also includes the
directory that contains all executable modules that have been installed.
Consequentally, this will make the module installer `zef` available to you.

You can confirm whether Perl 6 works by retrieving the current version.
{% endmarkdown %}

{% highlight sh %}
perl6 --version
{% endhighlight %}

If this command did not fail, you should be good to go!

{% markdown %}
## Issues and feedback

If you have any issues or feedback on this program, please contact me via any of
the channels listed on the homepage of my blog.
{% endmarkdown %}