diff --git a/Makefile b/Makefile index b13db8c2..3c36fe76 100644 --- a/Makefile +++ b/Makefile @@ -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) diff --git a/fixme-new/README.md b/fixme-new/README.md new file mode 100644 index 00000000..e3e9cc31 --- /dev/null +++ b/fixme-new/README.md @@ -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. + + diff --git a/fixme-new/app/FixmeMain.hs b/fixme-new/app/FixmeMain.hs new file mode 100644 index 00000000..a3adec84 --- /dev/null +++ b/fixme-new/app/FixmeMain.hs @@ -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" + diff --git a/fixme-new/fixme.cabal b/fixme-new/fixme.cabal new file mode 100644 index 00000000..7dcce057 --- /dev/null +++ b/fixme-new/fixme.cabal @@ -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 + + diff --git a/flake.lock b/flake.lock index d8324239..d7ecbed7 100644 --- a/flake.lock +++ b/flake.lock @@ -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" ] diff --git a/flake.nix b/flake.nix index 97941fef..8a458440 100644 --- a/flake.nix +++ b/flake.nix @@ -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; {