From 058a7620e20f1c62c4e3fcc8fe1b2dac9250c37b Mon Sep 17 00:00:00 2001 From: Arthur Wambst Date: Fri, 21 Feb 2025 19:25:57 +0100 Subject: [PATCH] init --- flake.lock | 248 +++++++++++++++++++++++++++++++++++++++++++++++++++++ flake.nix | 42 +++++++++ 2 files changed, 290 insertions(+) create mode 100644 flake.lock create mode 100644 flake.nix diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..20beb92 --- /dev/null +++ b/flake.lock @@ -0,0 +1,248 @@ +{ + "nodes": { + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "neovim", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "neovim", + "hercules-ci-effects", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "type": "github" + }, + "original": { + "id": "flake-parts", + "type": "indirect" + } + }, + "git-hooks": { + "inputs": { + "flake-compat": "flake-compat_2", + "gitignore": "gitignore", + "nixpkgs": [ + "neovim", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1737465171, + "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "neovim", + "git-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "hercules-ci-effects": { + "inputs": { + "flake-parts": "flake-parts_2", + "nixpkgs": [ + "neovim", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1739595404, + "narHash": "sha256-0CjCfbq0yHWexOrpO06e2WU1r5JAqR6ffy1zgM3NksI=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "06519cec8fb32d219006da6eacd255504a9996af", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "type": "github" + } + }, + "neovim": { + "inputs": { + "flake-compat": "flake-compat", + "flake-parts": "flake-parts", + "git-hooks": "git-hooks", + "hercules-ci-effects": "hercules-ci-effects", + "neovim-src": "neovim-src", + "nixpkgs": [ + "nixpkgs" + ], + "treefmt-nix": "treefmt-nix" + }, + "locked": { + "lastModified": 1739948995, + "narHash": "sha256-kvgcTSfZ8wOBToSkUDUUc9Tcvdj8GJVJEbcYdCYv93U=", + "owner": "nix-community", + "repo": "neovim-nightly-overlay", + "rev": "5ba4ec1627a1a98607779d857d5f8782f158b11c", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "neovim-nightly-overlay", + "type": "github" + } + }, + "neovim-src": { + "flake": false, + "locked": { + "lastModified": 1739946765, + "narHash": "sha256-q8hkuuK/pzHvoKMHrXvlgqIWdXfv0PMyXzC8Vwh0ZG8=", + "owner": "neovim", + "repo": "neovim", + "rev": "9005134cdc8e578201b90192253171a9bc261752", + "type": "github" + }, + "original": { + "owner": "neovim", + "repo": "neovim", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1739959802, + "narHash": "sha256-WEWM1ylf1XMC355xzf9aUFVUB9SrRexayeTXk8LA7SU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d254fd973c0ce7c7c8ae2a4251d9d801368508e3", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixpkgs", + "type": "github" + } + }, + "plugin-dracula": { + "flake": false, + "locked": { + "lastModified": 1734597715, + "narHash": "sha256-9iRI5NW3mcVzduitY4sr679dRWAWVbZuCAEfgM1OIOs=", + "owner": "Mofiqul", + "repo": "dracula.nvim", + "rev": "515acae4fd294fcefa5b15237a333c2606e958d1", + "type": "github" + }, + "original": { + "owner": "Mofiqul", + "repo": "dracula.nvim", + "type": "github" + } + }, + "root": { + "inputs": { + "neovim": "neovim", + "nixpkgs": "nixpkgs", + "plugin-dracula": "plugin-dracula" + } + }, + "treefmt-nix": { + "inputs": { + "nixpkgs": [ + "neovim", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1739829690, + "narHash": "sha256-mL1szCeIsjh6Khn3nH2cYtwO5YXG6gBiTw1A30iGeDU=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "3d0579f5cc93436052d94b73925b48973a104204", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..27aec44 --- /dev/null +++ b/flake.nix @@ -0,0 +1,42 @@ +# flake.nix +{ + description = "My own Neovim flake"; + inputs = { + nixpkgs = { + url = "github:NixOS/nixpkgs"; + }; + neovim = { + url = "github:nix-community/neovim-nightly-overlay"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + plugin-dracula = { + url = "github:Mofiqul/dracula.nvim"; + flake = false; + }; + }; + outputs = { self, nixpkgs, neovim, ... }@inputs: { + nixosModules.neovim = { config, pkgs, ...}: { + # Installation de Neovim en tant que package système + environment.systemPackages = [ neovim.packages.${pkgs.system}.neovim ]; + + + + # Activer nvim + programs.neovim = { + enable = true; + + # Native way to configure Neovim + configure = { + customRC = '' + " Add Dracula to runtimepath + set runtimepath+=${inputs.plugin-dracula} + + " Enable Dracula colorscheme + colorscheme dracula + ''; + }; + + }; + }; + }; +}