Skip to content

Commit

Permalink
Merge remote-tracking branch 'remote/main'
Browse files Browse the repository at this point in the history
Signed-off-by: sgiath <[email protected]>
  • Loading branch information
Sgiath committed Jun 24, 2024
2 parents 1da7187 + cd76d64 commit f8fea3b
Show file tree
Hide file tree
Showing 58 changed files with 773 additions and 387 deletions.
14 changes: 14 additions & 0 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
on:
pull_request:
push:
branches: [main]

jobs:
check:
runs-on: "ubuntu-22.04"
steps:
- uses: "actions/checkout@v4"
- uses: "DeterminateSystems/nix-installer-action@main"
- uses: "DeterminateSystems/magic-nix-cache-action@main"
- name: Flake check
run: nix develop --command check
5 changes: 3 additions & 2 deletions .github/workflows/flakehub-publish-tagged.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,14 @@ on:

jobs:
publish:
runs-on: "ubuntu-latest"
runs-on: "ubuntu-22.04"
permissions:
id-token: "write"
contents: "read"
steps:
- uses: "actions/checkout@v3"
- uses: "actions/checkout@v4"
- uses: "DeterminateSystems/nix-installer-action@main"
- uses: "DeterminateSystems/magic-nix-cache-action@main"
- uses: "DeterminateSystems/flakehub-push@main"
with:
visibility: "public"
68 changes: 62 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,15 @@ Once your preferred template has been initialized, you can use the provided shel

