Initial commit
All checks were successful
Hydra devShells.x86_64-linux.default Hydra build #48467 of flakes:matrix-media-expanded:devShells.x86_64-linux.default
Hydra packages.x86_64-linux.matrix-media-expanded Hydra build #48469 of flakes:matrix-media-expanded:packages.x86_64-linux.matrix-media-expanded
Hydra packages.x86_64-linux.default Hydra build #48471 of flakes:matrix-media-expanded:packages.x86_64-linux.default
Hydra packages.aarch64-linux.matrix-media-expanded Hydra build #48468 of flakes:matrix-media-expanded:packages.aarch64-linux.matrix-media-expanded
Hydra packages.aarch64-linux.default Hydra build #48470 of flakes:matrix-media-expanded:packages.aarch64-linux.default
Hydra devShells.aarch64-linux.default Hydra build #48472 of flakes:matrix-media-expanded:devShells.aarch64-linux.default

This commit is contained in:
Charlotte 🦝 Delenk 2023-06-10 09:57:15 +01:00
parent 283d5aa400
commit 5c083d4419
Signed by: darkkirb
GPG key ID: AB2BD8DAF2E37122
7 changed files with 74 additions and 73 deletions

View file

@ -3,9 +3,8 @@
// for the documentation about the extensions.json format // for the documentation about the extensions.json format
"recommendations": [ "recommendations": [
"haskell.haskell", "haskell.haskell",
"arrterian.nix-env-selector",
"bbenoist.nix", "bbenoist.nix",
"jnoortheen.nix-ide", "jnoortheen.nix-ide",
"tamasfe.even-better-toml" "tamasfe.even-better-toml"
] ]
} }

10
Jenkinsfile vendored
View file

@ -1,10 +0,0 @@
pipeline {
agent any
stages {
stage ('Build') {
steps {
nixBuildAll ()
}
}
}
}

34
LICENSE
View file

@ -1,21 +1,21 @@
MIT License ANTI-CAPITALIST SOFTWARE LICENSE (v 1.4)
Copyright (c) 2022 Sridhar Ratnakumar Copyright © 2023 Charlotte 🦝 Delenk
Permission is hereby granted, free of charge, to any person obtaining a copy This is anti-capitalist software, released for free use by individuals and organizations that do not operate by capitalist principles.
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all Permission is hereby granted, free of charge, to any person or organization (the "User") obtaining a copy of this software and associated documentation files (the "Software"), to use, copy, modify, merge, distribute, and/or sell copies of the Software, subject to the following conditions:
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 1. The above copyright notice and this permission notice shall be included in all copies or modified versions of the Software.
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 2. The User is one of the following:
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER a. An individual person, laboring for themselves
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, b. A non-profit organization
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE c. An educational institution
SOFTWARE. d. An organization that seeks shared profit for all of its members, and allows non-members to set the cost of their labor
3. If the User is an organization with owners, then all owners are workers and all workers are owners with equal equity and/or equal vote.
4. If the User is an organization, then the User is not law enforcement or military, or working for or under either.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT EXPRESS OR IMPLIED WARRANTY OF ANY KIND, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

25
flake.lock generated
View file

