12 Commits

Author SHA1 Message Date
4f822e88b8 chore: nvim should follow nixpkgs
All checks were successful
build-flake / build (pull_request) Successful in 6m3s
build-flake / Release a new version (push) Successful in 8s
build-flake / Build flake (push) Successful in 5m28s
2024-11-21 21:18:08 +02:00
204ad75438 ci: run build on mr and use release from template
All checks were successful
build-flake / build (pull_request) Successful in 2m15s
build-flake / Build flake (push) Successful in 5m38s
build-flake / Release a new version (push) Successful in 9s
2024-11-19 11:56:23 +02:00
761311c5f0 chore: update to nixos-24.11 2024-11-19 11:16:38 +02:00
90d3255556 feat: disable blink extra 2024-11-19 11:16:14 +02:00
9734dc46e0 feat: add bigfile plugin 2024-11-19 10:33:01 +02:00
eb332e0123 chore(deps): update softprops/action-gh-release action to v2
All checks were successful
check-flake / build (push) Successful in 2m38s
check-flake / release (push) Successful in 12s
2024-11-14 22:10:09 +00:00
11fd98c16b build: add auto release
Some checks failed
check-flake / build (push) Successful in 5m30s
check-flake / release (push) Failing after 7s
2024-11-14 20:30:32 +02:00
8cdea2c53b build: add auto release
Some checks failed
check-flake / build (push) Successful in 2m9s
check-flake / release (push) Failing after 9s
2024-11-14 20:22:15 +02:00
562db427c6 build: add auto release
Some checks failed
check-flake / build (push) Successful in 2m27s
check-flake / release (push) Failing after 10s
2024-11-14 20:16:28 +02:00
aef12de964 feat: update nvim package
All checks were successful
check-flake / build (push) Successful in 17m41s
2024-11-14 19:53:26 +02:00
e24df7ff1f chore: update flake.lock 2024-11-14 19:52:41 +02:00
7e6617d3f4 build: add cachix, update nixpkgs and install nix action 2024-11-14 19:52:20 +02:00
11 changed files with 219 additions and 120 deletions

View File

@@ -1,8 +1,7 @@
name: check-flake
---
name: build-flake
on:
push:
branches:
- main
workflow_call:
pull_request:
jobs:
@@ -16,10 +15,17 @@ jobs:
- name: Setup sudo (required for the next step)
run: apt-get update && apt-get install -y sudo
- name: Setup nix
uses: cachix/install-nix-action@v27
uses: cachix/install-nix-action@v30
with:
extra_nix_config: |
experimental-features = nix-command flakes
github_access_token: ${{ secrets.GH_ACCESS_TOKEN }}
nix_path: nixpkgs=channel:nixos-23.11
nix_path: nixpkgs=channel:nixos-24.05
- uses: cachix/cachix-action@v15
with:
name: palkx
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: nix-community
- name: Build nix flake
run: |
while true; do sleep 1; rm -rf /homeless-shelter; done &

View File

@@ -0,0 +1,15 @@
---
name: build-flake
on:
push:
branches:
- main
jobs:
build:
name: Build flake
uses: ./.gitea/workflows/build-flake.yml
release:
name: Release a new version
needs: build
uses: xaked/actions/.gitea/workflows/release.yml@main

View File

