public sealed class OSPolicy.Types.Resource.Types.PackageResource : IMessage<OSPolicy.Types.Resource.Types.PackageResource>, IEquatable<OSPolicy.Types.Resource.Types.PackageResource>, IDeepCloneable<OSPolicy.Types.Resource.Types.PackageResource>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Cloud OS Config v1 API class OSPolicy.Types.Resource.Types.PackageResource.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-12 UTC."],[[["\u003cp\u003eThis document provides reference documentation for the \u003ccode\u003eOSPolicy.Types.Resource.Types.PackageResource\u003c/code\u003e class in the Google Cloud OS Config v1 API, detailing its role in managing system packages.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of the \u003ccode\u003ePackageResource\u003c/code\u003e class is 2.4.0, with multiple previous versions also available for review and use, including versions 2.3.0, 2.2.0, 2.1.0, 2.0.0, 1.8.0, 1.7.0, 1.6.0, 1.5.0, 1.4.0, and 1.3.0.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003ePackageResource\u003c/code\u003e is implemented as a sealed class, inheriting from \u003ccode\u003eobject\u003c/code\u003e and implementing interfaces like \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, showcasing its comprehensive design for integration and functionality.\u003c/p\u003e\n"],["\u003cp\u003eThe class offers properties for managing packages via different systems, such as \u003ccode\u003eApt\u003c/code\u003e, \u003ccode\u003eDeb\u003c/code\u003e, \u003ccode\u003eGooGet\u003c/code\u003e, \u003ccode\u003eMsi\u003c/code\u003e, \u003ccode\u003eRpm\u003c/code\u003e, \u003ccode\u003eYum\u003c/code\u003e, and \u003ccode\u003eZypper\u003c/code\u003e, and also dictates the desired state for a package using the property \u003ccode\u003eDesiredState\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eIt also provides \u003ccode\u003ePackageResource()\u003c/code\u003e constructors to create new instances and \u003ccode\u003eSystemPackageCase\u003c/code\u003e to identify which package system is currently in use.\u003c/p\u003e\n"]]],[],null,["# Google Cloud OS Config v1 API - Class OSPolicy.Types.Resource.Types.PackageResource (2.5.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.5.0 (latest)](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/2.4.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/2.3.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/2.2.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/2.1.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/2.0.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [1.8.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/1.8.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/1.7.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/1.6.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/1.5.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/1.4.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/1.3.0/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource) \n\n public sealed class OSPolicy.Types.Resource.Types.PackageResource : IMessage\u003cOSPolicy.Types.Resource.Types.PackageResource\u003e, IEquatable\u003cOSPolicy.Types.Resource.Types.PackageResource\u003e, IDeepCloneable\u003cOSPolicy.Types.Resource.Types.PackageResource\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google Cloud OS Config v1 API class OSPolicy.Types.Resource.Types.PackageResource.\n\nA resource that manages a system package. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e OSPolicy.Types.Resource.Types.PackageResource \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[OSPolicy](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy)[Types](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types)[Resource](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource)[Types](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types)[PackageResource](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[OSPolicy](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy)[Types](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types)[Resource](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource)[Types](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types)[PackageResource](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[OSPolicy](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy)[Types](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types)[Resource](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource)[Types](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types)[PackageResource](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1.OSPolicy.Types.Resource.Types.PackageResource), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.OsConfig.V1](/dotnet/docs/reference/Google.Cloud.OsConfig.V1/latest/Google.Cloud.OsConfig.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.OsConfig.V1.dll\n\nConstructors\n------------\n\n### PackageResource()\n\n public PackageResource()\n\n### PackageResource(PackageResource)\n\n public PackageResource(OSPolicy.Types.Resource.Types.PackageResource other)\n\nProperties\n----------\n\n### Apt\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.APT Apt { get; set; }\n\nA package managed by Apt.\n\n### Deb\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.Deb Deb { get; set; }\n\nA deb package file.\n\n### DesiredState\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.DesiredState DesiredState { get; set; }\n\nRequired. The desired state the agent should maintain for this package.\n\n### Googet\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.GooGet Googet { get; set; }\n\nA package managed by GooGet.\n\n### Msi\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.MSI Msi { get; set; }\n\nAn MSI package.\n\n### Rpm\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.RPM Rpm { get; set; }\n\nAn rpm package file.\n\n### SystemPackageCase\n\n public OSPolicy.Types.Resource.Types.PackageResource.SystemPackageOneofCase SystemPackageCase { get; }\n\n### Yum\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.YUM Yum { get; set; }\n\nA package managed by YUM.\n\n### Zypper\n\n public OSPolicy.Types.Resource.Types.PackageResource.Types.Zypper Zypper { get; set; }\n\nA package managed by Zypper."]]