nix: update types
This commit is contained in:
12
flake.lock
generated
12
flake.lock
generated
@@ -5,11 +5,11 @@
|
|||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1694529238,
|
"lastModified": 1731533236,
|
||||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -20,11 +20,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1699562885,
|
"lastModified": 1779382422,
|
||||||
"narHash": "sha256-fb7RDv0ePGzayhGvkBh9NrilU3pCecgfbbTNPHprRfg=",
|
"narHash": "sha256-2IqhPb96JuOjxnZezkw+JZzXFpDnTlDqYk7D1nFOYKI=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "97b0ae26f7c8a1682b5437a64edcd73ab1798c9b",
|
"rev": "116d154ab4ec792dd6dfc1f5f5ff107fbed2eb65",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
57
flake.nix
57
flake.nix
@@ -10,20 +10,31 @@
|
|||||||
flake-utils.url = "github:numtide/flake-utils";
|
flake-utils.url = "github:numtide/flake-utils";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, flake-utils }:
|
outputs =
|
||||||
flake-utils.lib.eachDefaultSystem (system:
|
{
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
flake-utils,
|
||||||
|
}:
|
||||||
|
flake-utils.lib.eachDefaultSystem (
|
||||||
|
system:
|
||||||
let
|
let
|
||||||
pkgs = nixpkgs.legacyPackages.${system};
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
haskellPackages = pkgs.haskellPackages;
|
haskellPackages = pkgs.haskellPackages;
|
||||||
|
|
||||||
jailbreakUnbreak = pkg:
|
jailbreakUnbreak =
|
||||||
pkgs.haskell.lib.doJailbreak (pkg.overrideAttrs (_: { meta = { }; }));
|
pkg:
|
||||||
|
pkgs.haskell.lib.doJailbreak (
|
||||||
|
pkg.overrideAttrs (_: {
|
||||||
|
meta = { };
|
||||||
|
})
|
||||||
|
);
|
||||||
|
|
||||||
# DON'T FORGET TO PUT YOUR PACKAGE NAME HERE, REMOVING `throw`
|
# DON'T FORGET TO PUT YOUR PACKAGE NAME HERE, REMOVING `throw`
|
||||||
packageName = "quotes-api";
|
packageName = "quotes-api";
|
||||||
in {
|
in
|
||||||
packages.${packageName} = haskellPackages.callCabal2nix packageName self
|
{
|
||||||
rec {
|
packages.${packageName} = haskellPackages.callCabal2nix packageName self rec {
|
||||||
# Dependency overrides go here
|
# Dependency overrides go here
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,11 +42,19 @@
|
|||||||
defaultPackage = self.packages.${system}.default;
|
defaultPackage = self.packages.${system}.default;
|
||||||
|
|
||||||
nixosModules = {
|
nixosModules = {
|
||||||
quotes-api = { config, lib, pkgs, ... }:
|
quotes-api =
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
let cfg = config.services.quotes-api;
|
let
|
||||||
in {
|
cfg = config.services.quotes-api;
|
||||||
|
in
|
||||||
|
{
|
||||||
options.services.quotes-api = {
|
options.services.quotes-api = {
|
||||||
enable = mkEnableOption "Enables quotes api service";
|
enable = mkEnableOption "Enables quotes api service";
|
||||||
|
|
||||||
@@ -47,7 +66,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
dbpath = mkOption rec {
|
dbpath = mkOption rec {
|
||||||
type = types.string;
|
type = types.str;
|
||||||
default = "/tmp/sqlite.db";
|
default = "/tmp/sqlite.db";
|
||||||
example = default;
|
example = default;
|
||||||
description = "Path to sqlite database";
|
description = "Path to sqlite database";
|
||||||
@@ -59,12 +78,12 @@
|
|||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
serviceConfig =
|
serviceConfig =
|
||||||
let pkg = self.packages.${pkgs.system}.default;
|
let
|
||||||
in {
|
pkg = self.packages.${pkgs.system}.default;
|
||||||
|
in
|
||||||
|
{
|
||||||
Restart = "on-failure";
|
Restart = "on-failure";
|
||||||
ExecStart = "${pkg}/bin/quotes-api --port ${
|
ExecStart = "${pkg}/bin/quotes-api --port ${builtins.toString cfg.port} --dbpath ${cfg.dbpath}";
|
||||||
builtins.toString cfg.port
|
|
||||||
} --dbpath ${cfg.dbpath}";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -83,9 +102,9 @@
|
|||||||
ghc
|
ghc
|
||||||
cabal-install
|
cabal-install
|
||||||
];
|
];
|
||||||
inputsFrom =
|
inputsFrom = map (__getAttr "env") (__attrValues self.packages.${system});
|
||||||
map (__getAttr "env") (__attrValues self.packages.${system});
|
|
||||||
};
|
};
|
||||||
devShell = self.devShells.${system}.default;
|
devShell = self.devShells.${system}.default;
|
||||||
});
|
}
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import Data.Maybe (fromMaybe)
|
|||||||
import Api.Types (Quote(..))
|
import Api.Types (Quote(..))
|
||||||
|
|
||||||
showT :: Show a => a -> Text
|
showT :: Show a => a -> Text
|
||||||
showT = pack . show
|
showT = pack . Prelude.show
|
||||||
|
|
||||||
newtype KoPage = KoPage Text
|
newtype KoPage = KoPage Text
|
||||||
deriving (Eq, Generic)
|
deriving (Eq, Generic)
|
||||||
|
|||||||
Reference in New Issue
Block a user