Fix lint workflow by factoring out the pure shell from devenv
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index 31b2674..e255b93 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -21,10 +21,10 @@
             - uses: cachix/install-nix-action@v19
               with:
                   github_access_token: ${{ secrets.GITHUB_TOKEN }}
-            - run: nix develop --command pnpm install --frozen-lockfile
+            - run: nix develop .#pure --command pnpm install --frozen-lockfile
             - name: Show versions
-              run: nix develop --command pnpm run versions
+              run: nix develop .#pure --command pnpm run versions
             - name: Compile
-              run: nix develop --command pnpm run build build
+              run: nix develop .#pure --command pnpm run build build
             - name: Run prettier and eslint
-              run: nix develop --command pnpm run lint-ci
+              run: nix develop .#pure --command pnpm run lint-ci
diff --git a/devenv.yaml b/devenv.yaml
new file mode 100644
index 0000000..09bce89
--- /dev/null
+++ b/devenv.yaml
@@ -0,0 +1 @@
+allowUnfree: true
diff --git a/flake.nix b/flake.nix
index 49b72d0..effdcea 100644
--- a/flake.nix
+++ b/flake.nix
@@ -16,27 +16,36 @@
           nodejs = pkgs.nodejs_20;
           nodePackages = pkgs.nodePackages_latest;
           lib = pkgs.lib;
+
+          shellPackages = [ nodejs nodePackages.pnpm pkgs.pkg-config pkgs.fontconfig.dev pkgs.clamav ];
+
+          enterShellHook = ''
+            unset name
+            export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${lib.makeSearchPath "/lib/pkgconfig" [
+              pkgs.pixman
+              pkgs.cairo.dev
+              pkgs.libpng.dev
+              pkgs.gnome2.pango.dev
+              pkgs.glib.dev
+              pkgs.harfbuzz.dev
+              pkgs.freetype.dev
+            ]}
+          '';
         in
         rec {
+          devShells.pure = pkgs.mkShell {
+            packages = shellPackages;
+            shellHook = enterShellHook;
+          };
           devShells.default = devenv.lib.mkShell {
             inherit inputs pkgs;
+
+
             modules = [
               ({ pkgs, config, ... }: {
                 # This is your devenv configuration
-                packages = [ nodejs nodePackages.pnpm pkgs.pkg-config pkgs.fontconfig.dev pkgs.clamav ];
-
-                enterShell = ''
-                  unset name
-                  export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${lib.makeSearchPath "/lib/pkgconfig" [
-                    pkgs.pixman
-                    pkgs.cairo.dev
-                    pkgs.libpng.dev
-                    pkgs.gnome2.pango.dev
-                    pkgs.glib.dev
-                    pkgs.harfbuzz.dev
-                    pkgs.freetype.dev
-                  ]}
-                '';
+                packages = shellPackages;
+                enterShell = enterShellHook;
 
                 services.mongodb = {
                   enable = true;