53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{
 | 
						|
  description = "A Nix-flake-based Bun development environment";
 | 
						|
 | 
						|
  inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.*.tar.gz";
 | 
						|
 | 
						|
  outputs = { self, nixpkgs }:
 | 
						|
    let
 | 
						|
      supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
 | 
						|
      forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f {
 | 
						|
        pkgs = import nixpkgs {
 | 
						|
          inherit system;
 | 
						|
          config.permittedInsecurePackages = [
 | 
						|
            "dotnet-sdk-6.0.428"
 | 
						|
            "beekeeper-studio-5.2.9"
 | 
						|
          ];
 | 
						|
        };
 | 
						|
      });
 | 
						|
    in
 | 
						|
    {
 | 
						|
      devShells = forEachSupportedSystem ({ pkgs }: {
 | 
						|
        default = pkgs.mkShell {
 | 
						|
          packages = with pkgs; [
 | 
						|
            # Frontend
 | 
						|
            nodejs
 | 
						|
            sqlite
 | 
						|
            sqls
 | 
						|
            beekeeper-studio
 | 
						|
            zlib
 | 
						|
            bash
 | 
						|
            # Backend
 | 
						|
            (dotnetCorePackages.combinePackages [
 | 
						|
              dotnetCorePackages.sdk_9_0
 | 
						|
              dotnetCorePackages.aspnetcore_9_0
 | 
						|
              dotnetCorePackages.sdk_8_0
 | 
						|
            ])
 | 
						|
            nuget
 | 
						|
            # msbuild
 | 
						|
            omnisharp-roslyn
 | 
						|
            csharpier
 | 
						|
 | 
						|
            # LSP
 | 
						|
            typescript-language-server
 | 
						|
          ];
 | 
						|
          shellHook = ''
 | 
						|
            export PATH=$PATH:/home/sikongjueluo/.dotnet/tools
 | 
						|
            export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${pkgs.zlib}/lib
 | 
						|
            export DOTNET_ROOT=${pkgs.dotnetCorePackages.sdk_9_0}/share/dotnet
 | 
						|
          '';
 | 
						|
        };
 | 
						|
      });
 | 
						|
    };
 | 
						|
}
 |