dotnet-store(1)

πŸ“¦
version 11.0.0~rc3 Β· 6 versions
, in alpine 3.24, centos-stream 10, centos-stream 9, fedora 43, fedora 44, nixpkgs unstable, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸŽ€ NAME πŸŽ€

Hiii bestie, welcome to dotnet-store(1) β€” straight out of the .NET Documentation, and it's giving one-job-one-obsession energy:

dotnet-store β€” Stores the specified assemblies in the runtime package store. πŸ’–

And just so we're clear from the jump: this article applies to βœ”οΈ .NET 6 SDK and later versions. Noted. Periodt.


✨ SYNOPSIS ✨

  [-f|--framework <FRAMEWORK_VERSION>] [--disable-build-servers]
  [--framework-version <FRAMEWORK_VERSION>]
  [--output <OUTPUT_DIRECTORY>] [-r|--runtime <RUNTIME_IDENTIFIER>]
  [--skip-optimization] [--skip-symbols]
  [--ucr|--use-current-runtime] [-v|--verbosity <LEVEL>]
  [--working-dir <WORKING_DIRECTORY>]

dotnet store -h|--help

🌸 DESCRIPTION 🌸

So dotnet store stores the specified assemblies in the runtime package store. That's the whole plot. 🫢

And by default? The assemblies get optimized for the target runtime and framework β€” like, they get the full glam treatment before they're put away. For more information, see the runtime package store topic. (iykyk, go read it.)

πŸ’… Required options

These aren't optional, babes. You need them.

  • -f|--framework <FRAMEWORK> β€” Specifies the target framework. And listen: the target framework has to be specified in the project file. No project-file mention, no party. 🚫
  • --disable-build-servers β€” Forces the command to ignore any persistent build servers. Think of it as the "no, actually, forget everything you thought you knew" button. This option provides a consistent way to disable all use of build caching, which forces a build from scratch. And a build that doesn't rely on caches is genuinely useful when the caches might be corrupted or incorrect for some reason. ✨ Available since .NET 7 SDK.
  • -m|--manifest <PATH_TO_MANIFEST_FILE> β€” The package store manifest file is an XML file that contains the list of packages to store. The format of the manifest file is compatible with the SDK-style project format. So β€” iconic detail β€” a project file that references the desired packages can be used with the -m|--manifest option to store assemblies in the runtime package store. Want more than one manifest? Repeat the option and path for each file. For example: --manifest packages1.csproj --manifest packages2.csproj. πŸ—‚οΈ
  • -r|--runtime <RUNTIME_IDENTIFIER> β€” The runtime identifier to target.

πŸ¦‹ Optional options

Now the fun extras. Mix and match, bestie.

  • --framework-version <FRAMEWORK_VERSION> β€” Specifies the .NET SDK version. This option enables you to select a specific framework version beyond the framework specified by the -f|--framework option. Fancy. πŸ’…
  • -o|--output <OUTPUT_DIRECTORY> β€” Specifies the path to the runtime package store. If not specified, it defaults to the store subdirectory of the user profile .NET installation directory. 🏠
  • --skip-optimization β€” Skips the optimization phase. For more information about optimization, see Preparing a runtime environment.
  • --skip-symbols β€” Skips symbol generation. Currently, you can only generate symbols on Windows and Linux. Sorry to the others. 😭
  • --ucr|--use-current-runtime β€” Use current runtime as the target runtime. The default is false.
  • -v|--verbosity <LEVEL> β€” Sets the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]. For more information, see <xref:Microsoft.Build.Framework.LoggerVerbosity>. πŸ—£οΈ
  • -w|--working-dir <WORKING_DIRECTORY> β€” The working directory used by the command. If not specified, it uses the obj subdirectory of the current directory.
  • -?|-h|--help β€” Prints out a description of how to use the command. The classic. The icon. πŸ‘‘

πŸ”₯ EXAMPLES πŸ”₯

  1. Store the packages specified in the packages.csproj project file for .NET 6.0.1:
dotnet store --manifest packages.csproj --framework-version 6.0.1 --framework net6.0 --runtime win-x64
  1. Store the packages specified in the packages.csproj without optimization:
dotnet store --manifest packages.csproj --skip-optimization --framework net6.0 --runtime linux-x64

Ate. No crumbs. πŸ“


πŸ‘‘ SEE ALSO πŸ‘‘

  • Runtime package store

And that's the whole page, bestie!! 🌈 This one came from the .NET Documentation source, version dotnet-store(1), dated 2025-10-30. Go store those assemblies. Slay. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from