Merge pull request #2 from cything/gh-actions
make nix flake check also check formatting in gh actions
This commit is contained in:
commit
e9897830e6
9 changed files with 276 additions and 239 deletions
14
.github/workflows/flake-check.yml
vendored
14
.github/workflows/flake-check.yml
vendored
|
@ -1,4 +1,4 @@
|
|||
name: "nix build and flake check"
|
||||
name: "nix flake and fmt check"
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
|
@ -11,15 +11,3 @@ jobs:
|
|||
with:
|
||||
github_access_token: ${{ secrets.github_token }}
|
||||
- run: nix flake check
|
||||
|
||||
nixfmt:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: cachix/install-nix-action@v30
|
||||
with:
|
||||
github_access_token: ${{ secrets.github_token }}
|
||||
- name: install nixfmt
|
||||
run: nix-env -f <nixpkgs> -iAP nixfmt-rfc-style
|
||||
- name: check that nix files are formatted correctly
|
||||
run : nixfmt --check
|
||||
|
|
37
flake.lock
generated
37
flake.lock
generated
|
@ -84,6 +84,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1733097829,
|
||||
"narHash": "sha256-9hbb1rqGelllb4kVUCZ307G2k3/UhmA8PPGBoyuWaSw=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "2c15aa59df0017ca140d9ba302412298ab4bf22a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
|
@ -91,7 +107,8 @@
|
|||
"nixpkgs-borg": "nixpkgs-borg",
|
||||
"nixpkgs-evolution": "nixpkgs-evolution",
|
||||
"nixpkgs-master": "nixpkgs-master",
|
||||
"sops-nix": "sops-nix"
|
||||
"sops-nix": "sops-nix",
|
||||
"treefmt": "treefmt"
|
||||
}
|
||||
},
|
||||
"sops-nix": {
|
||||
|
@ -113,6 +130,24 @@
|
|||
"repo": "sops-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1735135567,
|
||||
"narHash": "sha256-8T3K5amndEavxnludPyfj3Z1IkcFdRpR23q+T0BVeZE=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "9e09d30a644c57257715902efbb3adc56c79cf28",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
16
flake.nix
16
flake.nix
|
@ -11,6 +11,7 @@
|
|||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
treefmt.url = "github:numtide/treefmt-nix";
|
||||
nixpkgs-borg.url = "github:cything/nixpkgs/borg";
|
||||
nixpkgs-master.url = "github:nixos/nixpkgs/master";
|
||||
nixpkgs-evolution.url = "github:nixos/nixpkgs/a49023bcb550bcd84e1fa8afcbe7aa8bc0850bf4";
|
||||
|
@ -21,6 +22,7 @@
|
|||
self,
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
treefmt,
|
||||
...
|
||||
}@inputs:
|
||||
let
|
||||
|
@ -65,10 +67,22 @@
|
|||
};
|
||||
}
|
||||
);
|
||||
|
||||
treefmtEval = forEachSystem (
|
||||
pkgs:
|
||||
treefmt.lib.evalModule pkgs {
|
||||
projectRootFile = "flake.nix";
|
||||
programs.nixfmt.enable = true;
|
||||
programs.stylua.enable = true;
|
||||
}
|
||||
);
|
||||
in
|
||||
{
|
||||
packages = forEachSystem (pkgs: import ./pkgs { inherit pkgs; });
|
||||
formatter = forEachSystem (pkgs: pkgs.nixfmt-rfc-style);
|
||||
formatter = forEachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper);
|
||||
checks = forEachSystem (pkgs: {
|
||||
formatting = treefmtEval.${pkgs.system}.config.build.check self;
|
||||
});
|
||||
|
||||
nixosConfigurations =
|
||||
let
|
||||
|
|
|
@ -8,13 +8,13 @@ vim.g.loaded_netrwPlugin = 1
|
|||
vim.opt.termguicolors = true
|
||||
require("nvim-tree").setup()
|
||||
|
||||
require("lualine").setup {
|
||||
require("lualine").setup({
|
||||
options = {
|
||||
theme = "auto",
|
||||
icons_enabled = true,
|
||||
globalstatus = true,
|
||||
}
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
require("gitsigns").setup()
|
||||
|
||||
|
@ -34,7 +34,7 @@ opt.showmode = false
|
|||
opt.mouse = ""
|
||||
opt.wrap = false
|
||||
|
||||
vim.cmd.colorscheme "iceberg"
|
||||
vim.cmd.colorscheme("iceberg")
|
||||
|
||||
keymap.set("n", "<space>s", require("nvim-tree.api").tree.toggle, {
|
||||
desc = "toggle nvim-tree",
|
||||
|
|
|
@ -8,7 +8,7 @@ keymap.set("n", "<leader>fc", fzf.resume, { silent = true })
|
|||
keymap.set("n", "<leader>fs", fzf.treesitter, { silent = true })
|
||||
keymap.set("n", "<leader>fg", fzf.grep_project, { silent = true })
|
||||
|
||||
fzf.setup {
|
||||
fzf.setup({
|
||||
"fzf-native",
|
||||
keymap = {
|
||||
fzf = {
|
||||
|
@ -16,6 +16,6 @@ fzf.setup {
|
|||
["ctrl-d"] = "half-page-down",
|
||||
["ctrl-j"] = "preview-page-down",
|
||||
["ctrl-k"] = "preview-page-up",
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
})
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
local hop = require('hop')
|
||||
local hop = require("hop")
|
||||
local keymap = vim.keymap
|
||||
|
||||
hop.setup {
|
||||
case_insensitive = true;
|
||||
hop.setup({
|
||||
case_insensitive = true,
|
||||
char2_fallback_key = "<CR>",
|
||||
quit_key = "<Esc",
|
||||
}
|
||||
})
|
||||
|
||||
keymap.set({ 'n', 'v', 'o' }, '<C-t>', "", {
|
||||
silent = true;
|
||||
noremap = true;
|
||||
keymap.set({ "n", "v", "o" }, "<C-t>", "", {
|
||||
silent = true,
|
||||
noremap = true,
|
||||
callback = function()
|
||||
hop.hint_char1()
|
||||
end,
|
||||
|
|
|
@ -8,22 +8,22 @@ keymap.set("n", "gr", lsp.buf.references)
|
|||
keymap.set("n", "[d", diagnostic.goto_prev)
|
||||
keymap.set("n", "]d", diagnostic.goto_next)
|
||||
|
||||
diagnostic.config {
|
||||
diagnostic.config({
|
||||
signs = false,
|
||||
}
|
||||
})
|
||||
|
||||
local lspconfig = require("lspconfig")
|
||||
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||
|
||||
lspconfig.pylsp.setup { capabilities = capabilities }
|
||||
lspconfig.clangd.setup { capabilities = capabilities }
|
||||
lspconfig.vimls.setup { capabilities = capabilities }
|
||||
lspconfig.bashls.setup { capabilities = capabilities }
|
||||
lspconfig.rust_analyzer.setup {
|
||||
lspconfig.pylsp.setup({ capabilities = capabilities })
|
||||
lspconfig.clangd.setup({ capabilities = capabilities })
|
||||
lspconfig.vimls.setup({ capabilities = capabilities })
|
||||
lspconfig.bashls.setup({ capabilities = capabilities })
|
||||
lspconfig.rust_analyzer.setup({
|
||||
capabilities = capabilities,
|
||||
}
|
||||
})
|
||||
|
||||
lspconfig.gopls.setup {
|
||||
lspconfig.gopls.setup({
|
||||
settings = {
|
||||
gopls = {
|
||||
analyses = {
|
||||
|
@ -31,46 +31,46 @@ lspconfig.gopls.setup {
|
|||
},
|
||||
staticcheck = true,
|
||||
gofumpt = true,
|
||||
}
|
||||
},
|
||||
},
|
||||
capabilities = capabilities,
|
||||
}
|
||||
})
|
||||
|
||||
lspconfig.lua_ls.setup {
|
||||
lspconfig.lua_ls.setup({
|
||||
capabilities = capabilities,
|
||||
on_init = function(client)
|
||||
if client.workspace_folders then
|
||||
local path = client.workspace_folders[1].name
|
||||
if vim.uv.fs_stat(path..'/.luarc.json') or vim.uv.fs_stat(path..'/.luarc.jsonc') then
|
||||
if vim.uv.fs_stat(path .. "/.luarc.json") or vim.uv.fs_stat(path .. "/.luarc.jsonc") then
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua, {
|
||||
client.config.settings.Lua = vim.tbl_deep_extend("force", client.config.settings.Lua, {
|
||||
runtime = {
|
||||
-- Tell the language server which version of Lua you're using
|
||||
-- (most likely LuaJIT in the case of Neovim)
|
||||
version = 'LuaJIT'
|
||||
version = "LuaJIT",
|
||||
},
|
||||
-- Make the server aware of Neovim runtime files
|
||||
workspace = {
|
||||
checkThirdParty = false,
|
||||
library = {
|
||||
vim.env.VIMRUNTIME
|
||||
vim.env.VIMRUNTIME,
|
||||
-- Depending on the usage, you might want to add additional paths here.
|
||||
-- "${3rd}/luv/library"
|
||||
-- "${3rd}/busted/library",
|
||||
}
|
||||
},
|
||||
-- or pull in all of 'runtimepath'. NOTE: this is a lot slower
|
||||
-- library = vim.api.nvim_get_runtime_file("", true)
|
||||
}
|
||||
},
|
||||
})
|
||||
end,
|
||||
settings = {
|
||||
Lua = {}
|
||||
}
|
||||
}
|
||||
Lua = {},
|
||||
},
|
||||
})
|
||||
|
||||
lspconfig.nixd.setup { capabilities = capabilities }
|
||||
lspconfig.sqls.setup { capabilities = capabilities }
|
||||
lspconfig.hls.setup { capabilities = capabilities }
|
||||
lspconfig.nixd.setup({ capabilities = capabilities })
|
||||
lspconfig.sqls.setup({ capabilities = capabilities })
|
||||
lspconfig.hls.setup({ capabilities = capabilities })
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
local cmp = require("cmp")
|
||||
local luasnip = require("luasnip");
|
||||
local luasnip = require("luasnip")
|
||||
|
||||
cmp.setup {
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
require('luasnip').lsp_expand(args.body)
|
||||
require("luasnip").lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
mapping = {
|
||||
|
@ -44,11 +44,11 @@ cmp.setup {
|
|||
end
|
||||
end, { "i", "s" }),
|
||||
},
|
||||
sources = cmp.config.sources ({
|
||||
sources = cmp.config.sources({
|
||||
{ name = "nvim_lsp" },
|
||||
{ name = "luasnip" },
|
||||
}, {
|
||||
{ name = "buffer" },
|
||||
{ name = "path" },
|
||||
})
|
||||
}
|
||||
}),
|
||||
})
|
||||
|
|
|
@ -34,7 +34,7 @@ local plugin_specs = {
|
|||
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
event = 'VeryLazy',
|
||||
event = "VeryLazy",
|
||||
dependencies = {
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"hrsh7th/cmp-path",
|
||||
|
@ -78,19 +78,19 @@ local plugin_specs = {
|
|||
|
||||
{ "folke/tokyonight.nvim", lazy = false, priority = 1000 },
|
||||
|
||||
{ "lewis6991/gitsigns.nvim"},
|
||||
{ "lewis6991/gitsigns.nvim" },
|
||||
|
||||
{ "nvim-lualine/lualine.nvim", dependencies = { "nvim-tree/nvim-web-devicons" } },
|
||||
|
||||
{
|
||||
'smoka7/hop.nvim',
|
||||
"smoka7/hop.nvim",
|
||||
version = "*",
|
||||
config = function()
|
||||
require("config.hop")
|
||||
end,
|
||||
},
|
||||
|
||||
{ "cocopon/iceberg.vim" }
|
||||
{ "cocopon/iceberg.vim" },
|
||||
}
|
||||
|
||||
require("lazy").setup({
|
||||
|
|
Loading…
Add table
Reference in a new issue