diff --git a/flake.nix b/flake.nix index 8343e1d..f12621e 100644 --- a/flake.nix +++ b/flake.nix @@ -15,6 +15,7 @@ overrides = final.lib.composeExtensions ( old.overrides or (_: _: {})) (f: p: rec { reddit-pub = f.callPackage ./reddit_pub {}; reddit-lib = f.callPackage ./reddit_lib {}; + reddit-tags = f.callPackage ./reddit_tags {}; }); } ); }; @@ -29,12 +30,13 @@ packages.reddit-pub = pkgs.haskell.lib.justStaticExecutables hp.reddit-pub; packages.reddit-pub-dhall = pkgs.dhallPackages.callPackage ./dhall.nix {}; + packages.reddit-tags = pkgs.haskell.lib.justStaticExecutables hp.reddit-tags; defaultPackage = packages.reddit-pub; devShell = hp.shellFor { - packages = h: [h.reddit-pub]; + packages = h: [h.reddit-pub h.reddit-tags]; withHoogle = true; buildInputs = with pkgs; [ dhall-lsp-server diff --git a/reddit_tags/CHANGELOG.md b/reddit_tags/CHANGELOG.md new file mode 100644 index 0000000..0ed378a --- /dev/null +++ b/reddit_tags/CHANGELOG.md @@ -0,0 +1,5 @@ +# Revision history for reddit-tags + +## 0.1.0.0 -- YYYY-mm-dd + +* First version. Released on an unsuspecting world. diff --git a/reddit_tags/app/Main.hs b/reddit_tags/app/Main.hs new file mode 100644 index 0000000..60d904e --- /dev/null +++ b/reddit_tags/app/Main.hs @@ -0,0 +1,8 @@ +module Main where + +import qualified MyLib (someFunc) + +main :: IO () +main = do + putStrLn "Hello, Haskell!" + MyLib.someFunc diff --git a/reddit_tags/default.nix b/reddit_tags/default.nix new file mode 100644 index 0000000..7e0a088 --- /dev/null +++ b/reddit_tags/default.nix @@ -0,0 +1,17 @@ +{ mkDerivation, aeson, amqp, base, lens, lens-aeson, lib, mtl +, reddit-lib, text +}: +mkDerivation { + pname = "reddit-tags"; + version = "0.1.0.0"; + src = ./.; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + aeson amqp base lens lens-aeson mtl reddit-lib text + ]; + executableHaskellDepends = [ base ]; + testHaskellDepends = [ base ]; + license = "unknown"; + hydraPlatforms = lib.platforms.none; +} diff --git a/reddit_tags/reddit-tags.cabal b/reddit_tags/reddit-tags.cabal new file mode 100644 index 0000000..4a27968 --- /dev/null +++ b/reddit_tags/reddit-tags.cabal @@ -0,0 +1,60 @@ +cabal-version: 3.0 +name: reddit-tags +version: 0.1.0.0 +synopsis: + +-- A longer description of the package. +-- description: +homepage: + +-- A URL where users can report bugs. +-- bug-reports: +license: NONE +author: Mats Rauhala +maintainer: mats.rauhala@iki.fi + +-- A copyright notice. +-- copyright: +category: Web +extra-source-files: CHANGELOG.md + +library + exposed-modules: MyLib + + -- Modules included in this library but not exported. + -- other-modules: + + -- LANGUAGE extensions used by modules in this package. + -- other-extensions: + build-depends: base ^>=4.15.1.0 + , amqp + , reddit-lib + , mtl + , text + , aeson + , lens + , lens-aeson + hs-source-dirs: src + default-language: Haskell2010 + +executable reddit-tags + main-is: Main.hs + + -- Modules included in this executable, other than Main. + -- other-modules: + + -- LANGUAGE extensions used by modules in this package. + -- other-extensions: + build-depends: + base ^>=4.15.1.0, + reddit-tags + + hs-source-dirs: app + default-language: Haskell2010 + +test-suite reddit-tags-test + default-language: Haskell2010 + type: exitcode-stdio-1.0 + hs-source-dirs: test + main-is: MyLibTest.hs + build-depends: base ^>=4.15.1.0 diff --git a/reddit_tags/src/MyLib.hs b/reddit_tags/src/MyLib.hs new file mode 100644 index 0000000..e657c44 --- /dev/null +++ b/reddit_tags/src/MyLib.hs @@ -0,0 +1,4 @@ +module MyLib (someFunc) where + +someFunc :: IO () +someFunc = putStrLn "someFunc" diff --git a/reddit_tags/test/MyLibTest.hs b/reddit_tags/test/MyLibTest.hs new file mode 100644 index 0000000..3e2059e --- /dev/null +++ b/reddit_tags/test/MyLibTest.hs @@ -0,0 +1,4 @@ +module Main (main) where + +main :: IO () +main = putStrLn "Test suite not yet implemented."