This commit is contained in:
Dmitry Zuikov 2024-05-09 05:08:37 +03:00
parent 75444ee693
commit a8786d08fc
6 changed files with 640 additions and 21 deletions

View File

@ -16,6 +16,7 @@ BINS := \
hbs2-git-dashboard \
git-remote-hbs2 \
git-hbs2 \
fixme-new \
ifeq ($(origin .RECIPEPREFIX), undefined)
$(error This Make does not support .RECIPEPREFIX. Please use GNU Make 4.0 or later)

22
fixme-new/README.md Normal file
View File

@ -0,0 +1,22 @@
## The new glorious fixme
This is a new fixme implementation! It's a re-implementation
of fixme aiming for using multiple sources for issues, not
only git repo, and able to share the state via hbs2
privimites.
It will replace the old good fixme and will reuse all the
code from there that could be re-used.
It's indendent to be mostly compatible with the old
fixme, but we will see.
The binary is called fixme-new in order not to be confused
with old fixme, but it's only for a while.
It will be replaced as soon, as this fixme will be fully
operational.

View File

@ -0,0 +1,49 @@
module Main where
-- TODO: fixme-new
-- после майских:
-- 1. fixme переезжает в дерево hbs2, конкретно в hbs2-git
--
-- 2. fixme преобразуется в утилиту для генерации отчётов по репозиторию git
--
-- 3. fixme генерирует поток фактов про репозиторий git, включая записи todo/fixme
--
-- 4. fixme начинает генерировать PR-ы в формате git (у гита есть простенькие пулл-реквесты!)
-- и умеет постить их куда там их следует постить
--
-- 5. fixme получает ограничитель глубины сканирования и фильтр бранчей,
-- что бы не окочуриваться на больших проектах
--
-- 6. fixme генерирует настройки по умолчанию, включая .gitignore
--
-- 7. fixme позволяет явно задавать лог изменений статуса, беря его как из
-- .fixme/log так и откуда скажут
--
-- 8. fixme интегрируется в hbs2-git-dashboard
--
-- 9. fixme временно получает название fixme2 или nfixme или hfixme (не решил пока),
-- потом возвращается к старому названию
--
-- 10. fixme умеет постить записи в своём формате в hbs2 или же умеет любые источники дампить в своём формате так,
-- что бы hbs2-git мог запостить их в соответствующий рефчан
--
-- 11. fixme оформляет либу для экстракции фактов из git, которую будет использовать и hbs2-git-dashboard
--
-- 12. hbs2-git-dashboard понимает и уважает каталог настроек .fixme , а стейт берёт прямо оттуда
-- открытые вопросы:
-- hbs2-git использует fixme или fixme использует hbs2
-- переводить fixme на fuzzy-parse или нет (скорее, да)
-- переводить ли suckless-conf на fuzzy-parse сейчас (или хрен пока с ним)
-- встроить ли jq внутрь или лучше дать доступ к sql запросам по json
main :: IO ()
main = do
print "HI, DUDE"

122
fixme-new/fixme.cabal Normal file
View File

