Skip to content

Commit 888419d

Browse files
committed
refactor(nix): reformat nix files
1 parent 9b2ffc3 commit 888419d

File tree

2 files changed

+119
-87
lines changed

2 files changed

+119
-87
lines changed

flake.nix

Lines changed: 112 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -12,96 +12,127 @@
1212
url = "github:ipetkov/crane";
1313
};
1414
};
15-
outputs = { self, nixpkgs, flake-utils, rust-overlay, crane }: flake-utils.lib.eachDefaultSystem (system:
16-
let
17-
overlays = [ (import rust-overlay) ];
18-
pkgs = import nixpkgs {
19-
inherit system overlays;
20-
};
15+
outputs =
16+
{
17+
self,
18+
nixpkgs,
19+
flake-utils,
20+
rust-overlay,
21+
crane,
22+
}:
23+
flake-utils.lib.eachDefaultSystem (
24+
system:
25+
let
26+
overlays = [ (import rust-overlay) ];
27+
pkgs = import nixpkgs {
28+
inherit system overlays;
29+
};
2130

22-
rustToolchain = pkgs.rust-bin.stable.latest.default;
23-
craneLib = (crane.mkLib pkgs).overrideToolchain rustToolchain;
31+
rustToolchain = pkgs.rust-bin.stable.latest.default;
32+
craneLib = (crane.mkLib pkgs).overrideToolchain rustToolchain;
2433

25-
src = pkgs.lib.cleanSourceWith {
26-
src = ./.;
27-
filter = path: type:
28-
(pkgs.lib.hasSuffix "\.css" path) ||
29-
(pkgs.lib.hasSuffix "\.js" path) ||
30-
(pkgs.lib.hasSuffix "\.svg" path) ||
31-
(pkgs.lib.hasSuffix "\.sqlite3" path) ||
32-
(craneLib.filterCargoSources path type)
33-
;
34-
};
35-
commonArgs = {
36-
inherit src;
37-
buildInputs = [ pkgs.git pkgs.pkg-config ];
38-
nativeBuildInputs = [ pkgs.openssl ];
39-
};
34+
src = pkgs.lib.cleanSourceWith {
35+
src = ./.;
36+
filter =
37+
path: type:
38+
(pkgs.lib.hasSuffix "\.css" path)
39+
|| (pkgs.lib.hasSuffix "\.js" path)
40+
|| (pkgs.lib.hasSuffix "\.svg" path)
41+
|| (pkgs.lib.hasSuffix "\.sqlite3" path)
42+
|| (craneLib.filterCargoSources path type);
43+
};
4044

41-
ui = pkgs.buildNpmPackage {
42-
pname = "ui";
43-
version = "0.0.0";
44-
src = ./ui;
45-
npmDepsHash = "sha256-/i3oEy/Jz5ge2oAOiqZFRB7cvCUItw+Z4l3VbK2aK2U=";
46-
installPhase = ''
47-
cp -pr --reflink=auto -- dist "$out/"
48-
'';
49-
};
45+
commonArgs = {
46+
inherit src;
47+
buildInputs = [
48+
pkgs.git
49+
pkgs.pkg-config
50+
];
51+
nativeBuildInputs = [ pkgs.openssl ];
52+
};
5053

51-
cargoArtifacts = craneLib.buildDepsOnly commonArgs;
52-
bin = craneLib.buildPackage (commonArgs // {
53-
inherit cargoArtifacts;
54-
preBuild = ''
55-
cp -pr --reflink=auto -- ${ui} ui/dist
56-
'';
57-
});
54+
ui = pkgs.buildNpmPackage {
55+
pname = "ui";
56+
version = "0.0.0";
57+
src = ./ui;
58+
npmDepsHash = "sha256-/i3oEy/Jz5ge2oAOiqZFRB7cvCUItw+Z4l3VbK2aK2U=";
59+
installPhase = ''
60+
cp -pr --reflink=auto -- dist "$out/"
61+
'';
62+
};
5863

59-
docker = pkgs.dockerTools.buildLayeredImage {
60-
name = "sql-studio";
61-
tag = "latest";
62-
created = "now";
63-
contents = [ bin ];
64-
};
64+
cargoArtifacts = craneLib.buildDepsOnly commonArgs;
65+
bin = craneLib.buildPackage (
66+
commonArgs
67+
// {
68+
inherit cargoArtifacts;
69+
preBuild = ''
70+
cp -pr --reflink=auto -- ${ui} ui/dist
71+
'';
72+
}
73+
);
6574