@@ -1,4 +1,4 @@
{pkgs}:
{ pkgs }:
pkgs.stdenv.mkDerivation {
name = "nvim-config";
src = ./src;

View File

@@ -11,7 +11,8 @@ require("lazy").setup({
spec = {
-- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
{ import = "lazyvim.plugins.extras.coding.blink" },
-- Blink currently not supported by all extras 2024-11-19 11:08
-- { import = "lazyvim.plugins.extras.coding.blink" },
{ import = "lazyvim.plugins.extras.editor.illuminate" },
{ import = "lazyvim.plugins.extras.editor.outline" },
{ import = "lazyvim.plugins.extras.editor.telescope" },
@@ -34,8 +35,11 @@ require("lazy").setup({
{ import = "lazyvim.plugins.extras.lang.yaml" },
{ import = "lazyvim.plugins.extras.ui.mini-indentscope" },
{ import = "lazyvim.plugins.extras.ui.treesitter-context" },
{ import = "plugins.tokyonight" },
{ import = "plugins.catppuccin" },
-- { import = "plugins.tokyonight" },
-- { import = "plugins.lang.nix" },
{ import = "plugins.lang.shell" },
{ import = "plugins.misc.bigfile" },
{ import = "plugins.misc.tmux-navigator" },
},
defaults = {
@@ -51,7 +55,7 @@ require("lazy").setup({
lazyvim = false,
neovim = false,
},
install = { colorscheme = { "tokyonight", "habamax" } },
install = { colorscheme = { "catppuccin-macchiato" } },
checker = { enabled = true }, -- automatically check for plugin updates
performance = {
rtp = {

View File

@@ -0,0 +1,62 @@
return {
"catppuccin/nvim",
lazy = true,
name = "catppuccin",
opts = {
flavour = "macchiato",
transparent_background = false,
integrations = {
aerial = true,
alpha = true,
cmp = true,
dashboard = true,
flash = true,
grug_far = true,
gitsigns = true,
headlines = true,
illuminate = true,
indent_blankline = { enabled = true },
leap = true,
lsp_trouble = true,
mason = true,
markdown = true,
mini = true,
native_lsp = {
enabled = true,
underlines = {
errors = { "undercurl" },
hints = { "undercurl" },
warnings = { "undercurl" },
information = { "undercurl" },
},
},
navic = { enabled = true, custom_bg = "lualine" },
neotest = true,
neotree = true,
noice = true,
notify = true,
semantic_tokens = true,
telescope = true,
treesitter = true,
treesitter_context = true,
which_key = true,
},
},
specs = {
{
"akinsho/bufferline.nvim",
optional = true,
opts = function(_, opts)
if (vim.g.colors_name or ""):find("catppuccin") then
opts.highlights = require("catppuccin.groups.integrations.bufferline").get()
end
end,
},
},
{
"LazyVim/LazyVim",
opts = {
colorscheme = "catppuccin-macchiato",
},
},
}

View File

@@ -0,0 +1,9 @@
return {
-- Disable certain features if file is big
{
"LunarVim/bigfile.nvim",
opts = {
filesize = 0.5,
},
},
}

54
flake.lock generated
View File

@@ -79,11 +79,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@@ -106,11 +106,11 @@
]
},
"locked": {
"lastModified": 1730814269,
"narHash": "sha256-fWPHyhYE6xvMI1eGY3pwBTq85wcy1YXqdzTZF+06nOg=",
"lastModified": 1732021966,
"narHash": "sha256-mnTbjpdqF0luOkou8ZFi2asa1N3AA2CchR/RqCNmsGE=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "d70155fdc00df4628446352fc58adc640cd705c2",
"rev": "3308484d1a443fc5bc92012435d79e80458fe43c",
"type": "github"
},
"original": {
@@ -170,14 +170,16 @@
"git-hooks": "git-hooks",
"hercules-ci-effects": "hercules-ci-effects",
"neovim-src": "neovim-src",
"nixpkgs": "nixpkgs"
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1730914682,
"narHash": "sha256-UHFvVeJY64rA5HKoeKCLuJET224GEDGdj7/m1PuShgw=",
"lastModified": 1732173780,
"narHash": "sha256-pszcETwWdItBmb/Z2CqIiTfEiVl3K5TPpgFSwyQrghY=",
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"rev": "59630b2edb91b71ac0a60b865aaa91cd39946577",
"rev": "151fab1aa35e1cbc6f5caad1e175e3d621d67951",
"type": "github"
},
"original": {
@@ -189,11 +191,11 @@
"neovim-src": {
"flake": false,
"locked": {
"lastModified": 1730893053,
"narHash": "sha256-ifiJfPkhyg/9I9aJSbtcHy3jRV4CLig7iF9ACQUycPU=",
"lastModified": 1732143030,
"narHash": "sha256-XKPsbjqHmwbiyzZdqNtw0tKxWLGFCkVB1+Awbi8tjQU=",
"owner": "neovim",
"repo": "neovim",
"rev": "f7e32fb6e626ab198bf401765236783890f3a0d6",
"rev": "07db909eb5ae2a559771068be64439eba394cd61",
"type": "github"
},
"original": {
@@ -204,37 +206,25 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1730831018,
"narHash": "sha256-2S0HwIFRxYp+afuoFORcZA9TjryAf512GmE0MTfEOPU=",
"owner": "NixOS",
"lastModified": 1731755305,
"narHash": "sha256-v5P3dk5JdiT+4x69ZaB18B8+Rcu3TIOrcdG4uEX7WZ8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "8c4dc69b9732f6bbe826b5fbb32184987520ff26",
"rev": "057f63b6dc1a2c67301286152eb5af20747a9cb4",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"owner": "nixos",
"ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 0,
"narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=",
"path": "/nix/store/pq1m6x5ilkm3s841g0z0vyrqvmbxc21v-source",
"type": "path"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"root": {
"inputs": {
"flake-utils": "flake-utils",
"neovim-nightly-overlay": "neovim-nightly-overlay",
"nixpkgs": "nixpkgs_2"
"nixpkgs": "nixpkgs"
}
},
"systems": {

View File

@@ -1,47 +1,52 @@
{
description = "NVIM Configuration";
inputs = {
# nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
flake-utils.url = "github:numtide/flake-utils";
neovim-nightly-overlay = {
url = "github:nix-community/neovim-nightly-overlay";
# inputs.nixpkgs.follows = "nixpkgs";
inputs.nixpkgs.follows = "nixpkgs";
};
};
nixConfig = {
trusted-substituters = [
"https://nix-community.cachix.org"
"https://palkx.cachix.org"
];
extra-trusted-public-keys = [
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"palkx.cachix.org-1:qaQoL5CXpGzUbqsIvxUEL7wUhoIrjV0Q8M4HbJ8/8S4="
];
};
outputs = inputs @ {
outputs =
inputs@{
nixpkgs,
flake-utils,
neovim-nightly-overlay,
...
}:
flake-utils.lib.eachDefaultSystem (system: let
flake-utils.lib.eachDefaultSystem (
system:
let
overlayFlakeInputs = prev: final: {
neovim = neovim-nightly-overlay.packages.${system}.default.overrideAttrs (oa: {
nativeBuildInputs = oa.nativeBuildInputs ++ [final.libtermkey];
nativeBuildInputs = oa.nativeBuildInputs ++ [ final.libtermkey ];
});
};
overlayLazyVim = prev: final: {
lazyVim = import ./packages/lazyVim.nix {
pkgs = final;
};
};
overlayLazyVim = prev: final: { lazyVim = import ./packages/lazyVim.nix { pkgs = final; }; };
pkgs = import nixpkgs {
inherit system;
overlays = [overlayFlakeInputs overlayLazyVim];
overlays = [
overlayFlakeInputs
overlayLazyVim
];
};
in rec {
in
rec {
packages.lazyVim = pkgs.lazyVim;
apps.lazyVim = {
type = "app";
@@ -49,5 +54,6 @@
};
packages.default = packages.lazyVim;
apps.default = apps.lazyVim;
});
}
);
}

View File

@@ -1,12 +1,13 @@
{pkgs}: let
config = import ../config {inherit pkgs;};
runtimeDeps = import ../runtimeDeps.nix {inherit pkgs;};
{ pkgs }:
let
config = import ../config { inherit pkgs; };
runtimeDeps = import ../runtimeDeps.nix { inherit pkgs; };
in
pkgs.wrapNeovim pkgs.neovim {
pkgs.wrapNeovim pkgs.neovim {
viAlias = true;
vimAlias = true;
withNodeJs = true;
withPython3 = true;
withRuby = false;
extraMakeWrapperArgs = ''--prefix PATH : "${pkgs.lib.makeBinPath runtimeDeps.dependencies}" --set XDG_CONFIG_HOME "${config}"'';
}
}

View File

@@ -1,8 +1,12 @@
{pkgs}: {
dependencies = with pkgs; [
nixd # nix lsp
alejandra # nix formatter
statix # linter for nix
{ pkgs }:
{
dependencies =
with pkgs;
[
nixfmt-rfc-style # nix formatter
(terraform.overrideAttrs (oldAttrs: {
meta.license = lib.licenses.mpl20;
})) # terraform fmt
ripgrep
fd
git
@@ -14,15 +18,17 @@
go
ruby
luarocks
zulu #java11
zulu # java11
fish
fzf
perl536
perl536Packages.CPAN
perl540
perl540Packages.CPAN
unzip
tree-sitter
gcc
gnumake
lazygit
];
python312
python312Packages.pip
]
++ (if pkgs.stdenv.hostPlatform.isDarwin then [ ] else [ gcc ]);
}