@ -0,0 +1,122 @@
cabal-version: 3.0
name: fixme-new
version: 0.24.1.2
synopsis: reimplemented fixme
-- description:
license: BSD-3-Clause
license-file: LICENSE
author: Dmitry Zuikov
-- copyright:
category: System
build-type: Simple
-- extra-doc-files: CHANGELOG.md
-- extra-source-files:
common shared-properties
ghc-options:
-Wall
-fno-warn-type-defaults
-threaded
-rtsopts
-O2
"-with-rtsopts=-N4 -A64m -AL256m -I0"
default-language: GHC2021
default-extensions:
ApplicativeDo
, BangPatterns
, BlockArguments
, ConstraintKinds
, DataKinds
, DeriveDataTypeable
, DeriveGeneric
, DerivingStrategies
, DerivingVia
, ExtendedDefaultRules
, FlexibleContexts
, FlexibleInstances
, GADTs
, GeneralizedNewtypeDeriving
, ImportQualifiedPost
, LambdaCase
, MultiParamTypeClasses
, OverloadedStrings
, QuasiQuotes
, RecordWildCards
, ScopedTypeVariables
, StandaloneDeriving
, TupleSections
, TypeApplications
, TypeFamilies
build-depends:
hbs2-core
, hbs2-peer
, hbs2-storage-simple
, hbs2-keyman
, db-pipe
, suckless-conf
, attoparsec
, atomic-write
, bytestring
, binary
, containers
, directory
, exceptions
, filepath
, filepattern
, interpolatedstring-perl6
, memory
, microlens-platform
, mtl
, safe
, serialise
, streaming
, stm
, text
, time
, timeit
, transformers
, typed-process
, unordered-containers
, unliftio
, unliftio-core
, zlib
, prettyprinter
, prettyprinter-ansi-terminal
, random
, vector
, unix
library
import: shared-properties
exposed-modules:
build-depends: base
, base16-bytestring
, binary
, unix
hs-source-dirs: lib
executable fixme-new
import: shared-properties
main-is: FixmeMain.hs
-- other-modules:
-- other-extensions:
build-depends:
base, fixme-new, hbs2-core, hbs2-peer, hbs2-git
, binary
, vector
, optparse-applicative
hs-source-dirs: app
default-language: GHC2021

View File

