Merge pull request #2 from cything/gh-actions

make nix flake check also check formatting in gh actions
This commit is contained in:
cy 2024-12-28 11:54:02 -05:00 committed by GitHub
commit e9897830e6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 276 additions and 239 deletions

View file

@ -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
View file

@ -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",

View file

@ -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

View file

@ -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",

View file

@ -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",
}
}
}
},
},
})

View file

@ -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,

View file

@ -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 })

View file

@ -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" },
})
}
}),
})

View file

@ -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({