| Language/framework/tool | Template |
| :----------------------- | :---------------------------- |
| [Bun] | [`bun`](./bun/) |
| [C]/[C++] | [`c-cpp`](./c-cpp/) |
| [Clojure] | [`clojure`](./clojure/) |
| [C#][csharp] | [`csharp`](./csharp/) |
| [Cue] | [`cue`](./cue/) |
| [Dhall] | [`dhall`](./dhall/) |
| [Elixir] | [`elixir`](./elixir/) |
| [Elm] | [`elm`](./elm/) |
| Empty (change at will) | [`empty`](./empty) |
| [Gleam] | [`gleam`](./gleam/) |
| [Go] | [`go`](./go/) |
| [Hashicorp] tools | [`hashi`](./hashi/) |
Expand All @@ -52,16 +55,36 @@ Once your preferred template has been initialized, you can use the provided shel
| [Protobuf] | [`protobuf`](./protobuf/) |
| [Pulumi] | [`pulumi`](./pulumi/) |
| [Purescript] | [`purescript`](./purescript/) |
| [R] | [`r`](./r/) |
| [Ruby] | [`ruby`](./ruby/) |
| [Rust] | [`rust`](./rust/) |
| [Scala] | [`scala`](./scala/) |
| [Shell] | [`shell`](./shell/) |
| [Vlang] | [`vlang`](./vlang/) |
| [Zig] | [`zig`](./zig/) |

## Template contents

The sections below list what each template includes. In all cases, you're free to add and remove packages as you see fit; the templates are just boilerplate.

### [`bun`](./bun/)

- [bun] 1.1.8

### [`c-cpp`](./c-cpp/)

- [clang-tools] 17.0.6
- [cmake] 3.28.3
- [codespell] 2.2.6
- [conan] 2.0.17
- [cppcheck] 2.13.4
- [doxygen] 1.10.0
- [gdb] 14.1
- [gtest] 1.12.1
- [lcov] 1.0
- [vcpkg]
- [vcpkg-tool]

### [`clojure`](./clojure/)

- [Clojure] 1.11.1.1347
Expand Down Expand Up @@ -102,6 +125,10 @@ The sections below list what each template includes. In all cases, you're free t
- [Elm] 0.19.1
- [elm2nix]

### [Empty](./empty/)

A dev template that's fully customizable.

### [`gleam`](./gleam/)

- [Gleam] 0.30.0
Expand Down Expand Up @@ -139,6 +166,7 @@ The sections below list what each template includes. In all cases, you're free t
- [Java] 20.0.1+9
- [Maven] 3.9.2
- [Gradle] 9.0.1
- [jdtls] 1.31.0

### [`kotlin`](./kotlin/)

Expand Down Expand Up @@ -221,7 +249,12 @@ The sections below list what each template includes. In all cases, you're free t

- [Python] 3.11.4
- [pip] 23.0.1
- [Virtualenv] 20.19.0

### [`r`](./r/)

- [R] 4.3.1
- [rmarkdown] 2.22
- [knitr] 1.43 ([pandoc] and [texlive])

### [`ruby`](./ruby/)

Expand All @@ -233,11 +266,11 @@ The sections below list what each template includes. In all cases, you're free t

- From the `rust-toolchain.toml` file if present
- From the `rust-toolchain` file if present
- Version 1.70.0 if neither is present
- Version 1.78.0 if neither is present

- [rust-analyzer] 2023-07-10
- [cargo-audit] 0.17.0
- [cargo-deny] 0.12.1
- [rust-analyzer] 2024-04-29
- [cargo-edit] 0.12.2
- [cargo-deny] 0.14.23

### [`scala`](./scala/)

Expand All @@ -248,6 +281,10 @@ The sections below list what each template includes. In all cases, you're free t

- [shellcheck] 0.9.0

### [`Vlang`](./vlang/)

- [Vlang] 0.4.4

### [`zig`](./zig/)

- [Zig] 0.10.1
Expand All @@ -258,15 +295,23 @@ All of the templates have only the root [flake](./flake.nix) as a flake input. T

[boot]: https://www.boot-clj.com
[buf]: https://github.com/bufbuild/buf
[bun]: https://bun.sh/
[C]: https://www.open-std.org/jtc1/sc22/wg14
[C++]: https://isocpp.org
[cabal]: https://www.haskell.org/cabal
[cachix]: https://www.cachix.org
[cargo]: https://doc.rust-lang.org/cargo
[cargo-audit]: https://crates.io/crates/cargo-audit
[cargo-deny]: https://crates.io/crates/cargo-deny
[clang-tools]: https://clang.llvm.org/
[clippy]: https://github.com/rust-lang/rust-clippy
[clojure]: https://clojure.org
[cmake]: https://cmake.org/
[codespell]: https://github.com/codespell-project/codespell
[composer]: https://getcomposer.org/
[conan]: https://conan.io/
[conftest]: https://www.conftest.dev
[cppcheck]: http://cppcheck.sourceforge.net/
[csharp]: https://dotnet.microsoft.com/en-us/languages/csharp
[cue]: https://cuelang.org
[damon]: https://github.com/hashicorp/damon
Expand All @@ -282,26 +327,32 @@ All of the templates have only the root [flake](./flake.nix) as a flake input. T
[dhall-toml]: https://github.com/dhall-lang/dhall-haskell/tree/master/dhall-toml
[dhall-yaml]: https://github.com/dhall-lang/dhall-haskell/tree/master/dhall-yaml
[dotnet]: https://dotnet.microsoft.com/en-us/
[doxygen]: https://www.doxygen.nl/
[dune]: https://dune.build
[elixir]: https://elixir-lang.org
[elm]: https://elm-lang.org
[elm2nix]: https://github.com/cachix/elm2nix
[flake-utils]: https://github.com/numtide/flake-utils
[gdb]: https://www.gnu.org/software/gdb/
[gigalixir]: https://www.gigalixir.com
[gleam]: https://gleam.run
[go]: https://go.dev
[godoc]: https://pkg.go.dev/golang.org/x/tools/cmd/godoc
[goimports]: https://pkg.go.dev/golang.org/x/tools/cmd/goimports
[golangci-lint]: https://github.com/golangci/golangci-lint
[gradle]: https://gradle.org
[gtest]: https://github.com/google/googletest
[hashicorp]: https://hashicorp.com
[haskell]: https://haskell.org
[haxe]: https://haxe.org/
[iex]: https://hexdocs.pm/iex/IEx.html
[java]: https://java.com
[jdtls]: https://projects.eclipse.org/projects/eclipse.jdt.ls
[jq]: https://jqlang.github.io/jq
[knitr]: https://yihui.org/knitr/
[kotlin]: https://kotlinlang.org
[latex]: https://www.latex-project.org/
[lcov]: https://ltp.sourceforge.net/coverage/lcov.php
[leiningen]: https://leiningen.org
[levant]: https://github.com/hashicorp/levant
[lorri]: https://github.com/target/lorri
Expand All @@ -328,6 +379,7 @@ All of the templates have only the root [flake](./flake.nix) as a flake input. T
[odoc]: https://github.com/ocaml/odoc
[omnisharp-roslyn]: https://github.com/OmniSharp/omnisharp-roslyn
[opa]: https://openpolicyagent.org
[pandoc]: https://pandoc.org/
[packer]: https://packer.io
[pip]: https://pypi.org/project/pip
[phoenix]: https://phoenixframework.org
Expand All @@ -339,7 +391,9 @@ All of the templates have only the root [flake](./flake.nix) as a flake input. T
[purescript-language-server]: https://github.com/nwolverson/purescript-language-server
[purs-tidy]: https://github.com/natefaubion/purescript-tidy
[python]: https://python.org
[r]: https://www.r-project.org/
[release]: https://github.com/NixOS/nixpkgs/releases/tag/22.11
[rmarkdown]: https://rmarkdown.rstudio.com/
[ruby]: https://ruby-lang.org
[rust]: https://rust-lang.org
[rust-analyzer]: https://rust-analyzer.github.io
Expand All @@ -355,7 +409,9 @@ All of the templates have only the root [flake](./flake.nix) as a flake input. T
[texlive]: https://www.tug.org/texlive/
[tflint]: https://github.com/terraform-linters/tflint
[vault]: https://www.vaultproject.io
[virtualenv]: https://pypi.org/project/virtualenv
[vcpkg]: https://vcpkg.io/
[vcpkg-tool]: https://github.com/microsoft/vcpkg-tool
[vulnix]: https://github.com/flyingcircusio/vulnix
[yarn]: https://yarnpkg.com
[vlang]: https://vlang.io/
[zig]: https://ziglang.org
1 change: 1 addition & 0 deletions bun/.envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
use flake
25 changes: 25 additions & 0 deletions bun/flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

25 changes: 25 additions & 0 deletions bun/flake.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
description = "A Nix-flake-based Bun development environment";

inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.*.tar.gz";

outputs = { self, nixpkgs }:
let
overlays = [
(final: prev: rec {
bun = prev.bun;
})
];
supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f {
pkgs = import nixpkgs { inherit overlays system; };
});
in
{
devShells = forEachSupportedSystem ({ pkgs }: {
default = pkgs.mkShell {
packages = with pkgs; [ bun ];
};
});
};
}
1 change: 1 addition & 0 deletions c-cpp/.envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
use flake
25 changes: 25 additions & 0 deletions c-cpp/flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

36 changes: 36 additions & 0 deletions c-cpp/flake.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
description = "A Nix-flake-based C/C++ development environment";

inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.*.tar.gz";

outputs = { self, nixpkgs }:
let
supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f {
pkgs = import nixpkgs { inherit system; };
});
in
{
devShells = forEachSupportedSystem ({ pkgs }: {
default = pkgs.mkShell.override {
# Override stdenv in order to change compiler:
# stdenv = pkgs.clangStdenv;
}
{
packages = with pkgs; [
clang-tools
cmake
codespell
conan
cppcheck
doxygen
gtest
lcov
vcpkg
vcpkg-tool
] ++ (if system == "aarch64-darwin" then [ ] else [ gdb ]);
};
});
};
}

10 changes: 5 additions & 5 deletions clojure/flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions csharp/flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit f8fea3b

Please sign in to comment.