summaryrefslogtreecommitdiff
path: root/src/_projects
diff options
context:
space:
mode:
Diffstat (limited to 'src/_projects')
-rw-r--r--src/_projects/assixt.md55
-rw-r--r--src/_projects/config.md7
-rw-r--r--src/_projects/dist-helper.md7
-rw-r--r--src/_projects/io-path-dirstack.md7
-rw-r--r--src/_projects/irc-client-plugin-github.md7
-rw-r--r--src/_projects/irc-client-plugin-ignore.md7
-rw-r--r--src/_projects/irc-client-plugin-nickserv.md7
-rw-r--r--src/_projects/irc-client-plugin-urltitle.md7
-rw-r--r--src/_projects/lonestar.html83
-rw-r--r--src/_projects/mpd-client.md7
-rw-r--r--src/_projects/musashi.md7
-rw-r--r--src/_projects/pod-to-pager.adoc102
-rw-r--r--src/_projects/scriptkitties-overlay.md7
-rw-r--r--src/_projects/string-fold.md7
-rw-r--r--src/_projects/subbot.md7
-rw-r--r--src/_projects/tachikoma.md8
16 files changed, 332 insertions, 0 deletions
diff --git a/src/_projects/assixt.md b/src/_projects/assixt.md
new file mode 100644
index 0000000..57db5b0
--- /dev/null
+++ b/src/_projects/assixt.md
@@ -0,0 +1,55 @@
+---
+layout: project
+title: Assixt
+date: 2017-07-01T00:00:00Z
+langs: Perl 6
+license: GPLv3
+repo: https://gitlab.com/tyil/perl6-app-assixt
+---
+
+`assixt`, or `App::Assixt`, is a Perl 6 module which I wrote in order to make
+it easier to write more Perl 6 modules. I also used it as a good project to get
+better with Perl 6 with. Nowadays, it's doing much more than I anticipated at
+the start of the project. I've turned it into a more complete solution for Perl
+6 projects in general.
+
+`assixt` can create new Perl 6 module skeletons, complete with `.gitignore`,
+basic CHANGELOG, Travis and GitLab CI configurations and more. It will also
+keep version numbers used accross your project in sync, create correct
+distribution tarballs and allows you to upload them to [CPAN][cpan] directly
+from the command line.
+
+I've given a presentation on this project at the 14th Dutch Perl Workshop, and
+the slides are available [on the Slides section of my site][slides] as well.
+
+## Installation
+
+To install `assixt`, you will need to have Perl 6 installed, and `zef`
+available as well. I recommend you use [Rakudo Star][rakudo] releases for
+these. If you're using GNU+Linux, you might want to take a look at
+[LoneStar][lonestar]. This is a Bash program that will fetch, unpack and
+compile Rakudo Star Perl 6 for you, including `zef` and a number of other
+common modules.
+
+If you have Perl 6 installed, simply invoke `zef` to install the module
+containing `assixt`:
+
+```sh
+zef install App::Assixt
+```
+
+## Support and feedback
+
+Check out `assixt --help` for an overview of what you can do with it. You can
+also check the README on the repository to get a more extensive overview of the
+possibilities, and some examples on how to use it.
+
+You can also create issues on the repository if you are still having trouble,
+or perhaps even found a bug. The `#perl6` channel on Freenode might also be of
+assistance, as I am almost always available in that channel (so long as I'm
+awake). You can report feedback through issues or IRC as well.
+
+[cpan]: https://www.cpan.org/
+[slides]: /slides/
+[lonestar]: /projects/lonestar/
+[rakudo]: https://rakudo.org/
diff --git a/src/_projects/config.md b/src/_projects/config.md
new file mode 100644
index 0000000..e3af2e9
--- /dev/null
+++ b/src/_projects/config.md
@@ -0,0 +1,7 @@
+---
+title: Config
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/p6-Config
+---
diff --git a/src/_projects/dist-helper.md b/src/_projects/dist-helper.md
new file mode 100644
index 0000000..73cab90
--- /dev/null
+++ b/src/_projects/dist-helper.md
@@ -0,0 +1,7 @@
+---
+title: Dist::Helper
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/perl6-dist-helper
+---
diff --git a/src/_projects/io-path-dirstack.md b/src/_projects/io-path-dirstack.md
new file mode 100644
index 0000000..240b206
--- /dev/null
+++ b/src/_projects/io-path-dirstack.md
@@ -0,0 +1,7 @@
+---
+title: IO::Path::Dirstack
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/perl6-io-path-dirstack
+---
diff --git a/src/_projects/irc-client-plugin-github.md b/src/_projects/irc-client-plugin-github.md
new file mode 100644
index 0000000..ef5f6d8
--- /dev/null
+++ b/src/_projects/irc-client-plugin-github.md
@@ -0,0 +1,7 @@
+---
+title: IRC::Client::Plugin::Github
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/perl6-IRC-Client-Plugin-Github
+---
diff --git a/src/_projects/irc-client-plugin-ignore.md b/src/_projects/irc-client-plugin-ignore.md
new file mode 100644
index 0000000..ce4fc17
--- /dev/null
+++ b/src/_projects/irc-client-plugin-ignore.md
@@ -0,0 +1,7 @@
+---
+title: IRC::Client::Plugin::Ignore
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/perl6-IRC-Client-Plugin-Ignore
+---
diff --git a/src/_projects/irc-client-plugin-nickserv.md b/src/_projects/irc-client-plugin-nickserv.md
new file mode 100644
index 0000000..b9363a5
--- /dev/null
+++ b/src/_projects/irc-client-plugin-nickserv.md
@@ -0,0 +1,7 @@
+---
+title: IRC::Client::Plugin::NickServ
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/perl6-IRC-Client-Plugin-NickServ
+---
diff --git a/src/_projects/irc-client-plugin-urltitle.md b/src/_projects/irc-client-plugin-urltitle.md
new file mode 100644
index 0000000..36a9e83
--- /dev/null
+++ b/src/_projects/irc-client-plugin-urltitle.md
@@ -0,0 +1,7 @@
+---
+title: IRC::Client::Plugin::UrlTitle
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/perl6-IRC-Client-Plugin-UrlTitle
+---
diff --git a/src/_projects/lonestar.html b/src/_projects/lonestar.html
new file mode 100644
index 0000000..fd88975
--- /dev/null
+++ b/src/_projects/lonestar.html
@@ -0,0 +1,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 %}
diff --git a/src/_projects/mpd-client.md b/src/_projects/mpd-client.md
new file mode 100644
index 0000000..eea593c
--- /dev/null
+++ b/src/_projects/mpd-client.md
@@ -0,0 +1,7 @@
+---
+title: MPD::Client
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/p6-MPD-Client
+---
diff --git a/src/_projects/musashi.md b/src/_projects/musashi.md
new file mode 100644
index 0000000..e59c8e9
--- /dev/null
+++ b/src/_projects/musashi.md
@@ -0,0 +1,7 @@
+---
+title: Musashi
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://github.com/scriptkitties/musashi
+---
diff --git a/src/_projects/pod-to-pager.adoc b/src/_projects/pod-to-pager.adoc
new file mode 100644
index 0000000..ca1af10
--- /dev/null
+++ b/src/_projects/pod-to-pager.adoc
@@ -0,0 +1,102 @@
+---
+layout: project
+title: Pod::To::Pager
+date: 2018-07-15T00:00:00Z
+langs: Perl 6
+license: AGPLv3
+repo: https://gitlab.com/tyil/perl6-pod-to-pager
+---
+:toc: preamble
+
+`Pod::To::Pager` is a Perl 6 project to generate prettier output from Perl 6
+Pod structures. By default, Perl 6 ships with a very simple Pod formatter,
+which can be used by calling `perl6 --doc <file>`. You can specify a doc
+formatter by giving it as argument, like `perl6 --doc=Text <file>`. This will
+use the `Pod::To::Text` module to format the output, which is also the default.
+
+But, I wanted something prettier, something I would actually like reading if I
+were looking for documentation on a module. Most people are familiar with UNIX
+man pages (or at least, most people who will read, this I hope). So I wanted to
+create something similar. To get used to Perl 6 Pod, I just tried making simple
+text, with some coloring, as this is easier than also trying to learn how man
+pages are to be created.
+
+And so, `Pod::To::Pager` was born. I've received some feedback from the Perl 6
+community, and included some of it in to the module. It comes with a `p6man`
+utility, which is very much like `p6doc`. It calls the formatter, and calls a
+pager to show the result. It looks very much like the UNIX man pages, and the
+pager lets you read it like one. It's basically an on-the-fly generated man
+page.
+
+== Installation
+
+To install the module, be sure to have Perl 6 and `zef`, the Perl 6 module
+manager, installed on your system. You can then call `zef install` to have it
+download, test, and install the module:
+
+[source,sh]
+----
+zef install Pod::To::Pager
+----
+
+== Usage
+
+Once installed, you can use the module in many ways. You can call it as a Pod
+formatter on Perl 6 itself:
+
+[source,sh]
+----
+perl6 --doc=Pager lib/Some/Module.pm6
+----
+
+This will render the document on `STDOUT`, and display it in your terminal. If
+it doesn't support scrollback, there's a high chance you can't see the top part
+of it. To solve that, you can use a pager, like `less`:
+
+[source,sh]
+----
+perl6 --doc=Pager lib/Some/Module.pm6 | less
+----
+
+This will keep it possible to scroll through the output, until you press `q` to
+quit the pager.
+
+=== p6man
+
+Since the last form is the way it was intended to be used (hence the *pager* in
+`Pod::To::Pager`), there's a utility bundled with the module to make such use
+easier. Inspired by the existence of `p6doc`, it's called `p6man`. It will use
+`less` as the pager on GNU+Linux if possible, otherwise it will fall back to
+`more`. On Windows, it will just use `more`. You can call it with either a
+(relative) file path, or a module name:
+
+[source,sh]
+----
+p6man lib/Some/Module.pm6
+p6man App::Assixt
+----
+
+For the latter variant to work, the module must be installed locally.
+
+=== In Perl 6 programs
+
+You can also use it directly in Perl 6 programs. This allows you to change
+behaviour of the formatting process, or render the program's own documentation
+with this formatter's output. To do that, `use` the module, and call the
+`format` method on the formatter class:
+
+[source,perl6]
+----
+use Pod::To::Pager;
+
+say Pod::To::Pager($=pod);
+----
+
+This will render the program's own Pod structure, formatted using
+`Pod::To::Pager`, and print it to `STDOUT`.
+
+== Feedback
+
+If you have any feedback, please reach out to me on `#perl6` on IRC, or create
+an issue on the repository.
+
diff --git a/src/_projects/scriptkitties-overlay.md b/src/_projects/scriptkitties-overlay.md
new file mode 100644
index 0000000..cede5a6
--- /dev/null
+++ b/src/_projects/scriptkitties-overlay.md
@@ -0,0 +1,7 @@
+---
+title: Scriptkitties Overlay
+date: 2017-01-01T00:00:00Z
+langs: Bash
+license: GPLv2+
+repo: https://c.darenet.org/scriptkitties/overlay
+---
diff --git a/src/_projects/string-fold.md b/src/_projects/string-fold.md
new file mode 100644
index 0000000..60f9cc3
--- /dev/null
+++ b/src/_projects/string-fold.md
@@ -0,0 +1,7 @@
+---
+title: String::Fold
+date: 2017-01-01 00:00:00
+langs: Perl 6
+license: GPLv3
+repo: https://gitlab.com/tyil/perl6-string-fold
+---
diff --git a/src/_projects/subbot.md b/src/_projects/subbot.md
new file mode 100644
index 0000000..79eb26a
--- /dev/null
+++ b/src/_projects/subbot.md
@@ -0,0 +1,7 @@
+---
+title: SubBot
+date: 2017-01-01 00:00:00
+langs: Lua
+license: GPLv2
+repo: https://c.darenet.org/tyil/subbot
+---
diff --git a/src/_projects/tachikoma.md b/src/_projects/tachikoma.md
new file mode 100644
index 0000000..beb03d0
--- /dev/null
+++ b/src/_projects/tachikoma.md
@@ -0,0 +1,8 @@
+---
+title: Tachikoma
+date: 2017-01-01 00:00:00
+langs: Ruby
+license: GPLv3
+repo: https://c.darenet.org/scriptkitties/tachikoma
+---
+