From b009ca410f182722be94c946ef2804ff81144d1d Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Fri, 17 Jan 2025 11:54:46 +0100 Subject: [PATCH] update readme --- README.md | 61 +++++++++++++++++++++++++++++-------------------------- flake.nix | 3 +-- 2 files changed, 33 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 1cd50fe..ef7d300 100644 --- a/README.md +++ b/README.md @@ -1,50 +1,53 @@ -Sing Alongs -=========== +# Sing Alongs -[Latest Releases](https://code.vanwa.ch/sebastian/sing-alongs/-/releases) +A collection of songs to play and sing. -Motivation ----------- +## Motivation I love to play the tin whistle and around 2012 I was looking for some sheet music. There are a lot of good resources out there but the one thing I have never found was a collection which was free (as in freedom) and usable for printing. And if something does not exist why not try and create it yourself? -At this point I discovered [Lilypond](http://www.lilypond.org/) a wonderful -project for music engraving. The best part is that it has support for embedding -its scores in LaTeX files so it is possible to get complex layouts without a -big hassle. As a programmer I instantly liked the approach because I did not -need a big editor but could just write text files which I then could manage -with something like [git](http://git-scm.com/). +At that point I discovered [Lilypond](http://www.lilypond.org/) a wonderful +project for music engraving and I started building. -Development ------------ +## Building -Main development happens at https://code.vanwa.ch/sebastian/sing-alongs. +Development happens at https://code.vanwa.ch/shu/sing-alongs. -Take a look at the command list in the makefile to see what you need for building. +### Prerequisites + +Either use the provided nix flake to take care of everything or ensure the +following is installed: + +- [lilypond](https://lilypond.org) +- a tex installation (for example [TeX Live](https://www.tug.org/texlive/)) with + the _pdfcrop_ and _pdfjam_ commands +- [gnu make](https://www.gnu.org/software/make/) (might work with other makes, + never tested it) +- _opusenc_ from [opus-tools](https://opus-codec.org/downloads/) +- a sound font, for example + [Fluid](https://member.keymusician.com/Member/FluidR3_GM/index.html) +- [timidity++](https://sourceforge.net/projects/timidity/) +- _pdftocairo_ from [poppler-utils](https://poppler.freedesktop.org/) The makefile defines multiple targets: -- pdfs: builds all songs as single pdfs (without lyrics for now) -- midis: builds the midi file for each song -- opus: converts the midi files into opus files -- book: concatenates the songs (with lyrics) to a songbook -- booklet: converts the songbook to a booklet fit for double sided flip printing +- opus: converts the song melodies to opus files for listening +- book: build a songbook as a pdf and additionaly generate a booklet fit for + double sided flip printing To build all just run `make` and it takes care of everything. -License Stuff -------------- +## License -I am still not quite clear on how this works. My understanding is that all these -songs already are in the public domain and there is no need to explicitly set a license. +My understanding is that all these songs already are in the public domain and +there is no need to explicitly set a license. -All copyrights that could arise from other sides (makefile or whatever) are waived -under [CC0](https://creativecommons.org/publicdomain/zero/1.0/). +All copyrights that could arise from other sides (makefile or whatever) are +waived under [CC0](https://creativecommons.org/publicdomain/zero/1.0/). -Contact -------- +## Contact -You can reach me at [sebastian@vanwa.ch](mailto:sebastian@vanwa.ch) +You can reach me at [shu@vanwa.ch](mailto:shu@vanwa.ch) diff --git a/flake.nix b/flake.nix index 4ad6209..4707ce0 100644 --- a/flake.nix +++ b/flake.nix @@ -17,8 +17,7 @@ with pkgs; mkShell { buildInputs = [ - texliveSmall - texlivePackages.pdfjam + texliveMedium lilypond-with-fonts poppler_utils gnumake