diff options
Diffstat (limited to 'HACKING')
-rw-r--r-- | HACKING | 38 |
1 files changed, 23 insertions, 15 deletions
@@ -4,44 +4,52 @@ * Contributing -By far the easiest way to hack on pinentry-rofi is to develop using Guix: +By far the easiest way to hack on pinentry-rofi is to develop using +Guix: #+BEGIN_SRC bash # Obtain the source code cd /path/to/source-code - guix environment -l guix.scm - # In the new shell, run: - hall dist --execute && autoreconf -vif && ./configure && make check + guix build -f guix.scm #+END_SRC You can now hack this project's files to your heart's content, whilst -testing them from your `guix environment' shell. +testing them from Guix. -To try out any scripts in the project you can now use +To try out any scripts in the project, the easiest is just to install it to a guix profile. +Here is an example to install it to the default profile: #+BEGIN_SRC bash - ./pre-inst-env scripts/${script-name} + guix package -f guix.scm #+END_SRC -If you'd like to tidy the project again, but retain the ability to test the -project from the commandline, simply run: - -#+BEGIN_SRC bash - ./hall clean --skip "scripts/${script-name},pre-inst-env" --execute -#+END_SRC +Then when you're done simply roll back. This can also be used when +testing it against gpg-agent by following what is described in the +[[file:README.org][README]]. ** Manual Installation If you do not yet use Guix, you will have to install this project's dependencies manually: - autoconf + - autoconf-archive - automake - pkg-config - texinfo - - guile-hall Once those dependencies are installed you can run: #+BEGIN_SRC bash - hall dist -x && autoreconf -vif && ./configure && make check + autoreconf -vif && ./configure && make check #+END_SRC + +** Guile Hall + + The core of the gnu build system is generated by guile-hall. There + are some modifications done after that so avoid running + =hall clean -x= and =hall dist -x= as that will override those + changes. + + Right now I haven't figured out a good way of dealing with keeping + the version in sync between the different files, which what I + mainly used =hall= for. |