66-
version = "0.1.43";
67-
deploy = pkgs.writeShellScriptBin "deploy" ''
68-
${pkgs.skopeo}/bin/skopeo --insecure-policy copy docker-archive:${docker} docker://docker.io/frectonz/sql-studio:${version} --dest-creds="frectonz:$ACCESS_TOKEN"
69-
${pkgs.skopeo}/bin/skopeo --insecure-policy copy docker://docker.io/frectonz/sql-studio:${version} docker://docker.io/frectonz/sql-studio:latest --dest-creds="frectonz:$ACCESS_TOKEN"
70-
'';
71-
in
72-
{
73-
packages = {
74-
inherit deploy docker ui;
75-
default = bin;
76-
stable = pkgs.callPackage ./package.nix { };
77-
};
75+
docker = pkgs.dockerTools.buildLayeredImage {
76+
name = "sql-studio";
77+
tag = "latest";
78+
created = "now";
79+
contents = [ bin ];
80+
};
81+
82+
version = "0.1.43";
83+
deploy = pkgs.writeShellScriptBin "deploy" ''
84+
${pkgs.skopeo}/bin/skopeo --insecure-policy copy docker-archive:${docker} docker://docker.io/frectonz/sql-studio:${version} --dest-creds="frectonz:$ACCESS_TOKEN"
85+
${pkgs.skopeo}/bin/skopeo --insecure-policy copy docker://docker.io/frectonz/sql-studio:${version} docker://docker.io/frectonz/sql-studio:latest --dest-creds="frectonz:$ACCESS_TOKEN"
86+
'';
87+
in
88+
{
89+
packages = {
90+
inherit deploy docker ui;
91+
default = bin;
92+
stable = pkgs.callPackage ./package.nix { };
93+
};
7894

79-
devShells.default = pkgs.mkShell {
80-
buildInputs = [
81-
pkgs.bacon
82-
pkgs.emmet-ls
83-
pkgs.cargo-dist
84-
pkgs.cargo-watch
85-
pkgs.rust-analyzer
86-
pkgs.cargo-outdated
87-
rustToolchain
95+
devShells.default = pkgs.mkShell {
96+
buildInputs = [
97+
pkgs.bacon
98+
pkgs.emmet-ls
99+
pkgs.cargo-dist
100+
pkgs.cargo-watch
101+
pkgs.rust-analyzer
102+
pkgs.cargo-outdated
103+
rustToolchain
88104

89-
pkgs.nodejs
90-
pkgs.nodePackages.typescript-language-server
91-
pkgs.nodePackages.vscode-langservers-extracted
92-
pkgs.nodePackages."@tailwindcss/language-server"
105+
pkgs.nodejs
106+
pkgs.nodePackages.typescript-language-server
107+
pkgs.nodePackages.vscode-langservers-extracted
108+
pkgs.nodePackages."@tailwindcss/language-server"
93109

94-
pkgs.httpie
95-
pkgs.sqlite
96-
pkgs.prefetch-npm-deps
97-
] ++ (pkgs.lib.optionals pkgs.stdenv.isDarwin (
98-
with pkgs.darwin.apple_sdk.frameworks; [
99-
Foundation
110+
pkgs.httpie
111+
pkgs.sqlite
112+
pkgs.prefetch-npm-deps
100113
]
101-
));
102-
};
114+
++ (pkgs.lib.optionals pkgs.stdenv.isDarwin (
115+
with pkgs.darwin.apple_sdk.frameworks;
116+
[
117+
Foundation
118+
]
119+
));
120+
};
121+
122+
formatter = pkgs.treefmt.withConfig {
123+
runtimeInputs = [ pkgs.nixfmt-rfc-style ];
124+
125+
settings = {
126+
# Log level for files treefmt won't format
127+
on-unmatched = "info";
103128

104-
formatter = pkgs.nixpkgs-fmt;
105-
}
106-
);
129+
# Configure nixfmt for .nix files
130+
formatter.nixfmt = {
131+
command = "nixfmt";
132+
includes = [ "*.nix" ];
133+
};
134+
};
135+
};
136+
}
137+
);
107138
}

package.nix

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
{ lib
2-
, stdenv
3-
, darwin
4-
, fetchFromGitHub
5-
, rustPlatform
6-
, buildNpmPackage
1+
{
2+
lib,
3+
stdenv,
4+
darwin,
5+
fetchFromGitHub,
6+
rustPlatform,
7+
buildNpmPackage,
78
}:
89
let
910
pname = "sql-studio";

0 commit comments

Comments
 (0)