From d40cec11f6ebdf793e170d73e7a16d20b5eb4831 Mon Sep 17 00:00:00 2001 From: mintsuki Date: Thu, 1 Aug 2024 05:59:31 +0200 Subject: [PATCH] build: Get rid of nix flake stuff --- .editorconfig | 2 +- .envrc | 1 - .github/workflows/check.yml | 9 ----- .gitignore | 5 --- README.md | 17 ++-------- flake.lock | 65 ------------------------------------- flake.nix | 63 ----------------------------------- 7 files changed, 4 insertions(+), 158 deletions(-) delete mode 100644 .envrc delete mode 100644 flake.lock delete mode 100644 flake.nix diff --git a/.editorconfig b/.editorconfig index fa73dbbf..5181c19e 100644 --- a/.editorconfig +++ b/.editorconfig @@ -14,5 +14,5 @@ max_line_length = 80 [{Makefile,GNUmakefile*}] indent_style = tab -[{*.nix,*.toml,*.yml}] +[{*.toml,*.yml}] indent_size = 2 diff --git a/.envrc b/.envrc deleted file mode 100644 index 3550a30f..00000000 --- a/.envrc +++ /dev/null @@ -1 +0,0 @@ -use flake diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index d25b356d..f2dc0880 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -29,12 +29,3 @@ jobs: - name: Build the bootloader (GNU, riscv64) run: ./bootstrap && ./configure TOOLCHAIN_FOR_TARGET=riscv64-linux-gnu --enable-werror --enable-uefi-riscv64 && make all && make maintainer-clean - - build_nix_shell: - name: Build with Nix shell toolchain - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: cachix/install-nix-action@V27 - - uses: DeterminateSystems/magic-nix-cache-action@main - - run: nix develop --command bash -c "./bootstrap && ./configure --enable-all && make -j $(nproc)" diff --git a/.gitignore b/.gitignore index a9c925ed..6f3f614a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,6 @@ # We don't want to ignore the following files !.clang-format !.editorconfig -!.envrc !.gitattributes !.gitignore !.typos.toml @@ -72,7 +71,3 @@ compile_commands.json # clangd caches /.clangd /.cache/clangd - -# Nix -/.direnv -/result* diff --git a/README.md b/README.md index acf15eb2..75baf62b 100644 --- a/README.md +++ b/README.md @@ -87,18 +87,7 @@ Host utility binaries are provided for Windows. *The following steps are not necessary if cloning a binary release. If so, skip to* *"Installing Limine binaries".* -### Building with Nix - -This repository provides [Nix](https://nixos.org/)-based tooling for a convenient -development environment and building Limine using Nix. - -To use the regular build flow using a toolchain obtained by Nix, simply -run `$ nix develop` to open a Nix shell. Then follow the guide below, -skipping the "Prerequisites" step. - -### Regular build - -#### Prerequisites +### Prerequisites In order to build Limine, the following programs have to be installed: common UNIX tools (also known as `coreutils`), @@ -107,7 +96,7 @@ common UNIX tools (also known as `coreutils`), Furthermore, `gcc` or `llvm/clang` must also be installed, alongside the respective binutils. -#### Configure +### Configure If using a release tarball (recommended, see https://github.com/limine-bootloader/limine/releases), run `./configure` directly. @@ -125,7 +114,7 @@ Limine supports both in-tree and out-of-tree builds. Simply run the `configure` script from the directory you wish to execute the build in. The following `make` commands are supposed to be run inside the build directory. -#### Building Limine +### Building Limine To build Limine, run: ```bash diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 60cc5f1c..00000000 --- a/flake.lock +++ /dev/null @@ -1,65 +0,0 @@ -{ - "nodes": { - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1712588820, - "narHash": "sha256-y31s5idk3jMJMAVE4Ud9AdI7HT3CgTAeMTJ0StqKN7Y=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d272ca50d1f7424fbfcd1e6f1c9e01d92f6da167", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-23.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1712666087, - "narHash": "sha256-WwjUkWsjlU8iUImbivlYxNyMB1L5YVqE8QotQdL9jWc=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a76c4553d7e741e17f289224eda135423de0491d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "root": { - "inputs": { - "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs", - "nixpkgs-unstable": "nixpkgs-unstable" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix deleted file mode 100644 index 4662e329..00000000 --- a/flake.nix +++ /dev/null @@ -1,63 +0,0 @@ -# This flake is supposed to enable a convenient development environment. -# It is independent of any packaging in nixpkgs. -# -# See https://github.com/limine-bootloader/limine/issues/330 for more details -# regarding the packaging in nixpkgs. - -{ - description = "Limine"; - - inputs = { - flake-parts.url = "github:hercules-ci/flake-parts"; - flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs"; - nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11"; - nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - }; - - outputs = inputs@{ self, nixpkgs, nixpkgs-unstable, flake-parts }: - flake-parts.lib.mkFlake { inherit inputs; } { - flake = { }; - # Don't artificially limit users at this point. If a build fails, they - # will notice it soon enough. - systems = nixpkgs.lib.systems.flakeExposed; - perSystem = { config, pkgs, ... }: - { - devShells = { - default = pkgs.mkShell { - packages = with pkgs; [ - # Dependencies for ./bootstrap - autoconf - automake - - # General build dependencies - cacert - git - mtools - nasm - pkg-config # Checked for by ./configure but seems unused? - - # gcc toolchain (comes as default, here only for completeness) - binutils - gcc - gnumake - - # llvm toolchain (with TOOLCHAIN_FOR_TARGET=llvm) - llvmPackages.bintools - llvmPackages.clang - llvmPackages.lld - - # Nix - nixpkgs-fmt - - # Misc - # typos is not yet frequently updated in the stable channel - nixpkgs-unstable.legacyPackages.${pkgs.system}.typos - ]; - }; - }; - - # `$ nix fmt` - formatter = pkgs.nixpkgs-fmt; - }; - }; -}