{"id":20737946,"url":"https://github.com/podenv/hspkgs","last_synced_at":"2025-04-24T01:43:08.096Z","repository":{"id":54838481,"uuid":"522289617","full_name":"podenv/hspkgs","owner":"podenv","description":"Alternative Haskell package set","archived":false,"fork":false,"pushed_at":"2024-08-05T22:47:41.000Z","size":62,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-30T05:41:21.302Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/podenv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-07T18:13:44.000Z","updated_at":"2025-03-13T21:35:35.000Z","dependencies_parsed_at":"2024-03-23T15:35:39.552Z","dependency_job_id":"89e194a6-b635-4b0e-8d63-be53fe84db55","html_url":"https://github.com/podenv/hspkgs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/podenv%2Fhspkgs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/podenv%2Fhspkgs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/podenv%2Fhspkgs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/podenv%2Fhspkgs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/podenv","download_url":"https://codeload.github.com/podenv/hspkgs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250545830,"owners_count":21448249,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-17T06:16:02.808Z","updated_at":"2025-04-24T01:43:08.077Z","avatar_url":"https://github.com/podenv.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hspkgs - an alternative haskell package set\n\nThe goal is to provide a reusable, bleeding edge, set of packages based on nixpkgs that works with the most recent ghc version.\nSome packages may includes un-merged PR to make it work.\nFeel free to add your own workarounds.\n\n## Features\n\nPackages:\n\n- ghc-9.6.6\n- weeder\n- calligraphy\n- apply-refact\n- kubernetes-client\n\nHelpers:\n\n- mk-nixgl-command : run a program with nixGL\n- mk-static-haskell : build a static binary with musl\n- run-hoogle : a devshell with a `run` command to start the service\n\n## Usage\n\nStarts a shell with a full development environment:\n\n```ShellSession\n$ nix develop gitub:podenv/devenv\n```\n\nUse the output `overlays.hspkgs`, for example in your flake:\n\n```nix\n{\n  inputs = {\n    nixpkgs.url =\n      \"github:NixOS/nixpkgs/0dcf2ad93d93d0cba20f8517689267abc33014a6\";\n    hspkgs.url = \"github:podenv/hspkgs\";\n  };\n\n  outputs = { self, nixpkgs, hspkgs }:\n    let\n      pkgs = import nixpkgs {\n        system = \"x86_64-linux\";\n        overlays = [ hspkgs.overlays.hspkgs ];\n      };\n      pkg = pkgs.hspkgs.callCabal2nix \"my-project\" self { };\n      exe = pkgs.haskell.lib.justStaticExecutables pkg;\n    in {\n      packages.\"x86_64-linux\".default = exe;\n      devShell.\"x86_64-linux\" = pkgs.hspkgs.shellFor {\n        packages = p: [ pkg ];\n        buildInputs = [\n          pkgs.cabal-install\n          pkgs.haskell-language-server\n          pkgs.weeder\n        ];\n      };\n    };\n}\n```\n\nFollow the same upstream nixpkgs, see demo in [run-monomer](https://github.com/podenv/run-monomer):\n\n```nix\n{\n  inputs = {\n    hspkgs.url = \"github:podenv/hspkgs/PIN_COMMIT\";\n  };\n\n  outputs = { self, hspkgs }:\n    let\n      pkgs = hspkgs.pkgs;\n      pkg = pkgs.hspkgs.callCabal2nix \"my-project\" self {};\n    in {};\n}\n```\n\nSpeedup download by using the binary cache:\n\n```ShellSession\nnix build --option binary-caches \"https://cache.nixos.org https://podenv.cachix.org\" --option trusted-public-keys \"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= podenv.cachix.org-1:FA80Dv5XSHxzMYOg1wEANhDN7h43nN8twBJiYNzcDGY=\"\n```\n\n## Setup nixGL for nvidia\n\nUsing the same nixpkgs pin, install the `nixVulkanNvidia-$VERSION` wrapper using:\n\n```ShellSession\nNIXPKGS_ALLOW_UNFREE=1 nix build --override-input nixpkgs  github:NixOS/nixpkgs/3665c429d349fbda46b0651e554cca8434452748 --impure github:guibou/nixGL#nixVulkanNvidia\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpodenv%2Fhspkgs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpodenv%2Fhspkgs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpodenv%2Fhspkgs/lists"}