@ -5,11 +5,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1685546676, "lastModified": 1685662779,
"narHash": "sha256-XDbjJyAg6odX5Vj0Q22iI/gQuFvEkv9kamsSbQ+npaI=", "narHash": "sha256-cKDDciXGpMEjP1n6HlzKinN0H+oLmNpgeCTzYnsA2po=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "6ef2707776c6379bc727faf3f83c0dd60b06e0c6", "rev": "71fb97f0d875fd4de4994dfb849f2c75e17eb6c3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -35,11 +35,11 @@
}, },
"haskell-flake": { "haskell-flake": {
"locked": { "locked": {
"lastModified": 1685570147, "lastModified": 1686160859,
"narHash": "sha256-Tupz/1Gz3/0cC5FK1s3D5XFkujfzK3LjAhss/JC5Zfg=", "narHash": "sha256-UE+0TQHyPxF8jhbLEeqvNQAy7B79bBix/rpFrf5nsn0=",
"owner": "srid", "owner": "srid",
"repo": "haskell-flake", "repo": "haskell-flake",
"rev": "b27554ae644f14eac15cd1f104d6db6a05ed632d", "rev": "908a59167f78035a123ab71ed77af79bed519771",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -65,16 +65,15 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1685498995, "lastModified": 1686381979,
"narHash": "sha256-rdyjnkq87tJp+T2Bm1OD/9NXKSsh/vLlPeqCc/mm7qs=", "narHash": "sha256-E0DrbQijn9hT1Z1iBQ8+r5QpXPkBwKonIWNqYY8beM0=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9cfaa8a1a00830d17487cb60a19bb86f96f09b27", "rev": "c38298b89c17de6cdae8ab0c8ef2ea95beaf77a3",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -82,11 +81,11 @@
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"dir": "lib", "dir": "lib",
"lastModified": 1682879489, "lastModified": 1685564631,
"narHash": "sha256-sASwo8gBt7JDnOOstnps90K1wxmVfyhsTPPNTGBPjjg=", "narHash": "sha256-8ywr3AkblY4++3lIVxmrWZFzac7+f32ZEhH/A8pNscI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "da45bf6ec7bbcc5d1e14d3795c025199f28e0de0", "rev": "4f53efe34b3a8877ac923b9350c874e3dcd5dc0a",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -1,7 +1,7 @@
{ {
description = "srid/haskell-template: Nix template for Haskell projects"; description = "matrix-media-expanded";
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; nixpkgs.url = "github:nixos/nixpkgs";
systems.url = "github:nix-systems/default"; systems.url = "github:nix-systems/default";
flake-parts.url = "github:hercules-ci/flake-parts"; flake-parts.url = "github:hercules-ci/flake-parts";
haskell-flake.url = "github:srid/haskell-flake"; haskell-flake.url = "github:srid/haskell-flake";
@ -12,7 +12,7 @@
}; };
outputs = inputs: outputs = inputs:
inputs.flake-parts.lib.mkFlake { inherit inputs; } { inputs.flake-parts.lib.mkFlake {inherit inputs;} {
systems = import inputs.systems; systems = import inputs.systems;
imports = [ imports = [
inputs.haskell-flake.flakeModule inputs.haskell-flake.flakeModule
@ -20,7 +20,14 @@
inputs.flake-root.flakeModule inputs.flake-root.flakeModule
inputs.mission-control.flakeModule inputs.mission-control.flakeModule
]; ];
perSystem = { self', system, lib, config, pkgs, ... }: { perSystem = {
self',
system,
lib,
config,
pkgs,
...
}: {
# Our only Haskell project. You can have multiple projects, but this template # Our only Haskell project. You can have multiple projects, but this template
# has only one. # has only one.
# See https://github.com/srid/haskell-flake/blob/master/example/flake.nix # See https://github.com/srid/haskell-flake/blob/master/example/flake.nix
@ -33,34 +40,36 @@
# Add source or Hackage overrides here # Add source or Hackage overrides here
# (Local packages are added automatically) # (Local packages are added automatically)
/* /*
aeson.source = "1.5.0.0" # Hackage version aeson.source = "1.5.0.0" # Hackage version
shower.source = inputs.shower; # Flake input shower.source = inputs.shower; # Flake input
*/ */
}; };
# Add your package overrides here # Add your package overrides here
settings = { settings = {
/* /*
haskell-template = { haskell-template = {
haddock = false; haddock = false;
}; };
aeson = { aeson = {
check = false; check = false;
}; };
*/ */
}; };
# Development shell configuration # Development shell configuration
devShell = { devShell = {
# TODO: Remove this after https://github.com/numtide/treefmt-nix/issues/65 # TODO: Remove this after https://github.com/numtide/treefmt-nix/issues/65
tools = hp: { tools = hp:
treefmt = config.treefmt.build.wrapper; {
} // config.treefmt.build.programs; treefmt = config.treefmt.build.wrapper;
hlsCheck.enable = false; }
// config.treefmt.build.programs;
hlsCheck.enable = true;
}; };
# What should haskell-flake add to flake outputs? # What should haskell-flake add to flake outputs?
autoWire = [ "packages" "apps" "checks" ]; # Wire all but the devShell autoWire = ["packages" "apps" "checks"]; # Wire all but the devShell
}; };
# Auto formatters. This also adds a flake check to ensure that the # Auto formatters. This also adds a flake check to ensure that the
@ -109,25 +118,31 @@
run = { run = {
description = "Run the project with ghcid auto-recompile"; description = "Run the project with ghcid auto-recompile";
exec = '' exec = ''
ghcid -c "cabal repl exe:haskell-template" --warnings -T :main ghcid -c "cabal repl exe:matrix-media-expanded" --warnings -T :main
''; '';
category = "Primary"; category = "Primary";
}; };
}; };
# Default package & app. # Default package & app.
packages.default = self'.packages.haskell-template; packages.default = self'.packages.matrix-media-expanded;
apps.default = self'.apps.haskell-template; apps.default = self'.apps.matrix-media-expanded;
# Default shell. # Default shell.
devShells.default = pkgs.mkShell { devShells.default = pkgs.mkShell {
name = "haskell-template"; name = "matrix-media-expanded";
inputsFrom = [ inputsFrom = [
config.haskellProjects.default.outputs.devShell config.haskellProjects.default.outputs.devShell
config.flake-root.devShell config.flake-root.devShell
config.mission-control.devShell config.mission-control.devShell
]; ];
}; };
formatter = pkgs.alejandra;
};
flake = {
hydraJobs = {
inherit (inputs.self) packages devShells;
};
}; };
}; };
} }

View file

@ -1,2 +0,0 @@
cradle:
cabal:

View file

@ -1,10 +1,10 @@
cabal-version: 2.4 cabal-version: 2.4
name: haskell-template name: matrix-media-expanded
version: 0.1.0.0 version: 0.1.0.0
license: MIT license-file: LICENSE
copyright: 2022 Sridhar Ratnakumar copyright: 2023 Charlotte 🦝 Delenk
maintainer: srid@srid.ca maintainer: lotte@chir.rs
author: Sridhar Ratnakumar author: Charlotte 🦝 Delenk
category: Web category: Web
-- TODO: Before hackage release. -- TODO: Before hackage release.
@ -91,6 +91,6 @@ common shared
hs-source-dirs: src hs-source-dirs: src
default-language: Haskell2010 default-language: Haskell2010
executable haskell-template executable matrix-media-expanded
import: shared import: shared
main-is: Main.hs main-is: Main.hs