@ -22,10 +22,83 @@
"url": "https://git.hbs2.net/5xrwbTzzweS9yeJQnrrUY9gQJfhJf84pbyHhF2MMmSft"
}
},
"fixme": {
"db-pipe_2": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_2",
"nixpkgs": [
"fixme",
"nixpkgs"
]
},
"locked": {
"lastModified": 1713359411,
"narHash": "sha256-BzOZ6xU+Li5nIe71Wy4p+lOEQlYK/e94T0gBcP8IKgE=",
"ref": "generic-sql",
"rev": "03635c54b2e2bd809ec1196bc9082447279f6f24",
"revCount": 9,
"type": "git",
"url": "https://git.hbs2.net/5xrwbTzzweS9yeJQnrrUY9gQJfhJf84pbyHhF2MMmSft"
},
"original": {
"ref": "generic-sql",
"type": "git",
"url": "https://git.hbs2.net/5xrwbTzzweS9yeJQnrrUY9gQJfhJf84pbyHhF2MMmSft"
}
},
"db-pipe_3": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_4",
"nixpkgs": [
"fixme",
"hbs2",
"nixpkgs"
]
},
"locked": {
"lastModified": 1708680396,
"narHash": "sha256-ZPwDreNdnyCS/hNdaE0OqVhytm+SzZGRfGRTRvBuSzE=",
"ref": "refs/heads/master",
"rev": "221fde04a00a9c38d2f6c0d05b1e1c3457d5a827",
"revCount": 7,
"type": "git",
"url": "https://git.hbs2.net/5xrwbTzzweS9yeJQnrrUY9gQJfhJf84pbyHhF2MMmSft"
},
"original": {
"type": "git",
"url": "https://git.hbs2.net/5xrwbTzzweS9yeJQnrrUY9gQJfhJf84pbyHhF2MMmSft"
}
},
"fixme": {
"inputs": {
"db-pipe": "db-pipe_2",
"haskell-flake-utils": "haskell-flake-utils_3",
"hbs2": "hbs2",
"nixpkgs": [
"nixpkgs"
],
"suckless-conf": "suckless-conf_3"
},
"locked": {
"lastModified": 1714278626,
"narHash": "sha256-Kfp858qHdnNbMv1hjMMy95bN5oQWmtKnVqG8zcCJhpk=",
"ref": "dev-0.2",
"rev": "611cbbf46af307d2032af7864be183e8afdbe55d",
"revCount": 149,
"type": "git",
"url": "file:///home/dmz/w/fixme"
},
"original": {
"ref": "dev-0.2",
"type": "git",
"url": "file:///home/dmz/w/fixme"
}
},
"fixme_2": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_5",
"nixpkgs": [
"fixme",
"hbs2",
"nixpkgs"
],
"suckless-conf": "suckless-conf"
@ -59,6 +132,96 @@
"type": "github"
}
},
"flake-utils_10": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_11": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_12": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_13": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_14": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_15": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"locked": {
"lastModified": 1644229661,
@ -164,9 +327,24 @@
"type": "github"
}
},
"flake-utils_9": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"fuzzy": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_4",
"haskell-flake-utils": "haskell-flake-utils_11",
"nixpkgs": [
"nixpkgs"
]
@ -203,9 +381,9 @@
"type": "github"
}
},
"haskell-flake-utils_2": {
"haskell-flake-utils_10": {
"inputs": {
"flake-utils": "flake-utils_2"
"flake-utils": "flake-utils_10"
},
"locked": {
"lastModified": 1672412555,
@ -221,6 +399,116 @@
"type": "github"
}
},
"haskell-flake-utils_11": {
"inputs": {
"flake-utils": "flake-utils_11"
},
"locked": {
"lastModified": 1707809372,
"narHash": "sha256-wfTL9PlCSOqSSyU4eenFFI7pHrV21gba4GEILnI4nAU=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "3cbdc5d6093e8b4464ae64097e0c8c61e4414ff2",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"type": "github"
}
},
"haskell-flake-utils_12": {
"inputs": {
"flake-utils": "flake-utils_12"
},
"locked": {
"lastModified": 1698938553,
"narHash": "sha256-oXpTKXioqFbl2mhhvpJIAvgNd+wYyv4ekI+YnJHEJ6s=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "19b273b5dc401a0a565e7f75cf50a593871b80c9",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"ref": "master",
"repo": "haskell-flake-utils",
"type": "github"
}
},
"haskell-flake-utils_13": {
"inputs": {
"flake-utils": "flake-utils_13"
},
"locked": {
"lastModified": 1672412555,
"narHash": "sha256-Kaa8F7nQFR3KuS6Y9WRUxeJeZlp6CCubyrRfmiEsW4k=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "896219e5bde6efac72198550454e9dd9b5ed9ac9",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "896219e5bde6efac72198550454e9dd9b5ed9ac9",
"type": "github"
}
},
"haskell-flake-utils_14": {
"inputs": {
"flake-utils": "flake-utils_14"
},
"locked": {
"lastModified": 1698938553,
"narHash": "sha256-oXpTKXioqFbl2mhhvpJIAvgNd+wYyv4ekI+YnJHEJ6s=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "19b273b5dc401a0a565e7f75cf50a593871b80c9",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"type": "github"
}
},
"haskell-flake-utils_15": {
"inputs": {
"flake-utils": "flake-utils_15"
},
"locked": {
"lastModified": 1672412555,
"narHash": "sha256-Kaa8F7nQFR3KuS6Y9WRUxeJeZlp6CCubyrRfmiEsW4k=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "896219e5bde6efac72198550454e9dd9b5ed9ac9",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"type": "github"
}
},
"haskell-flake-utils_2": {
"inputs": {
"flake-utils": "flake-utils_2"
},
"locked": {
"lastModified": 1698938553,
"narHash": "sha256-oXpTKXioqFbl2mhhvpJIAvgNd+wYyv4ekI+YnJHEJ6s=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "19b273b5dc401a0a565e7f75cf50a593871b80c9",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"type": "github"
}
},
"haskell-flake-utils_3": {
"inputs": {
"flake-utils": "flake-utils_3"
@ -244,11 +532,11 @@
"flake-utils": "flake-utils_4"
},
"locked": {
"lastModified": 1707809372,
"narHash": "sha256-wfTL9PlCSOqSSyU4eenFFI7pHrV21gba4GEILnI4nAU=",
"lastModified": 1698938553,
"narHash": "sha256-oXpTKXioqFbl2mhhvpJIAvgNd+wYyv4ekI+YnJHEJ6s=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "3cbdc5d6093e8b4464ae64097e0c8c61e4414ff2",
"rev": "19b273b5dc401a0a565e7f75cf50a593871b80c9",
"type": "github"
},
"original": {
@ -262,16 +550,15 @@
"flake-utils": "flake-utils_5"
},
"locked": {
"lastModified": 1698938553,
"narHash": "sha256-oXpTKXioqFbl2mhhvpJIAvgNd+wYyv4ekI+YnJHEJ6s=",
"lastModified": 1672412555,
"narHash": "sha256-Kaa8F7nQFR3KuS6Y9WRUxeJeZlp6CCubyrRfmiEsW4k=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "19b273b5dc401a0a565e7f75cf50a593871b80c9",
"rev": "896219e5bde6efac72198550454e9dd9b5ed9ac9",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"ref": "master",
"repo": "haskell-flake-utils",
"type": "github"
}
@ -291,7 +578,6 @@
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "896219e5bde6efac72198550454e9dd9b5ed9ac9",
"type": "github"
}
},
@ -309,6 +595,7 @@
},
"original": {
"owner": "ivanovs-4",
"ref": "master",
"repo": "haskell-flake-utils",
"type": "github"
}
@ -328,12 +615,82 @@
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "896219e5bde6efac72198550454e9dd9b5ed9ac9",
"type": "github"
}
},
"haskell-flake-utils_9": {
"inputs": {
"flake-utils": "flake-utils_9"
},
"locked": {
"lastModified": 1672412555,
"narHash": "sha256-Kaa8F7nQFR3KuS6Y9WRUxeJeZlp6CCubyrRfmiEsW4k=",
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"rev": "896219e5bde6efac72198550454e9dd9b5ed9ac9",
"type": "github"
},
"original": {
"owner": "ivanovs-4",
"repo": "haskell-flake-utils",
"type": "github"
}
},
"hbs2": {
"inputs": {
"db-pipe": "db-pipe_3",
"fixme": "fixme_2",
"haskell-flake-utils": "haskell-flake-utils_7",
"hspup": "hspup",
"nixpkgs": [
"fixme",
"nixpkgs"
],
"saltine": "saltine",
"suckless-conf": "suckless-conf_2"
},
"locked": {
"lastModified": 1712029190,
"narHash": "sha256-rniTdzPvHeiqVtFvsUIXvh4f1dirz1hV0lXRC93qTuw=",
"ref": "0.24.1",
"rev": "d2082de4bf54b54095eecd121727d89e936089ed",
"revCount": 975,
"type": "git",
"url": "http://git.hbs2/BTThPdHKF8XnEq4m6wzbKHKA6geLFK4ydYhBXAqBdHSP"
},
"original": {
"ref": "0.24.1",
"type": "git",
"url": "http://git.hbs2/BTThPdHKF8XnEq4m6wzbKHKA6geLFK4ydYhBXAqBdHSP"
}
},
"hspup": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_6",
"haskell-flake-utils": "haskell-flake-utils_8",
"nixpkgs": [
"fixme",
"hbs2",
"nixpkgs"
]
},
"locked": {
"lastModified": 1679933705,
"narHash": "sha256-UOd70L+FKQLmGjA3IqjFaBpaS/dZMSABtRgVDY3lBCg=",
"owner": "voidlizard",
"repo": "hspup",
"rev": "6b969a9de1f9800ebfc61c51252b8647123c51bb",
"type": "github"
},
"original": {
"owner": "voidlizard",
"repo": "hspup",
"type": "github"
}
},
"hspup_2": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_13",
"nixpkgs": [
"nixpkgs"
]
@ -354,7 +711,7 @@
},
"lsm": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_7",
"haskell-flake-utils": "haskell-flake-utils_14",
"nixpkgs": [
"nixpkgs"
]
@ -394,12 +751,12 @@
"db-pipe": "db-pipe",
"fixme": "fixme",
"fuzzy": "fuzzy",
"haskell-flake-utils": "haskell-flake-utils_5",
"hspup": "hspup",
"haskell-flake-utils": "haskell-flake-utils_12",
"hspup": "hspup_2",
"lsm": "lsm",
"nixpkgs": "nixpkgs",
"saltine": "saltine",
"suckless-conf": "suckless-conf_2"
"saltine": "saltine_2",
"suckless-conf": "suckless-conf_4"
}
},
"saltine": {
@ -419,10 +776,29 @@
"type": "github"
}
},
"saltine_2": {
"flake": false,
"locked": {
"lastModified": 1651348885,
"narHash": "sha256-0guvfkdOrofElDildQWE8QDwh+T/u2WY3HVYmOu4g3w=",
"owner": "tel",
"repo": "saltine",
"rev": "3d3a54cf46f78b71b4b55653482fb6f4cee6b77d",
"type": "github"
},
"original": {
"owner": "tel",
"repo": "saltine",
"rev": "3d3a54cf46f78b71b4b55653482fb6f4cee6b77d",
"type": "github"
}
},
"suckless-conf": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_3",
"haskell-flake-utils": "haskell-flake-utils_6",
"nixpkgs": [
"fixme",
"hbs2",
"fixme",
"nixpkgs"
]
@ -443,7 +819,52 @@
},
"suckless-conf_2": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_8",
"haskell-flake-utils": "haskell-flake-utils_9",
"nixpkgs": [
"fixme",
"hbs2",
"nixpkgs"
]
},
"locked": {
"lastModified": 1704001322,
"narHash": "sha256-D7T/8wAg5J4KkRw0uB90w3+adY11aQaX7rjmQPXkkQc=",
"ref": "refs/heads/master",
"rev": "8cfc1272bb79ef6ad62ae6a625f21e239916d196",
"revCount": 28,
"type": "git",
"url": "https://git.hbs2.net/JAuk1UJzZfbDGKVazSQU5yYQ3NGfk4gVeZzBCduf5TgQ"
},
"original": {
"type": "git",
"url": "https://git.hbs2.net/JAuk1UJzZfbDGKVazSQU5yYQ3NGfk4gVeZzBCduf5TgQ"
}
},
"suckless-conf_3": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_10",
"nixpkgs": [
"fixme",
"nixpkgs"
]
},
"locked": {
"lastModified": 1713519386,
"narHash": "sha256-rbJSdeeP2lBLbSG0l37FeqzrdJtEjp4igVG6Vi+hJFA=",
"ref": "refs/heads/master",
"rev": "426e2ae123bc840fe3a05f46627b3493bab0d936",
"revCount": 29,
"type": "git",
"url": "https://git.hbs2.net/JAuk1UJzZfbDGKVazSQU5yYQ3NGfk4gVeZzBCduf5TgQ"
},
"original": {
"type": "git",
"url": "https://git.hbs2.net/JAuk1UJzZfbDGKVazSQU5yYQ3NGfk4gVeZzBCduf5TgQ"
}
},
"suckless-conf_4": {
"inputs": {
"haskell-flake-utils": "haskell-flake-utils_15",
"nixpkgs": [
"nixpkgs"
]

View File

@ -9,7 +9,8 @@ inputs = {
hspup.url = "github:voidlizard/hspup";
hspup.inputs.nixpkgs.follows = "nixpkgs";
fixme.url = "git+https://git.hbs2.net/Fujv1Uy4W5d9Z7REEArMxbXSJ8nLLn4dYuvaAs8b86hr";
# fixme.url = "git+https://git.hbs2.net/Fujv1Uy4W5d9Z7REEArMxbXSJ8nLLn4dYuvaAs8b86hr";
fixme.url = "git+file:///home/dmz/w/fixme?ref=dev-0.2";
fixme.inputs.nixpkgs.follows = "nixpkgs";
suckless-conf.url = "git+https://git.hbs2.net/JAuk1UJzZfbDGKVazSQU5yYQ3NGfk4gVeZzBCduf5TgQ";
@ -43,6 +44,7 @@ outputs = { self, nixpkgs, haskell-flake-utils, ... }@inputs:
"hbs2-keyman"
"hbs2-share"
"hbs2-fixer"
"fixme-new"
];
in
haskell-flake-utils.lib.simpleCabalProject2flake {
@ -53,6 +55,7 @@ outputs = { self, nixpkgs, haskell-flake-utils, ... }@inputs:
haskellFlakes = with inputs; [
suckless-conf
db-pipe
fixme
];
inherit packageNames;
@ -67,6 +70,7 @@ outputs = { self, nixpkgs, haskell-flake-utils, ... }@inputs:
"hbs2-share" = "./hbs2-share";
"hbs2-git" = "./hbs2-git";
"hbs2-fixer" = "./hbs2-fixer";
"fixme-new" = "./fixme-new";
};
hpPreOverrides = {pkgs, ...}: final: prev: with pkgs; {