diff --git a/ICD.Common.Utils/PathUtils.cs b/ICD.Common.Utils/PathUtils.cs
index 3d473a6..491fbae 100644
--- a/ICD.Common.Utils/PathUtils.cs
+++ b/ICD.Common.Utils/PathUtils.cs
@@ -26,10 +26,23 @@ namespace ICD.Common.Utils
public static string ProgramPath { get { return IcdDirectory.GetApplicationDirectory(); } }
///
- /// Gets the path to the NVRAM directory.
+ /// Gets the path to the root config directory,
+ /// which contains common and program-specific config directories.
///
[PublicAPI]
- public static string NvramPath { get { return Join(RootPath, "NVRAM"); } }
+ public static string RootConfigPath
+ {
+ get
+ {
+#if SIMPLSHARP
+ return Join(RootPath, "USER");
+#elif LINUX
+ return Join(RootPath, "opt", "ICD.Connect");
+#else
+ return Join(RootPath, "ProgramData", "ICD.Connect");
+#endif
+ }
+ }
///
/// Returns the absolute path to the configuration directory.
@@ -41,7 +54,7 @@ namespace ICD.Common.Utils
get
{
string directoryName = string.Format("Program{0:D2}Config", ProgramUtils.ProgramNumber);
- return Join(NvramPath, directoryName);
+ return Join(RootConfigPath, directoryName);
}
}
@@ -49,7 +62,7 @@ namespace ICD.Common.Utils
/// Returns the absolute path to the common configuration directory.
///
[PublicAPI]
- public static string CommonConfigPath { get { return Join(NvramPath, "CommonConfig"); } }
+ public static string CommonConfigPath { get { return Join(RootConfigPath, "CommonConfig"); } }
///
/// Returns the absolute path to the common config library directory.
diff --git a/ICD.Common.Utils/ProgramUtils.Standard.cs b/ICD.Common.Utils/ProgramUtils.Standard.cs
index ff81299..cfbaafc 100644
--- a/ICD.Common.Utils/ProgramUtils.Standard.cs
+++ b/ICD.Common.Utils/ProgramUtils.Standard.cs
@@ -8,17 +8,11 @@ namespace ICD.Common.Utils
{
public static partial class ProgramUtils
{
- ///
- /// Gets the program number.
- ///
- [PublicAPI]
- public static uint ProgramNumber
- {
- get
- {
- return 1;
- }
- }
+ ///
+ /// Gets the program number.
+ ///
+ [PublicAPI]
+ public static uint ProgramNumber { get; set; } = 1;
///
/// Gets the compile date of the program.