18 Commits

Author SHA1 Message Date
2363568940 feat: bump versions
All checks were successful
build-flake / Build flake (push) Successful in 10m31s
build-flake / Release a new version (push) Successful in 10s
2024-12-26 18:33:18 +02:00
dc5cb9f99f feat: use 24.11 release
All checks were successful
build-flake / Build flake (push) Successful in 11m50s
build-flake / Release a new version (push) Successful in 8s
2024-12-02 13:28:49 +02:00
fde597485f feat: add typescript
All checks were successful
check-commits / Check commits (pull_request) Successful in 7s
build-flake / build (pull_request) Successful in 6m20s
build-flake / Build flake (push) Successful in 2m1s
build-flake / Release a new version (push) Successful in 10s
2024-11-27 09:54:37 +02:00
ad8dc7546b feat: update lazyvim configuration
All checks were successful
check-commits / Check commits (pull_request) Successful in 7s
build-flake / build (pull_request) Successful in 5m47s
build-flake / Build flake (push) Successful in 6m8s
build-flake / Release a new version (push) Successful in 12s
2024-11-25 21:54:10 +02:00
640e246954 ci: update release and add commit check job
All checks were successful
build-flake / Build flake (push) Successful in 5m26s
build-flake / Release a new version (push) Successful in 8s
2024-11-21 23:02:50 +02:00
52de2b8f4d ci: use release v2
Some checks failed
build-flake / Build flake (push) Successful in 5m30s
build-flake / Release a new version (push) Failing after 1s
2024-11-21 22:55:04 +02:00
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
12 changed files with 265 additions and 150 deletions

View File

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

View File

@@ -0,0 +1,9 @@
---
name: check-commits
on:
pull_request:
jobs:
check-commits:
name: Check commits
uses: xaked/actions/.gitea/workflows/cog-check.yml@2.0.0

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/cog-release.yml@2.0.0

View File

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

View File

@@ -11,7 +11,8 @@ require("lazy").setup({
spec = { spec = {
-- add LazyVim and import its plugins -- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.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.illuminate" },
{ import = "lazyvim.plugins.extras.editor.outline" }, { import = "lazyvim.plugins.extras.editor.outline" },
{ import = "lazyvim.plugins.extras.editor.telescope" }, { import = "lazyvim.plugins.extras.editor.telescope" },
@@ -31,10 +32,12 @@ require("lazy").setup({
{ import = "lazyvim.plugins.extras.lang.sql" }, { import = "lazyvim.plugins.extras.lang.sql" },
{ import = "lazyvim.plugins.extras.lang.terraform" }, { import = "lazyvim.plugins.extras.lang.terraform" },
{ import = "lazyvim.plugins.extras.lang.toml" }, { import = "lazyvim.plugins.extras.lang.toml" },
{ import = "lazyvim.plugins.extras.lang.typescript" },
{ import = "lazyvim.plugins.extras.lang.yaml" }, { import = "lazyvim.plugins.extras.lang.yaml" },
{ import = "lazyvim.plugins.extras.ui.mini-animate" },
{ import = "lazyvim.plugins.extras.ui.mini-indentscope" }, { import = "lazyvim.plugins.extras.ui.mini-indentscope" },
{ import = "lazyvim.plugins.extras.ui.treesitter-context" }, { import = "lazyvim.plugins.extras.ui.treesitter-context" },
{ import = "plugins.tokyonight" }, { import = "plugins.catppuccin" },
{ import = "plugins.lang.shell" }, { import = "plugins.lang.shell" },
{ import = "plugins.misc.tmux-navigator" }, { import = "plugins.misc.tmux-navigator" },
}, },
@@ -44,28 +47,14 @@ require("lazy").setup({
lazy = false, lazy = false,
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning, -- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
-- have outdated releases, which may break your Neovim install. -- have outdated releases, which may break your Neovim install.
version = false, -- always use the latest git commit version = nil, -- always use the latest git commit
-- version = "*", -- try installing the latest stable version for plugins that support semver -- version = "*", -- try installing the latest stable version for plugins that support semver
}, },
news = { install = { colorscheme = { "catppuccin-macchiato" } },
lazyvim = false, checker = { enabled = true, frequency = 60 * 60 * 24 }, -- automatically check for plugin updates once per day
neovim = false,
},
install = { colorscheme = { "tokyonight", "habamax" } },
checker = { enabled = true }, -- automatically check for plugin updates
performance = { performance = {
rtp = { cache = {
-- disable some rtp plugins enabled = true,
disabled_plugins = {
"gzip",
-- "matchit",
-- "matchparen",
-- "netrwPlugin",
"tarPlugin",
"tohtml",
"tutor",
"zipPlugin",
},
}, },
}, },
}) })

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

View File

@@ -1,10 +1,10 @@
return { return {
"folke/tokyonight.nvim", "folke/tokyonight.nvim",
opts = { opts = {
transparent = true, transparent = true,
styles = { styles = {
sidebars = "transparent", sidebars = "transparent",
floats = "transparent", floats = "transparent",
}, },
}, },
} }

100
flake.lock generated
View File

