"you are not privileged to build input-addressed derivations"
Explanation: https://nixos.org/manual/nix/unstable/installation/multi-user.html
Edit /etc/nix/nix.conf
{ | |
"[haskell]": { | |
"editor.defaultFormatter": "jkillian.custom-local-formatters" | |
}, | |
"customLocalFormatters.formatters": [ | |
{ | |
"command": "fourmolu --stdin-input-file ${file}", | |
"languages": ["haskell"] | |
} | |
] |
{ pkgs, config, ... }: | |
{ | |
/* XMPP */ | |
services.prosody = { | |
enable = true; | |
xmppComplianceSuite = false; | |
virtualHosts."internal" = { |
"you are not privileged to build input-addressed derivations"
Explanation: https://nixos.org/manual/nix/unstable/installation/multi-user.html
Edit /etc/nix/nix.conf
[ | |
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDFJ4UYsEh+JZQGCMdbNrKfjH1F3rwKBRewwgaehwnijBADYSJ8iwDZji09vVfCxSQSMjZJS54mEBtjcOBOpM7+mR585wI6jhsfdsNqNwzJdxV47Bi4jAkg7XlWf9IYv7EUhRzsKGdoSqefh/7bN6MPcJQ9ccHKqBxtmGJ6eHfgLmgnb8+ozwDlwQKz5QDtdEnt8TUqucUB4AOyReBV7GRnwkTyGCForb5nhTftuVi7GO1qApJKBIpYlC1gbuCWDX9CIl7IzfAMyng6u6Ty9x31ZWKA0sJzRIX5cw3e8Ct7sWzZB3O/2FOwjyYadqTRQdR472Dz/f6mqqIl1ioxzfXRfh33bREg2opLc6bnYaWTXY6aAc5/wUbC7z4CTKBGZJHxY5mrRSlpQ2Rn8EvgyyxgxokLdTZqoiKw/tSmE9Mlle5JGh+m8agGe41dszZxBf41j/ORE+N5p0k02fvUWuG0PL3aFE77qUbOgxxXOYMtBV0YiJPzeBXDGrkW1wqKC2voJ6PuCZWOHaLxDqkUDgAMYyGMKoj5C53OZneVeSMgZG+/lxygAduyBx/RfQYrt4WsPfPnhl95Kxx8PTYuFfLXmcMNMhZ7rYW+Thvo40W+VjiqTUSCxLHr16SFSOj2mGl0A29VPPHA3H+ckprCo8pldPo3AYrwkV/zHlyLjuEQfQ== renzo-1" | |
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDAu0nM8baJOgaBB44w/rCczNK7pST0b/B3isYtqYw8QI2nqkmp4zddAFTjqL/zyVgIC+I2iIINVdQrC6jRWWZc82VRBzHjUtcz3sPppkLvZvfVupSXli1bDtnKNLA73bGr+odZFyR2zWsgcPwpGkzaWotGVhsW/F/2J+6HwG/D+9pWTlFAPwK/OV2J3axdnWWcihXjMIWT5/5ksOPqQWUBQnrQDQt2Rtw+3Qg36UlAOQgj2SMmM |
dir=$(mktemp -d dist-docs.XXXXXX) | |
cabal configure --builddir="$dir" | |
cabal haddock --builddir="$dir" --haddock-for-hackage --haddock-option=--hyperlinked-source | |
cabal upload --publish -d $dir/*-docs.tar.gz |
{-# language NoImplicitPrelude, ScopedTypeVariables, TypeApplications #-} | |
import Relude | |
import Control.Monad.Trans.Resource | |
import List.Transformer | |
class Run f where | |
run :: f a -> IO () | |
instance Run IO where |
import qualified Text.Megaparsec as P | |
import qualified Text.Megaparsec.Char as P | |
type P a = P.Parsec Void Text a | |
match :: P a -> P Text | |
match = fmap fst . P.match | |
replace :: P Text -> Text -> Text | |
replace p t = x |
import Control.Monad | |
import Data.Foldable | |
import Data.Functor | |
import Data.List | |
import Data.Maybe | |
import Data.Time.Clock | |
import System.Directory | |
import System.Process | |
main = listPackages >>= filterM needsUpdate >>= traverse_ update |
{-# language FlexibleContexts, FlexibleInstances, FunctionalDependencies #-} | |
module Idea where | |
class ComposeApply a b c | a b -> c where | |
(#) :: a -> b -> c | |
instance ComposeApply (a -> b) a b where | |
f # x = f x |
data InfiniteList a = InfiniteList a (InfiniteList a) | |
traverseForever :: Applicative m => (a -> m b) -> InfiniteList a -> m c | |
traverseForever f (InfiniteList x xs) = f x *> traverseForever f xs | |
countUpwardsFrom :: Integer -> InfiniteList Integer | |
countUpwardsFrom n = InfiniteList n (countUpwardsFrom (n + 1)) | |
forForever :: Applicative m => InfiniteList a -> (a -> m b) -> m c | |
forForever = flip traverseForever |