From 3c3f4f7992ed98ebc7fc0d96169d6d2283cb5386 Mon Sep 17 00:00:00 2001 From: Saku Laesvuori Date: Wed, 24 Jan 2024 18:53:55 +0200 Subject: [PATCH] =?UTF-8?q?M=C3=A4=C3=A4rit=C3=A4=20Guix-kanava?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .guix-authorizations | 4 ++ .guix-channel | 4 ++ .guix/modules/laskutin-package.scm | 99 ++++++++++++++++++++++++++++ guix.scm | 100 +---------------------------- 4 files changed, 108 insertions(+), 99 deletions(-) create mode 100644 .guix-authorizations create mode 100644 .guix-channel create mode 100644 .guix/modules/laskutin-package.scm mode change 100644 => 120000 guix.scm diff --git a/.guix-authorizations b/.guix-authorizations new file mode 100644 index 0000000..60d20ba --- /dev/null +++ b/.guix-authorizations @@ -0,0 +1,4 @@ +(authorizations + (version 0) + (("A0C9 1947 734F 076F 5F08 E9FF 257D 284A 2A1D 3A32" + (name "Saku Laesvuori")))) diff --git a/.guix-channel b/.guix-channel new file mode 100644 index 0000000..8262298 --- /dev/null +++ b/.guix-channel @@ -0,0 +1,4 @@ +(channel + (version 0) + (url "https://git.datat.fi/ry/laskutin") + (directory ".guix/modules")) diff --git a/.guix/modules/laskutin-package.scm b/.guix/modules/laskutin-package.scm new file mode 100644 index 0000000..5b337b7 --- /dev/null +++ b/.guix/modules/laskutin-package.scm @@ -0,0 +1,99 @@ +(define-module (laskutin-package) + #:use-module (guix) + #:use-module (guix build-system haskell) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (gnu packages haskell) + #:use-module (gnu packages haskell-check) + #:use-module (gnu packages haskell-xyz)) + +(define-public laskutin + (package + (name "laskutin") + (version "0.0.1") + (source (local-file "../.." "laskutin-checkout" + #:recursive? #t)) + (build-system haskell-build-system) + (inputs (list ghc-cassava + ghc-lens + ghc-optparse-applicative + ghc-purebred-email)) + (home-page "https://git.datat.fi/ry/laskutin") + (synopsis "Simple mass invoicing program based on email and CSV") + (description "Laskutin is a simple program for sending and managing lots +invoices. Invoices are defined as rows in a CSV file and all state is stored +back into the file.") + (license license:agpl3+))) + +;;; ghc-purebred-email + +(define ghc-concise + (package + (name "ghc-concise") + (version "0.1.0.1") + (source (origin + (method url-fetch) + (uri (hackage-uri "concise" version)) + (sha256 + (base32 + "09crgc6gjfidlad6263253xx1di6wfhc9awhira21s0z7rddy9sw")))) + (build-system haskell-build-system) + (properties '((upstream-name . "concise"))) + (inputs (list ghc-lens)) + (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-quickcheck + ghc-quickcheck-instances)) + (home-page "https://github.com/frasertweedale/hs-concise") + (synopsis "Utilities for Control.Lens.Cons") + (description + "concise provides a handful of functions to extend what you can do with + Control.Lens.Cons.") + (license license:bsd-3))) + +(define ghc-purebred-email + (package + (name "ghc-purebred-email") + (version "0.6.0.1") + (source (origin + (method url-fetch) + (uri (hackage-uri "purebred-email" version)) + (sha256 + (base32 + "0gdzdbxgsyps8hqd903bsyja0cr6kbklkicvma62q48wv0y7230j")))) + (build-system haskell-build-system) + (properties '((upstream-name . "purebred-email"))) + (inputs (list ghc-attoparsec + ghc-case-insensitive + ghc-lens + ghc-base64-bytestring + ghc-concise + ghc-random + ghc-semigroupoids + ghc-stringsearch)) + (native-inputs (list ghc-tasty + ghc-tasty-hedgehog + ghc-tasty-quickcheck + ghc-tasty-hunit + ghc-tasty-golden + ghc-hedgehog + ghc-quickcheck-instances)) + (home-page "https://github.com/purebred-mua/purebred-email") + (synopsis "types and parser for email messages (including MIME)") + (description + "The purebred email library. RFC 5322, MIME, etc. See \"Data.MIME\" for usage, +examples and API documentation. . This is a general-purpose library for +processing and constructing email messages, originally written to meet the needs +of . Transmission and +delivery of mail are not part of this library, but /purebred-email/ could be a +useful building block for such systems. . Features and implemented +specifications include: . - +message parsing and serialisation - MIME multipart messages +() - Convenient APIs for replying +and forward/bounce - Content transfer and charset decoding/encoding - MIME +message header extensions for non-ASCII text +() - MIME parameter value and +encoded word extensions () - +@@Content-Disposition@@ header field () - Address syntax in @@From@@ and @@Sender@@ fields + ()") + (license license:agpl3+))) + +laskutin diff --git a/guix.scm b/guix.scm deleted file mode 100644 index 0173747..0000000 --- a/guix.scm +++ /dev/null @@ -1,99 +0,0 @@ -(define-module (laskutin-package) - #:use-module (guix) - #:use-module (guix build-system haskell) - #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix packages) - #:use-module (gnu packages haskell) - #:use-module (gnu packages haskell-check) - #:use-module (gnu packages haskell-xyz)) - -(define-public laskutin - (package - (name "laskutin") - (version "0.0.1") - (source (local-file "." "laskutin-checkout" - #:recursive? #t)) - (build-system haskell-build-system) - (inputs (list ghc-cassava - ghc-lens - ghc-optparse-applicative - ghc-purebred-email)) - (home-page "https://git.datat.fi/ry/laskutin") - (synopsis "Simple mass invoicing program based on email and CSV") - (description "Laskutin is a simple program for sending and managing lots -invoices. Invoices are defined as rows in a CSV file and all state is stored -back into the file.") - (license license:agpl3+))) - -;;; ghc-purebred-email - -(define ghc-concise - (package - (name "ghc-concise") - (version "0.1.0.1") - (source (origin - (method url-fetch) - (uri (hackage-uri "concise" version)) - (sha256 - (base32 - "09crgc6gjfidlad6263253xx1di6wfhc9awhira21s0z7rddy9sw")))) - (build-system haskell-build-system) - (properties '((upstream-name . "concise"))) - (inputs (list ghc-lens)) - (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-quickcheck - ghc-quickcheck-instances)) - (home-page "https://github.com/frasertweedale/hs-concise") - (synopsis "Utilities for Control.Lens.Cons") - (description - "concise provides a handful of functions to extend what you can do with - Control.Lens.Cons.") - (license license:bsd-3))) - -(define ghc-purebred-email - (package - (name "ghc-purebred-email") - (version "0.6.0.1") - (source (origin - (method url-fetch) - (uri (hackage-uri "purebred-email" version)) - (sha256 - (base32 - "0gdzdbxgsyps8hqd903bsyja0cr6kbklkicvma62q48wv0y7230j")))) - (build-system haskell-build-system) - (properties '((upstream-name . "purebred-email"))) - (inputs (list ghc-attoparsec - ghc-case-insensitive - ghc-lens - ghc-base64-bytestring - ghc-concise - ghc-random - ghc-semigroupoids - ghc-stringsearch)) - (native-inputs (list ghc-tasty - ghc-tasty-hedgehog - ghc-tasty-quickcheck - ghc-tasty-hunit - ghc-tasty-golden - ghc-hedgehog - ghc-quickcheck-instances)) - (home-page "https://github.com/purebred-mua/purebred-email") - (synopsis "types and parser for email messages (including MIME)") - (description - "The purebred email library. RFC 5322, MIME, etc. See \"Data.MIME\" for usage, -examples and API documentation. . This is a general-purpose library for -processing and constructing email messages, originally written to meet the needs -of . Transmission and -delivery of mail are not part of this library, but /purebred-email/ could be a -useful building block for such systems. . Features and implemented -specifications include: . - -message parsing and serialisation - MIME multipart messages -() - Convenient APIs for replying -and forward/bounce - Content transfer and charset decoding/encoding - MIME -message header extensions for non-ASCII text -() - MIME parameter value and -encoded word extensions () - -@@Content-Disposition@@ header field () - Address syntax in @@From@@ and @@Sender@@ fields - ()") - (license license:agpl3+))) - -laskutin diff --git a/guix.scm b/guix.scm new file mode 120000 index 0000000..9f340f5 --- /dev/null +++ b/guix.scm @@ -0,0 +1 @@ +.guix/modules/laskutin-package.scm \ No newline at end of file