@@ -3,11 +3,11 @@
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1733328505,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -40,11 +40,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730504689, "lastModified": 1733312601,
"narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "506278e768c2a08bec68eb62932193e341f55c90", "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -62,11 +62,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1712014858, "lastModified": 1733312601,
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -79,11 +79,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1726560853, "lastModified": 1731533236,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -106,11 +106,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730814269, "lastModified": 1734797603,
"narHash": "sha256-fWPHyhYE6xvMI1eGY3pwBTq85wcy1YXqdzTZF+06nOg=", "narHash": "sha256-ulZN7ps8nBV31SE+dwkDvKIzvN6hroRY8sYOT0w+E28=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "d70155fdc00df4628446352fc58adc640cd705c2", "rev": "f0f0dc4920a903c3e08f5bdb9246bb572fcae498",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -150,11 +150,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730903510, "lastModified": 1733333617,
"narHash": "sha256-mnynlrPeiW0nUQ8KGZHb3WyxAxA3Ye/BH8gMjdoKP6E=", "narHash": "sha256-nMMQXREGvLOLvUa0ByhYFdaL0Jov0t1wzLbKjr05P2w=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "hercules-ci-effects", "repo": "hercules-ci-effects",
"rev": "b89ac4d66d618b915b1f0a408e2775fe3821d141", "rev": "56f8ea8d502c87cf62444bec4ee04512e8ea24ea",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -170,14 +170,17 @@
"git-hooks": "git-hooks", "git-hooks": "git-hooks",
"hercules-ci-effects": "hercules-ci-effects", "hercules-ci-effects": "hercules-ci-effects",
"neovim-src": "neovim-src", "neovim-src": "neovim-src",
"nixpkgs": "nixpkgs" "nixpkgs": [
"nixpkgs"
],
"treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1730914682, "lastModified": 1735172062,
"narHash": "sha256-UHFvVeJY64rA5HKoeKCLuJET224GEDGdj7/m1PuShgw=", "narHash": "sha256-Ru+5fwMqXEoc6G1PbuTppAzxtqvj0322cBAWCb0Yhbo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "neovim-nightly-overlay", "repo": "neovim-nightly-overlay",
"rev": "59630b2edb91b71ac0a60b865aaa91cd39946577", "rev": "d05e1d754812bcd89925d845992f377faf6c4944",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -189,11 +192,11 @@
"neovim-src": { "neovim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1730893053, "lastModified": 1735157560,
"narHash": "sha256-ifiJfPkhyg/9I9aJSbtcHy3jRV4CLig7iF9ACQUycPU=", "narHash": "sha256-ndlWdGm61W3uObi8cowWqnPdJwq2FsH4GHGOQYeNSOM=",
"owner": "neovim", "owner": "neovim",
"repo": "neovim", "repo": "neovim",
"rev": "f7e32fb6e626ab198bf401765236783890f3a0d6", "rev": "487c48ec8689b865bad04fdb87b61f5ada25da97",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -204,37 +207,25 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1730831018, "lastModified": 1734991663,
"narHash": "sha256-2S0HwIFRxYp+afuoFORcZA9TjryAf512GmE0MTfEOPU=", "narHash": "sha256-8T660guvdaOD+2/Cj970bWlQwAyZLKrrbkhYOFcY1YE=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8c4dc69b9732f6bbe826b5fbb32184987520ff26", "rev": "6c90912761c43e22b6fb000025ab96dd31c971ff",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "nixos",
"ref": "nixpkgs-unstable", "ref": "nixos-24.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": {
"locked": {
"lastModified": 0,
"narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=",
"path": "/nix/store/pq1m6x5ilkm3s841g0z0vyrqvmbxc21v-source",
"type": "path"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"root": { "root": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"neovim-nightly-overlay": "neovim-nightly-overlay", "neovim-nightly-overlay": "neovim-nightly-overlay",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs"
} }
}, },
"systems": { "systems": {
@@ -251,6 +242,27 @@
"repo": "default", "repo": "default",
"type": "github" "type": "github"
} }
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"neovim-nightly-overlay",
"nixpkgs"
]
},
"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", "root": "root",

View File

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

View File

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

View File

@@ -1,28 +1,34 @@
{pkgs}: { { pkgs }:
dependencies = with pkgs; [ {
nixd # nix lsp dependencies =
alejandra # nix formatter with pkgs;
statix # linter for nix [
ripgrep nixfmt-rfc-style # nix formatter
fd (terraform.overrideAttrs (oldAttrs: {
git meta.license = lib.licenses.mpl20;
curl # needed to fetch titles from urls })) # terraform fmt
wget ripgrep
cargo fd
php82 git
php82Packages.composer curl # needed to fetch titles from urls
go wget
ruby cargo
luarocks php82
zulu #java11 php82Packages.composer
fish go
fzf ruby
perl536 luarocks
perl536Packages.CPAN zulu # java11
unzip fish
tree-sitter fzf
gcc perl540
gnumake perl540Packages.CPAN
lazygit unzip
]; tree-sitter
gnumake
lazygit
python312
python312Packages.pip
]
++ (if pkgs.stdenv.hostPlatform.isDarwin then [ ] else [ gcc ]);
} }