aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/development/tools/swiftformat
diff options
context:
space:
mode:
authorMx Kookie <kookie@spacekookie.de>2020-12-21 06:05:12 +0100
committerMx Kookie <kookie@spacekookie.de>2020-12-21 06:05:12 +0100
commitf107be784e6d5da5f90735765a68fdff96acfbb4 (patch)
tree145573a598009fb6adbd5ef7fbce0a850681f5f0 /infra/libkookie/nixpkgs/pkgs/development/tools/swiftformat
parent2e04b35e5ac3a9123cafffbc84494fa4d389cca0 (diff)
parente9158eca70ae59e73fae23be5d13d3fa0cfc78b4 (diff)
Add 'infra/libkookie/nixpkgs/' from commit 'e9158eca70ae59e73fae23be5d13d3fa0cfc78b4'
git-subtree-dir: infra/libkookie/nixpkgs git-subtree-mainline: 2e04b35e5ac3a9123cafffbc84494fa4d389cca0 git-subtree-split: e9158eca70ae59e73fae23be5d13d3fa0cfc78b4
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/tools/swiftformat')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/development/tools/swiftformat/default.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/tools/swiftformat/default.nix b/infra/libkookie/nixpkgs/pkgs/development/tools/swiftformat/default.nix
new file mode 100644
index 000000000000..cb3ed5217f08
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/development/tools/swiftformat/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, lib, fetchFromGitHub, runCommand }:
+
+# This derivation is impure: it relies on an Xcode toolchain being installed
+# and available in the expected place. The values of sandboxProfile and
+# hydraPlatforms are copied pretty directly from the MacVim derivation, which
+# is also impure.
+
+stdenv.mkDerivation rec {
+ pname = "swiftformat";
+ version = "0.44.9";
+
+ src = fetchFromGitHub {
+ owner = "nicklockwood";
+ repo = "SwiftFormat";
+ rev = version;
+ sha256 = "0zajvbaf3r02k53lv5zdxf13apc6chnjmj69zkyac48lpnpbcxq6";
+ };
+
+ preConfigure = "LD=$CC";
+
+ buildPhase = ''
+ /usr/bin/xcodebuild -project SwiftFormat.xcodeproj \
+ -scheme "SwiftFormat (Command Line Tool)" \
+ CODE_SIGN_IDENTITY= SYMROOT=build OBJROOT=build
+ '';
+
+ installPhase = ''
+ install -D -m 0555 build/Release/swiftformat $out/bin/swiftformat
+ '';
+
+ sandboxProfile = ''
+ (allow file-read* file-write* process-exec mach-lookup)
+ ; block homebrew dependencies
+ (deny file-read* file-write* process-exec mach-lookup (subpath "/usr/local") (with no-log))
+ '';
+
+ meta = with lib; {
+ description = "A code formatting and linting tool for Swift";
+ homepage = "https://github.com/nicklockwood/SwiftFormat";
+ license = licenses.mit;
+ maintainers = [ maintainers.bdesham ];
+ platforms = platforms.darwin;
+ hydraPlatforms = [];
+ };
+}