diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 0cd22b3..4f1d025 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -3,9 +3,8 @@ // for the documentation about the extensions.json format "recommendations": [ "haskell.haskell", - "arrterian.nix-env-selector", "bbenoist.nix", "jnoortheen.nix-ide", "tamasfe.even-better-toml" ] -} \ No newline at end of file +} diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index 1ae5b2f..0000000 --- a/Jenkinsfile +++ /dev/null @@ -1,10 +0,0 @@ -pipeline { - agent any - stages { - stage ('Build') { - steps { - nixBuildAll () - } - } - } -} diff --git a/LICENSE b/LICENSE index 852e58e..9cfe30e 100644 --- a/LICENSE +++ b/LICENSE @@ -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 -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: +This is anti-capitalist software, released for free use by individuals and organizations that do not operate by capitalist principles. -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. +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: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS 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. +1. The above copyright notice and this permission notice shall be included in all copies or modified versions of the Software. + +2. The User is one of the following: +a. An individual person, laboring for themselves +b. A non-profit organization +c. An educational institution +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. diff --git a/flake.lock b/flake.lock index 521be04..6b8a6cf 100644 --- a/flake.lock +++ b/flake.lock @@ -5,11 +5,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1685546676, - "narHash": "sha256-XDbjJyAg6odX5Vj0Q22iI/gQuFvEkv9kamsSbQ+npaI=", + "lastModified": 1685662779, + "narHash": "sha256-cKDDciXGpMEjP1n6HlzKinN0H+oLmNpgeCTzYnsA2po=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "6ef2707776c6379bc727faf3f83c0dd60b06e0c6", + "rev": "71fb97f0d875fd4de4994dfb849f2c75e17eb6c3", "type": "github" }, "original": { @@ -35,11 +35,11 @@ }, "haskell-flake": { "locked": { - "lastModified": 1685570147, - "narHash": "sha256-Tupz/1Gz3/0cC5FK1s3D5XFkujfzK3LjAhss/JC5Zfg=", + "lastModified": 1686160859, + "narHash": "sha256-UE+0TQHyPxF8jhbLEeqvNQAy7B79bBix/rpFrf5nsn0=", "owner": "srid", "repo": "haskell-flake", - "rev": "b27554ae644f14eac15cd1f104d6db6a05ed632d", + "rev": "908a59167f78035a123ab71ed77af79bed519771", "type": "github" }, "original": { @@ -65,16 +65,15 @@ }, "nixpkgs": { "locked": { - "lastModified": 1685498995, - "narHash": "sha256-rdyjnkq87tJp+T2Bm1OD/9NXKSsh/vLlPeqCc/mm7qs=", + "lastModified": 1686381979, + "narHash": "sha256-E0DrbQijn9hT1Z1iBQ8+r5QpXPkBwKonIWNqYY8beM0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9cfaa8a1a00830d17487cb60a19bb86f96f09b27", + "rev": "c38298b89c17de6cdae8ab0c8ef2ea95beaf77a3", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -82,11 +81,11 @@ "nixpkgs-lib": { "locked": { "dir": "lib", - "lastModified": 1682879489, - "narHash": "sha256-sASwo8gBt7JDnOOstnps90K1wxmVfyhsTPPNTGBPjjg=", + "lastModified": 1685564631, + "narHash": "sha256-8ywr3AkblY4++3lIVxmrWZFzac7+f32ZEhH/A8pNscI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "da45bf6ec7bbcc5d1e14d3795c025199f28e0de0", + "rev": "4f53efe34b3a8877ac923b9350c874e3dcd5dc0a", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 47a5bce..ce83313 100644 --- a/flake.nix +++ b/flake.nix @@ -1,7 +1,7 @@ { - description = "srid/haskell-template: Nix template for Haskell projects"; + description = "matrix-media-expanded"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; + nixpkgs.url = "github:nixos/nixpkgs"; systems.url = "github:nix-systems/default"; flake-parts.url = "github:hercules-ci/flake-parts"; haskell-flake.url = "github:srid/haskell-flake"; @@ -12,7 +12,7 @@ }; outputs = inputs: - inputs.flake-parts.lib.mkFlake { inherit inputs; } { + inputs.flake-parts.lib.mkFlake {inherit inputs;} { systems = import inputs.systems; imports = [ inputs.haskell-flake.flakeModule @@ -20,7 +20,14 @@ inputs.flake-root.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 # has only one. # See https://github.com/srid/haskell-flake/blob/master/example/flake.nix @@ -33,34 +40,36 @@ # Add source or Hackage overrides here # (Local packages are added automatically) /* - aeson.source = "1.5.0.0" # Hackage version - shower.source = inputs.shower; # Flake input - */ + aeson.source = "1.5.0.0" # Hackage version + shower.source = inputs.shower; # Flake input + */ }; # Add your package overrides here settings = { /* - haskell-template = { - haddock = false; - }; - aeson = { - check = false; - }; - */ + haskell-template = { + haddock = false; + }; + aeson = { + check = false; + }; + */ }; # Development shell configuration devShell = { # TODO: Remove this after https://github.com/numtide/treefmt-nix/issues/65 - tools = hp: { - treefmt = config.treefmt.build.wrapper; - } // config.treefmt.build.programs; - hlsCheck.enable = false; + tools = hp: + { + treefmt = config.treefmt.build.wrapper; + } + // config.treefmt.build.programs; + hlsCheck.enable = true; }; # 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 @@ -109,25 +118,31 @@ run = { description = "Run the project with ghcid auto-recompile"; exec = '' - ghcid -c "cabal repl exe:haskell-template" --warnings -T :main + ghcid -c "cabal repl exe:matrix-media-expanded" --warnings -T :main ''; category = "Primary"; }; }; # Default package & app. - packages.default = self'.packages.haskell-template; - apps.default = self'.apps.haskell-template; + packages.default = self'.packages.matrix-media-expanded; + apps.default = self'.apps.matrix-media-expanded; # Default shell. devShells.default = pkgs.mkShell { - name = "haskell-template"; + name = "matrix-media-expanded"; inputsFrom = [ config.haskellProjects.default.outputs.devShell config.flake-root.devShell config.mission-control.devShell ]; }; + formatter = pkgs.alejandra; + }; + flake = { + hydraJobs = { + inherit (inputs.self) packages devShells; + }; }; }; } diff --git a/hie.yaml b/hie.yaml deleted file mode 100644 index 04cd243..0000000 --- a/hie.yaml +++ /dev/null @@ -1,2 +0,0 @@ -cradle: - cabal: diff --git a/haskell-template.cabal b/matrix-media-expanded.cabal similarity index 88% rename from haskell-template.cabal rename to matrix-media-expanded.cabal index 770a028..000415c 100644 --- a/haskell-template.cabal +++ b/matrix-media-expanded.cabal @@ -1,10 +1,10 @@ cabal-version: 2.4 -name: haskell-template +name: matrix-media-expanded version: 0.1.0.0 -license: MIT -copyright: 2022 Sridhar Ratnakumar -maintainer: srid@srid.ca -author: Sridhar Ratnakumar +license-file: LICENSE +copyright: 2023 Charlotte 🦝 Delenk +maintainer: lotte@chir.rs +author: Charlotte 🦝 Delenk category: Web -- TODO: Before hackage release. @@ -91,6 +91,6 @@ common shared hs-source-dirs: src default-language: Haskell2010 -executable haskell-template +executable matrix-media-expanded import: shared main-is: Main.hs