diff --git a/Android.bp b/Android.bp
index 73fb6b6..470a29a 100644
--- a/Android.bp
+++ b/Android.bp
@@ -1,25 +1,57 @@
-android_library {
-    name: "OmniLib",
-    defaults: [
-        "SettingsLibDefaults",
-        "SettingsLib-search-defaults",
-    ],
-    srcs: [
-        "src/**/*.java",
-    ],
-    required: [
-        "privapp_whitelist_com.android.settings",
-        "settings-platform-compat-config",
-    ],
-    libs: [
-        "androidx.core_core",
-        "androidx.preference_preference",
-    ],
+android_app {
+    name: "omnirom-res",
+    sdk_version: "core_platform",
+    certificate: "platform",
+    manifest: "AndroidManifest.xml",
+
     resource_dirs: ["res"],
+    export_package_resources: true,
+
+    // Disable dexpreopt and verify_uses_libraries check as the app
+    // contains no Java code to be dexpreopted.
+    enforce_uses_libs: false,
+    dex_preopt: {
+        enabled: false,
+    },
+
+    // Soong special-cases omnirom-res to install this alongside
+    // the libraries at /system/framework/omnirom-res.apk.
+
+    // Generate private symbols into the org.omnirom.omnilib.R class
+    // so they are not accessible to 3rd party apps.
+    aaptflags: [
+        "--private-symbols",
+        "org.omnirom.omnilib",
+
+        // Framework doesn't need versioning since it IS the platform.
+        "--no-auto-version",
+
+        // Allow overlay to add resource
+        "--auto-add-overlay",
+
+        // Tell aapt to create "extending (non-application)" resource IDs,
+        // since these resources will be used by many apps.
+        "--allow-reserved-package-id",
+        // Use id 0x3f (one less than app id).
+        "--package-id",
+        "63",
+    ],
 }
 
-android_library {
-    name: "OmniLibCore",
-    platform_apis: true,
-    srcs: ["core/**/*.java"],
+java_library {
+    name: "OmniLib",
+    installable: true,
+    sdk_version: "core_platform",
+
+    srcs: [
+        "src/**/*.java",
+
+        // For the generated R.java and Manifest.java
+        ":omnirom-res{.aapt.srcjar}",
+    ],
+
+    libs: [
+        "framework",
+        "OmniPreference",
+    ],
 }
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 483aa27..bf8ef7d 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 
 <!--  Copyright (C) 2016 The OmniROM Project
+      Copyright (C) 2023 The OmniROM Project
 
   This program is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -17,7 +18,10 @@
  -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-	  xmlns:tools="http://schemas.android.com/tools"
-    package="org.omnirom.omnilib">
+    xmlns:tools="http://schemas.android.com/tools"
+    android:sharedUserId="android.uid.system"
+    package="omnirom.platform"
+    coreApp="true"
+    android:sharedUserLabel="@string/omni_system_label">
 
 </manifest>
diff --git a/omnipreference/Android.bp b/omnipreference/Android.bp
new file mode 100644
index 0000000..1a627a7
--- /dev/null
+++ b/omnipreference/Android.bp
@@ -0,0 +1,26 @@
+//
+// Copyright (C) 2023 The OmniROM Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+android_library {
+    name: "OmniPreference",
+    defaults: [
+        "SettingsLibDefaults",
+        "SettingsLib-search-defaults",
+    ],
+
+    srcs: ["java/**/*.java"],
+    resource_dirs: ["res"],
+}
diff --git a/core/AndroidManifest.xml b/omnipreference/AndroidManifest.xml
similarity index 82%
rename from core/AndroidManifest.xml
rename to omnipreference/AndroidManifest.xml
index 5e3bcdd..92ba980 100644
--- a/core/AndroidManifest.xml
+++ b/omnipreference/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 
-<!--  Copyright (C) 2016 The OmniROM Project
+<!--  Copyright (C) 2023 The OmniROM Project
 
   This program is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -17,7 +17,4 @@
  -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          xmlns:tools="http://schemas.android.com/tools"
-    package="org.omnirom.omnilibcore">
-
-</manifest>
+          package="omnirom.preference" />
diff --git a/src/org/omnirom/omnilib/preference/AppMultiSelectListPreference.java b/omnipreference/java/omnirom/preference/AppMultiSelectListPreference.java
similarity index 98%
rename from src/org/omnirom/omnilib/preference/AppMultiSelectListPreference.java
rename to omnipreference/java/omnirom/preference/AppMultiSelectListPreference.java
index 805ec98..008b77d 100644
--- a/src/org/omnirom/omnilib/preference/AppMultiSelectListPreference.java
+++ b/omnipreference/java/omnirom/preference/AppMultiSelectListPreference.java
@@ -15,7 +15,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.ComponentName;
 import android.content.Context;
@@ -35,7 +35,7 @@
 import android.widget.ListView;
 import android.widget.TextView;
 
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 import com.android.settingslib.CustomDialogPreferenceCompat;
 
 import java.util.ArrayList;
diff --git a/src/org/omnirom/omnilib/preference/AppSelectListPreference.java b/omnipreference/java/omnirom/preference/AppSelectListPreference.java
similarity index 98%
rename from src/org/omnirom/omnilib/preference/AppSelectListPreference.java
rename to omnipreference/java/omnirom/preference/AppSelectListPreference.java
index c9b70d3..86c3152 100644
--- a/src/org/omnirom/omnilib/preference/AppSelectListPreference.java
+++ b/omnipreference/java/omnirom/preference/AppSelectListPreference.java
@@ -15,7 +15,7 @@
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 *
 */
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.ComponentName;
 import android.content.Context;
@@ -47,7 +47,7 @@
 import java.util.List;
 
 import com.android.settingslib.CustomDialogPreferenceCompat;
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 
 public class AppSelectListPreference extends CustomDialogPreferenceCompat {
 
diff --git a/src/org/omnirom/omnilib/preference/ColorSelectDialog.java b/omnipreference/java/omnirom/preference/ColorSelectDialog.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/ColorSelectDialog.java
rename to omnipreference/java/omnirom/preference/ColorSelectDialog.java
index b2aa75f..ccd93f9 100644
--- a/src/org/omnirom/omnilib/preference/ColorSelectDialog.java
+++ b/omnipreference/java/omnirom/preference/ColorSelectDialog.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.app.Activity;
 import android.app.NotificationManager;
@@ -44,10 +44,10 @@
 
 import androidx.appcompat.app.AlertDialog;
 
-import org.omnirom.omnilib.R;
-import org.omnirom.omnilib.ui.ColorPanelView;
-import org.omnirom.omnilib.ui.ColorPickerView;
-import org.omnirom.omnilib.ui.ColorPickerView.OnColorChangedListener;
+import omnirom.preference.R;
+import omnirom.ui.ColorPanelView;
+import omnirom.ui.ColorPickerView;
+import omnirom.ui.ColorPickerView.OnColorChangedListener;
 
 import java.util.ArrayList;
 import java.util.IllegalFormatException;
diff --git a/src/org/omnirom/omnilib/preference/ColorSelectPreference.java b/omnipreference/java/omnirom/preference/ColorSelectPreference.java
similarity index 98%
rename from src/org/omnirom/omnilib/preference/ColorSelectPreference.java
rename to omnipreference/java/omnirom/preference/ColorSelectPreference.java
index 14db8f2..97a39d5 100644
--- a/src/org/omnirom/omnilib/preference/ColorSelectPreference.java
+++ b/omnipreference/java/omnirom/preference/ColorSelectPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import android.content.DialogInterface;
@@ -30,7 +30,7 @@
 
 import androidx.appcompat.app.AlertDialog;
 
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 
 public class ColorSelectPreference extends Preference implements DialogInterface.OnDismissListener {
 
diff --git a/src/org/omnirom/omnilib/preference/GlobalCheckBoxPreference.java b/omnipreference/java/omnirom/preference/GlobalCheckBoxPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/GlobalCheckBoxPreference.java
rename to omnipreference/java/omnirom/preference/GlobalCheckBoxPreference.java
index efa7d7e..01a9e69 100644
--- a/src/org/omnirom/omnilib/preference/GlobalCheckBoxPreference.java
+++ b/omnipreference/java/omnirom/preference/GlobalCheckBoxPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import androidx.preference.CheckBoxPreference;
diff --git a/src/org/omnirom/omnilib/preference/GlobalSettingSwitchPreference.java b/omnipreference/java/omnirom/preference/GlobalSettingSwitchPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/GlobalSettingSwitchPreference.java
rename to omnipreference/java/omnirom/preference/GlobalSettingSwitchPreference.java
index 6322269..1996a4b 100644
--- a/src/org/omnirom/omnilib/preference/GlobalSettingSwitchPreference.java
+++ b/omnipreference/java/omnirom/preference/GlobalSettingSwitchPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import androidx.preference.SwitchPreference;
diff --git a/src/org/omnirom/omnilib/preference/ScrollAppsViewPreference.java b/omnipreference/java/omnirom/preference/ScrollAppsViewPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/ScrollAppsViewPreference.java
rename to omnipreference/java/omnirom/preference/ScrollAppsViewPreference.java
index d64adcc..bf84431 100644
--- a/src/org/omnirom/omnilib/preference/ScrollAppsViewPreference.java
+++ b/omnipreference/java/omnirom/preference/ScrollAppsViewPreference.java
@@ -15,7 +15,7 @@
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.ComponentName;
 import android.content.Context;
@@ -30,7 +30,7 @@
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 
 import java.util.ArrayList;
 import java.util.Collection;
diff --git a/src/org/omnirom/omnilib/preference/SecureCheckBoxPreference.java b/omnipreference/java/omnirom/preference/SecureCheckBoxPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/SecureCheckBoxPreference.java
rename to omnipreference/java/omnirom/preference/SecureCheckBoxPreference.java
index ae6d874..5f281fb 100644
--- a/src/org/omnirom/omnilib/preference/SecureCheckBoxPreference.java
+++ b/omnipreference/java/omnirom/preference/SecureCheckBoxPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import androidx.preference.CheckBoxPreference;
diff --git a/src/org/omnirom/omnilib/preference/SecureSettingSwitchPreference.java b/omnipreference/java/omnirom/preference/SecureSettingSwitchPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/SecureSettingSwitchPreference.java
rename to omnipreference/java/omnirom/preference/SecureSettingSwitchPreference.java
index 62e2d35..0a33f2b 100644
--- a/src/org/omnirom/omnilib/preference/SecureSettingSwitchPreference.java
+++ b/omnipreference/java/omnirom/preference/SecureSettingSwitchPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import androidx.preference.SwitchPreference;
diff --git a/src/org/omnirom/omnilib/preference/SeekBarPreference.java b/omnipreference/java/omnirom/preference/SeekBarPreference.java
similarity index 98%
rename from src/org/omnirom/omnilib/preference/SeekBarPreference.java
rename to omnipreference/java/omnirom/preference/SeekBarPreference.java
index 49b62ca..b86a15c 100644
--- a/src/org/omnirom/omnilib/preference/SeekBarPreference.java
+++ b/omnipreference/java/omnirom/preference/SeekBarPreference.java
@@ -14,7 +14,7 @@
  ** See the License for the specific language governing permissions and
  ** limitations under the License.
  */
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -31,7 +31,7 @@
 import android.widget.SeekBar.OnSeekBarChangeListener;
 import android.widget.TextView;
 
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 
 public class SeekBarPreference extends Preference implements OnSeekBarChangeListener {
 
diff --git a/src/org/omnirom/omnilib/preference/SystemCheckBoxPreference.java b/omnipreference/java/omnirom/preference/SystemCheckBoxPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/SystemCheckBoxPreference.java
rename to omnipreference/java/omnirom/preference/SystemCheckBoxPreference.java
index a76a1ea..f6340e8 100644
--- a/src/org/omnirom/omnilib/preference/SystemCheckBoxPreference.java
+++ b/omnipreference/java/omnirom/preference/SystemCheckBoxPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import androidx.preference.CheckBoxPreference;
diff --git a/src/org/omnirom/omnilib/preference/SystemSettingSwitchPreference.java b/omnipreference/java/omnirom/preference/SystemSettingSwitchPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/SystemSettingSwitchPreference.java
rename to omnipreference/java/omnirom/preference/SystemSettingSwitchPreference.java
index 9780800..647ce90 100644
--- a/src/org/omnirom/omnilib/preference/SystemSettingSwitchPreference.java
+++ b/omnipreference/java/omnirom/preference/SystemSettingSwitchPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import android.provider.Settings;
diff --git a/src/org/omnirom/omnilib/preference/SystemSettingsColorSelectPreference.java b/omnipreference/java/omnirom/preference/SystemSettingsColorSelectPreference.java
similarity index 97%
rename from src/org/omnirom/omnilib/preference/SystemSettingsColorSelectPreference.java
rename to omnipreference/java/omnirom/preference/SystemSettingsColorSelectPreference.java
index cda2087..2bffc66 100644
--- a/src/org/omnirom/omnilib/preference/SystemSettingsColorSelectPreference.java
+++ b/omnipreference/java/omnirom/preference/SystemSettingsColorSelectPreference.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import android.provider.Settings;
diff --git a/src/org/omnirom/omnilib/preference/WifiSelectListPreference.java b/omnipreference/java/omnirom/preference/WifiSelectListPreference.java
similarity index 98%
rename from src/org/omnirom/omnilib/preference/WifiSelectListPreference.java
rename to omnipreference/java/omnirom/preference/WifiSelectListPreference.java
index 61a92a9..8feba20 100644
--- a/src/org/omnirom/omnilib/preference/WifiSelectListPreference.java
+++ b/omnipreference/java/omnirom/preference/WifiSelectListPreference.java
@@ -15,7 +15,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-package org.omnirom.omnilib.preference;
+package omnirom.preference;
 
 import android.content.Context;
 import android.util.AttributeSet;
@@ -33,7 +33,7 @@
 import com.android.settingslib.wifi.AccessPoint;
 import com.android.settingslib.wifi.WifiSavedConfigUtils;
 
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 import com.android.settingslib.CustomDialogPreferenceCompat;
 
 import java.util.ArrayList;
diff --git a/src/org/omnirom/omnilib/ui/AlphaPatternDrawable.java b/omnipreference/java/omnirom/ui/AlphaPatternDrawable.java
similarity index 98%
rename from src/org/omnirom/omnilib/ui/AlphaPatternDrawable.java
rename to omnipreference/java/omnirom/ui/AlphaPatternDrawable.java
index a6f8f78..d91998d 100644
--- a/src/org/omnirom/omnilib/ui/AlphaPatternDrawable.java
+++ b/omnipreference/java/omnirom/ui/AlphaPatternDrawable.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.ui;
+package omnirom.ui;
 
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
diff --git a/src/org/omnirom/omnilib/ui/ColorPanelView.java b/omnipreference/java/omnirom/ui/ColorPanelView.java
similarity index 98%
rename from src/org/omnirom/omnilib/ui/ColorPanelView.java
rename to omnipreference/java/omnirom/ui/ColorPanelView.java
index 9cffd62..e50ce86 100644
--- a/src/org/omnirom/omnilib/ui/ColorPanelView.java
+++ b/omnipreference/java/omnirom/ui/ColorPanelView.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.ui;
+package omnirom.ui;
 
 import android.content.Context;
 import android.graphics.Canvas;
diff --git a/src/org/omnirom/omnilib/ui/ColorPickerView.java b/omnipreference/java/omnirom/ui/ColorPickerView.java
similarity index 99%
rename from src/org/omnirom/omnilib/ui/ColorPickerView.java
rename to omnipreference/java/omnirom/ui/ColorPickerView.java
index 7f91b27..e703181 100644
--- a/src/org/omnirom/omnilib/ui/ColorPickerView.java
+++ b/omnipreference/java/omnirom/ui/ColorPickerView.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.ui;
+package omnirom.ui;
 
 import android.content.Context;
 import android.graphics.Canvas;
diff --git a/src/org/omnirom/omnilib/widget/SecureSettingsSwitch.java b/omnipreference/java/omnirom/widget/SecureSettingsSwitch.java
similarity index 97%
rename from src/org/omnirom/omnilib/widget/SecureSettingsSwitch.java
rename to omnipreference/java/omnirom/widget/SecureSettingsSwitch.java
index 621c2b1..02cfda7 100644
--- a/src/org/omnirom/omnilib/widget/SecureSettingsSwitch.java
+++ b/omnipreference/java/omnirom/widget/SecureSettingsSwitch.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.widget;
+package omnirom.widget;
 
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -24,7 +24,7 @@
 import android.util.Log;
 import android.widget.Switch;
 
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 
 public class SecureSettingsSwitch extends Switch {
 
diff --git a/src/org/omnirom/omnilib/widget/SystemSettingsSwitch.java b/omnipreference/java/omnirom/widget/SystemSettingsSwitch.java
similarity index 97%
rename from src/org/omnirom/omnilib/widget/SystemSettingsSwitch.java
rename to omnipreference/java/omnirom/widget/SystemSettingsSwitch.java
index 0f7c73c..74fa2fa 100644
--- a/src/org/omnirom/omnilib/widget/SystemSettingsSwitch.java
+++ b/omnipreference/java/omnirom/widget/SystemSettingsSwitch.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.omnirom.omnilib.widget;
+package omnirom.widget;
 
 import android.content.Context;
 import android.content.res.TypedArray;
@@ -24,7 +24,7 @@
 import android.util.Log;
 import android.widget.Switch;
 
-import org.omnirom.omnilib.R;
+import omnirom.preference.R;
 
 public class SystemSettingsSwitch extends Switch {
 
diff --git a/res/drawable/ic_disabled.xml b/omnipreference/res/drawable/ic_disabled.xml
similarity index 100%
rename from res/drawable/ic_disabled.xml
rename to omnipreference/res/drawable/ic_disabled.xml
diff --git a/res/layout/action_item.xml b/omnipreference/res/layout/action_item.xml
similarity index 100%
rename from res/layout/action_item.xml
rename to omnipreference/res/layout/action_item.xml
diff --git a/res/layout/app_grid_item.xml b/omnipreference/res/layout/app_grid_item.xml
similarity index 100%
rename from res/layout/app_grid_item.xml
rename to omnipreference/res/layout/app_grid_item.xml
diff --git a/res/layout/app_select_item.xml b/omnipreference/res/layout/app_select_item.xml
similarity index 100%
rename from res/layout/app_select_item.xml
rename to omnipreference/res/layout/app_select_item.xml
diff --git a/res/layout/applist_preference_icon.xml b/omnipreference/res/layout/applist_preference_icon.xml
similarity index 100%
rename from res/layout/applist_preference_icon.xml
rename to omnipreference/res/layout/applist_preference_icon.xml
diff --git a/res/layout/dialog_battery_settings.xml b/omnipreference/res/layout/dialog_battery_settings.xml
similarity index 100%
rename from res/layout/dialog_battery_settings.xml
rename to omnipreference/res/layout/dialog_battery_settings.xml
diff --git a/res/layout/led_color_item.xml b/omnipreference/res/layout/led_color_item.xml
similarity index 100%
rename from res/layout/led_color_item.xml
rename to omnipreference/res/layout/led_color_item.xml
diff --git a/res/layout/preference_action_list.xml b/omnipreference/res/layout/preference_action_list.xml
similarity index 100%
rename from res/layout/preference_action_list.xml
rename to omnipreference/res/layout/preference_action_list.xml
diff --git a/res/layout/preference_app_list.xml b/omnipreference/res/layout/preference_app_list.xml
similarity index 100%
rename from res/layout/preference_app_list.xml
rename to omnipreference/res/layout/preference_app_list.xml
diff --git a/res/layout/preference_app_select.xml b/omnipreference/res/layout/preference_app_select.xml
similarity index 100%
rename from res/layout/preference_app_select.xml
rename to omnipreference/res/layout/preference_app_select.xml
diff --git a/res/layout/preference_color_select.xml b/omnipreference/res/layout/preference_color_select.xml
similarity index 100%
rename from res/layout/preference_color_select.xml
rename to omnipreference/res/layout/preference_color_select.xml
diff --git a/res/layout/preference_seek_bar.xml b/omnipreference/res/layout/preference_seek_bar.xml
similarity index 100%
rename from res/layout/preference_seek_bar.xml
rename to omnipreference/res/layout/preference_seek_bar.xml
diff --git a/res/layout/preference_selected_apps_view.xml b/omnipreference/res/layout/preference_selected_apps_view.xml
similarity index 100%
rename from res/layout/preference_selected_apps_view.xml
rename to omnipreference/res/layout/preference_selected_apps_view.xml
diff --git a/res/layout/preference_wifi_ap_list.xml b/omnipreference/res/layout/preference_wifi_ap_list.xml
similarity index 100%
rename from res/layout/preference_wifi_ap_list.xml
rename to omnipreference/res/layout/preference_wifi_ap_list.xml
diff --git a/res/layout/wifi_ap_item.xml b/omnipreference/res/layout/wifi_ap_item.xml
similarity index 100%
rename from res/layout/wifi_ap_item.xml
rename to omnipreference/res/layout/wifi_ap_item.xml
diff --git a/res/values-af/strings.xml b/omnipreference/res/values-af/strings.xml
similarity index 100%
rename from res/values-af/strings.xml
rename to omnipreference/res/values-af/strings.xml
diff --git a/res/values-am/strings.xml b/omnipreference/res/values-am/strings.xml
similarity index 100%
rename from res/values-am/strings.xml
rename to omnipreference/res/values-am/strings.xml
diff --git a/res/values-ar/strings.xml b/omnipreference/res/values-ar/strings.xml
similarity index 100%
rename from res/values-ar/strings.xml
rename to omnipreference/res/values-ar/strings.xml
diff --git a/res/values-az-rAZ/strings.xml b/omnipreference/res/values-az-rAZ/strings.xml
similarity index 100%
rename from res/values-az-rAZ/strings.xml
rename to omnipreference/res/values-az-rAZ/strings.xml
diff --git a/res/values-bg/strings.xml b/omnipreference/res/values-bg/strings.xml
similarity index 100%
rename from res/values-bg/strings.xml
rename to omnipreference/res/values-bg/strings.xml
diff --git a/res/values-ca/strings.xml b/omnipreference/res/values-ca/strings.xml
similarity index 100%
rename from res/values-ca/strings.xml
rename to omnipreference/res/values-ca/strings.xml
diff --git a/res/values-cs/strings.xml b/omnipreference/res/values-cs/strings.xml
similarity index 100%
rename from res/values-cs/strings.xml
rename to omnipreference/res/values-cs/strings.xml
diff --git a/res/values-da/strings.xml b/omnipreference/res/values-da/strings.xml
similarity index 100%
rename from res/values-da/strings.xml
rename to omnipreference/res/values-da/strings.xml
diff --git a/res/values-de/strings.xml b/omnipreference/res/values-de/strings.xml
similarity index 100%
rename from res/values-de/strings.xml
rename to omnipreference/res/values-de/strings.xml
diff --git a/res/values-el/strings.xml b/omnipreference/res/values-el/strings.xml
similarity index 100%
rename from res/values-el/strings.xml
rename to omnipreference/res/values-el/strings.xml
diff --git a/res/values-es/strings.xml b/omnipreference/res/values-es/strings.xml
similarity index 100%
rename from res/values-es/strings.xml
rename to omnipreference/res/values-es/strings.xml
diff --git a/res/values-et/strings.xml b/omnipreference/res/values-et/strings.xml
similarity index 100%
rename from res/values-et/strings.xml
rename to omnipreference/res/values-et/strings.xml
diff --git a/res/values-fa/strings.xml b/omnipreference/res/values-fa/strings.xml
similarity index 100%
rename from res/values-fa/strings.xml
rename to omnipreference/res/values-fa/strings.xml
diff --git a/res/values-fi/strings.xml b/omnipreference/res/values-fi/strings.xml
similarity index 100%
rename from res/values-fi/strings.xml
rename to omnipreference/res/values-fi/strings.xml
diff --git a/res/values-fr/strings.xml b/omnipreference/res/values-fr/strings.xml
similarity index 100%
rename from res/values-fr/strings.xml
rename to omnipreference/res/values-fr/strings.xml
diff --git a/res/values-hi/strings.xml b/omnipreference/res/values-hi/strings.xml
similarity index 100%
rename from res/values-hi/strings.xml
rename to omnipreference/res/values-hi/strings.xml
diff --git a/res/values-hr/strings.xml b/omnipreference/res/values-hr/strings.xml
similarity index 100%
rename from res/values-hr/strings.xml
rename to omnipreference/res/values-hr/strings.xml
diff --git a/res/values-hu/strings.xml b/omnipreference/res/values-hu/strings.xml
similarity index 100%
rename from res/values-hu/strings.xml
rename to omnipreference/res/values-hu/strings.xml
diff --git a/res/values-hy/strings.xml b/omnipreference/res/values-hy/strings.xml
similarity index 100%
rename from res/values-hy/strings.xml
rename to omnipreference/res/values-hy/strings.xml
diff --git a/res/values-in/strings.xml b/omnipreference/res/values-in/strings.xml
similarity index 100%
rename from res/values-in/strings.xml
rename to omnipreference/res/values-in/strings.xml
diff --git a/res/values-it/strings.xml b/omnipreference/res/values-it/strings.xml
similarity index 100%
rename from res/values-it/strings.xml
rename to omnipreference/res/values-it/strings.xml
diff --git a/res/values-iw/strings.xml b/omnipreference/res/values-iw/strings.xml
similarity index 100%
rename from res/values-iw/strings.xml
rename to omnipreference/res/values-iw/strings.xml
diff --git a/res/values-ja/strings.xml b/omnipreference/res/values-ja/strings.xml
similarity index 100%
rename from res/values-ja/strings.xml
rename to omnipreference/res/values-ja/strings.xml
diff --git a/res/values-ka/strings.xml b/omnipreference/res/values-ka/strings.xml
similarity index 100%
rename from res/values-ka/strings.xml
rename to omnipreference/res/values-ka/strings.xml
diff --git a/res/values-km/strings.xml b/omnipreference/res/values-km/strings.xml
similarity index 100%
rename from res/values-km/strings.xml
rename to omnipreference/res/values-km/strings.xml
diff --git a/res/values-ko/strings.xml b/omnipreference/res/values-ko/strings.xml
similarity index 100%
rename from res/values-ko/strings.xml
rename to omnipreference/res/values-ko/strings.xml
diff --git a/res/values-lo-rLA/strings.xml b/omnipreference/res/values-lo-rLA/strings.xml
similarity index 100%
rename from res/values-lo-rLA/strings.xml
rename to omnipreference/res/values-lo-rLA/strings.xml
diff --git a/res/values-lt/strings.xml b/omnipreference/res/values-lt/strings.xml
similarity index 100%
rename from res/values-lt/strings.xml
rename to omnipreference/res/values-lt/strings.xml
diff --git a/res/values-lv/strings.xml b/omnipreference/res/values-lv/strings.xml
similarity index 100%
rename from res/values-lv/strings.xml
rename to omnipreference/res/values-lv/strings.xml
diff --git a/res/values-mn/strings.xml b/omnipreference/res/values-mn/strings.xml
similarity index 100%
rename from res/values-mn/strings.xml
rename to omnipreference/res/values-mn/strings.xml
diff --git a/res/values-ms/strings.xml b/omnipreference/res/values-ms/strings.xml
similarity index 100%
rename from res/values-ms/strings.xml
rename to omnipreference/res/values-ms/strings.xml
diff --git a/res/values-nb/strings.xml b/omnipreference/res/values-nb/strings.xml
similarity index 100%
rename from res/values-nb/strings.xml
rename to omnipreference/res/values-nb/strings.xml
diff --git a/res/values-ne/strings.xml b/omnipreference/res/values-ne/strings.xml
similarity index 100%
rename from res/values-ne/strings.xml
rename to omnipreference/res/values-ne/strings.xml
diff --git a/res/values-nl/strings.xml b/omnipreference/res/values-nl/strings.xml
similarity index 100%
rename from res/values-nl/strings.xml
rename to omnipreference/res/values-nl/strings.xml
diff --git a/res/values-pl/strings.xml b/omnipreference/res/values-pl/strings.xml
similarity index 100%
rename from res/values-pl/strings.xml
rename to omnipreference/res/values-pl/strings.xml
diff --git a/res/values-pt-rBR/strings.xml b/omnipreference/res/values-pt-rBR/strings.xml
similarity index 100%
rename from res/values-pt-rBR/strings.xml
rename to omnipreference/res/values-pt-rBR/strings.xml
diff --git a/res/values-pt-rPT/strings.xml b/omnipreference/res/values-pt-rPT/strings.xml
similarity index 100%
rename from res/values-pt-rPT/strings.xml
rename to omnipreference/res/values-pt-rPT/strings.xml
diff --git a/res/values-rm/strings.xml b/omnipreference/res/values-rm/strings.xml
similarity index 100%
rename from res/values-rm/strings.xml
rename to omnipreference/res/values-rm/strings.xml
diff --git a/res/values-ro/strings.xml b/omnipreference/res/values-ro/strings.xml
similarity index 100%
rename from res/values-ro/strings.xml
rename to omnipreference/res/values-ro/strings.xml
diff --git a/res/values-ru/strings.xml b/omnipreference/res/values-ru/strings.xml
similarity index 100%
rename from res/values-ru/strings.xml
rename to omnipreference/res/values-ru/strings.xml
diff --git a/res/values-si/strings.xml b/omnipreference/res/values-si/strings.xml
similarity index 100%
rename from res/values-si/strings.xml
rename to omnipreference/res/values-si/strings.xml
diff --git a/res/values-sk/strings.xml b/omnipreference/res/values-sk/strings.xml
similarity index 100%
rename from res/values-sk/strings.xml
rename to omnipreference/res/values-sk/strings.xml
diff --git a/res/values-sl/strings.xml b/omnipreference/res/values-sl/strings.xml
similarity index 100%
rename from res/values-sl/strings.xml
rename to omnipreference/res/values-sl/strings.xml
diff --git a/res/values-sr/strings.xml b/omnipreference/res/values-sr/strings.xml
similarity index 100%
rename from res/values-sr/strings.xml
rename to omnipreference/res/values-sr/strings.xml
diff --git a/res/values-sv/strings.xml b/omnipreference/res/values-sv/strings.xml
similarity index 100%
rename from res/values-sv/strings.xml
rename to omnipreference/res/values-sv/strings.xml
diff --git a/res/values-sw/strings.xml b/omnipreference/res/values-sw/strings.xml
similarity index 100%
rename from res/values-sw/strings.xml
rename to omnipreference/res/values-sw/strings.xml
diff --git a/res/values-th/strings.xml b/omnipreference/res/values-th/strings.xml
similarity index 100%
rename from res/values-th/strings.xml
rename to omnipreference/res/values-th/strings.xml
diff --git a/res/values-tl/strings.xml b/omnipreference/res/values-tl/strings.xml
similarity index 100%
rename from res/values-tl/strings.xml
rename to omnipreference/res/values-tl/strings.xml
diff --git a/res/values-tr/strings.xml b/omnipreference/res/values-tr/strings.xml
similarity index 100%
rename from res/values-tr/strings.xml
rename to omnipreference/res/values-tr/strings.xml
diff --git a/res/values-uk/strings.xml b/omnipreference/res/values-uk/strings.xml
similarity index 100%
rename from res/values-uk/strings.xml
rename to omnipreference/res/values-uk/strings.xml
diff --git a/res/values-vi/strings.xml b/omnipreference/res/values-vi/strings.xml
similarity index 100%
rename from res/values-vi/strings.xml
rename to omnipreference/res/values-vi/strings.xml
diff --git a/res/values-zh-rCN/strings.xml b/omnipreference/res/values-zh-rCN/strings.xml
similarity index 100%
rename from res/values-zh-rCN/strings.xml
rename to omnipreference/res/values-zh-rCN/strings.xml
diff --git a/res/values-zh-rHK/strings.xml b/omnipreference/res/values-zh-rHK/strings.xml
similarity index 100%
rename from res/values-zh-rHK/strings.xml
rename to omnipreference/res/values-zh-rHK/strings.xml
diff --git a/res/values-zh-rTW/strings.xml b/omnipreference/res/values-zh-rTW/strings.xml
similarity index 100%
rename from res/values-zh-rTW/strings.xml
rename to omnipreference/res/values-zh-rTW/strings.xml
diff --git a/res/values-zu/strings.xml b/omnipreference/res/values-zu/strings.xml
similarity index 100%
rename from res/values-zu/strings.xml
rename to omnipreference/res/values-zu/strings.xml
diff --git a/res/values/arrays.xml b/omnipreference/res/values/arrays.xml
similarity index 100%
rename from res/values/arrays.xml
rename to omnipreference/res/values/arrays.xml
diff --git a/res/values/custom_attrs.xml b/omnipreference/res/values/attrs.xml
similarity index 100%
rename from res/values/custom_attrs.xml
rename to omnipreference/res/values/attrs.xml
diff --git a/res/values/config.xml b/omnipreference/res/values/config.xml
similarity index 100%
rename from res/values/config.xml
rename to omnipreference/res/values/config.xml
diff --git a/res/values/dimensions.xml b/omnipreference/res/values/dimensions.xml
similarity index 100%
rename from res/values/dimensions.xml
rename to omnipreference/res/values/dimensions.xml
diff --git a/omnipreference/res/values/strings.xml b/omnipreference/res/values/strings.xml
new file mode 100644
index 0000000..c43a2b1
--- /dev/null
+++ b/omnipreference/res/values/strings.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--  Copyright (C) 2023 The OmniROM Project
+
+  Parts Copyright (C) 2012-2013 The CyanogenMod Project
+
+  This program is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ -->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="action_save">Save</string>
+    <string name="disabled_entry">Disabled</string>
+    <string name="profile_choose_app">Choose app</string>
+    <string name="not_ready_summary">Resolving...</string>
+    <string name="resolve_failed_summary">Resolving app failed</string>
+    <string name="choose_app">Choose app</string>
+    <string name="led_color_green">Green</string>
+    <string name="led_color_red">Red</string>
+</resources>
diff --git a/res/values/styles.xml b/omnipreference/res/values/styles.xml
similarity index 100%
rename from res/values/styles.xml
rename to omnipreference/res/values/styles.xml
diff --git a/core/AndroidManifest.xml b/res/values/public.xml
similarity index 67%
copy from core/AndroidManifest.xml
copy to res/values/public.xml
index 5e3bcdd..21c62a6 100644
--- a/core/AndroidManifest.xml
+++ b/res/values/public.xml
@@ -1,10 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
-
-<!--  Copyright (C) 2016 The OmniROM Project
+<!--  Copyright (C) 2023 The OmniROM Project
 
   This program is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
-  the Free Software Foundation, either version 2 of the License, or
+  the Free Software Foundation, either version 3 of the License, or
   (at your option) any later version.
 
   This program is distributed in the hope that it will be useful,
@@ -16,8 +15,9 @@
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
  -->
 
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          xmlns:tools="http://schemas.android.com/tools"
-    package="org.omnirom.omnilibcore">
+<resources>
 
-</manifest>
+    <public type="anim" name="last_app_in" />
+    <public type="anim" name="last_app_out" />
+
+</resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 935dc51..bee74fc 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--  Copyright (C) 2017 The OmniROM Project
+<!--  Copyright (C) 2023 The OmniROM Project
 
   Parts Copyright (C) 2012-2013 The CyanogenMod Project
 
@@ -18,12 +18,5 @@
  -->
 
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="action_save">Save</string>
-    <string name="disabled_entry">Disabled</string>
-    <string name="profile_choose_app">Choose app</string>
-    <string name="not_ready_summary">Resolving...</string>
-    <string name="resolve_failed_summary">Resolving app failed</string>
-    <string name="choose_app">Choose app</string>
-    <string name="led_color_green">Green</string>
-    <string name="led_color_red">Red</string>
+    <string name="omni_system_label">OmniRom System</string>
 </resources>
diff --git a/core/AndroidManifest.xml b/res/values/symbols.xml
similarity index 67%
copy from core/AndroidManifest.xml
copy to res/values/symbols.xml
index 5e3bcdd..99da603 100644
--- a/core/AndroidManifest.xml
+++ b/res/values/symbols.xml
@@ -1,10 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
-
-<!--  Copyright (C) 2016 The OmniROM Project
+<!--  Copyright (C) 2023 The OmniROM Project
 
   This program is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
-  the Free Software Foundation, either version 2 of the License, or
+  the Free Software Foundation, either version 3 of the License, or
   (at your option) any later version.
 
   This program is distributed in the hope that it will be useful,
@@ -16,8 +15,9 @@
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
  -->
 
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          xmlns:tools="http://schemas.android.com/tools"
-    package="org.omnirom.omnilibcore">
+<resources>
 
-</manifest>
+    <java-symbol type="anim" name="last_app_in" />
+    <java-symbol type="anim" name="last_app_out" />
+
+</resources>
diff --git a/src/org/omnirom/omnilib/fragments/OmniLibPreferenceFragment.java b/src/org/omnirom/omnilib/fragments/OmniLibPreferenceFragment.java
deleted file mode 100644
index 67decb4..0000000
--- a/src/org/omnirom/omnilib/fragments/OmniLibPreferenceFragment.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- *  Copyright (C) 2016 The OmniROM Project
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package org.omnirom.omnilib.fragments;
-
-import android.app.DialogFragment;
-import androidx.preference.PreferenceFragment;
-import androidx.preference.Preference;
-
-import com.android.settingslib.CustomDialogPreference;
-
-import java.util.UUID;
-
-public abstract class OmniLibPreferenceFragment extends PreferenceFragment {
-
-    @Override
-    public void onDisplayPreferenceDialog(Preference preference) {
-        if (preference.getKey() == null) {
-            // Auto-key preferences that don't have a key, so the dialog can find them.
-            preference.setKey(UUID.randomUUID().toString());
-        }
-        DialogFragment f = null;
-        if (preference instanceof CustomDialogPreference) {
-            f = CustomDialogPreference.CustomPreferenceDialogFragment
-                    .newInstance(preference.getKey());
-        } else {
-            super.onDisplayPreferenceDialog(preference);
-            return;
-        }
-        f.setTargetFragment(this, 0);
-        f.show(getFragmentManager(), "dialog_preference");
-    }
-}
diff --git a/core/org/omnirom/omnilibcore/utils/DeviceKeyHandler.java b/src/org/omnirom/omnilib/utils/DeviceKeyHandler.java
similarity index 98%
rename from core/org/omnirom/omnilibcore/utils/DeviceKeyHandler.java
rename to src/org/omnirom/omnilib/utils/DeviceKeyHandler.java
index 39313ab..699ea76 100644
--- a/core/org/omnirom/omnilibcore/utils/DeviceKeyHandler.java
+++ b/src/org/omnirom/omnilib/utils/DeviceKeyHandler.java
@@ -12,7 +12,7 @@
  * governing permissions and limitations under the License.
  */
 
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.content.Intent;
 import android.hardware.SensorEvent;
diff --git a/core/org/omnirom/omnilibcore/utils/DeviceUtils.java b/src/org/omnirom/omnilib/utils/DeviceUtils.java
similarity index 98%
rename from core/org/omnirom/omnilibcore/utils/DeviceUtils.java
rename to src/org/omnirom/omnilib/utils/DeviceUtils.java
index 9ae10a8..675b3e0 100644
--- a/core/org/omnirom/omnilibcore/utils/DeviceUtils.java
+++ b/src/org/omnirom/omnilib/utils/DeviceUtils.java
@@ -13,7 +13,7 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.bluetooth.BluetoothAdapter;
 import android.content.Context;
diff --git a/core/org/omnirom/omnilibcore/utils/OmniServiceLocator.java b/src/org/omnirom/omnilib/utils/OmniServiceLocator.java
similarity index 99%
rename from core/org/omnirom/omnilibcore/utils/OmniServiceLocator.java
rename to src/org/omnirom/omnilib/utils/OmniServiceLocator.java
index 5703910..db1736d 100644
--- a/core/org/omnirom/omnilibcore/utils/OmniServiceLocator.java
+++ b/src/org/omnirom/omnilib/utils/OmniServiceLocator.java
@@ -16,7 +16,7 @@
  *
  */
 
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.content.Context;
 import android.net.Uri;
diff --git a/core/org/omnirom/omnilibcore/utils/OmniUtils.java b/src/org/omnirom/omnilib/utils/OmniUtils.java
similarity index 97%
rename from core/org/omnirom/omnilibcore/utils/OmniUtils.java
rename to src/org/omnirom/omnilib/utils/OmniUtils.java
index bac06cc..9c40a68 100644
--- a/core/org/omnirom/omnilibcore/utils/OmniUtils.java
+++ b/src/org/omnirom/omnilib/utils/OmniUtils.java
@@ -15,7 +15,7 @@
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 *
 */
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.content.Context;
 import android.content.Intent;
@@ -167,13 +167,13 @@
 
     public static boolean getQSTileLabelHide(Context context) {
         return Settings.System.getIntForUser(context.getContentResolver(),
-                Settings.System.OMNI_QS_TILE_LABEL_HIDE,
+                "qs_tile_label_hide",
                 0, UserHandle.USER_CURRENT) != 0;
     }
 
     public static boolean getQSTileVerticalLayout(Context context, int defaultValue) {
         return Settings.System.getIntForUser(context.getContentResolver(),
-                Settings.System.OMNI_QS_TILE_VERTICAL_LAYOUT,
+                "qs_tile_vertical_layout",
                 defaultValue, UserHandle.USER_CURRENT) != 0;
     }
 }
diff --git a/core/org/omnirom/omnilibcore/utils/OmniVibe.java b/src/org/omnirom/omnilib/utils/OmniVibe.java
similarity index 98%
rename from core/org/omnirom/omnilibcore/utils/OmniVibe.java
rename to src/org/omnirom/omnilib/utils/OmniVibe.java
index 387e933..c57fe27 100644
--- a/core/org/omnirom/omnilibcore/utils/OmniVibe.java
+++ b/src/org/omnirom/omnilib/utils/OmniVibe.java
@@ -16,7 +16,7 @@
  *
  */
 
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.content.Context;
 import android.media.AudioAttributes;
diff --git a/core/org/omnirom/omnilibcore/utils/PackageUtils.java b/src/org/omnirom/omnilib/utils/PackageUtils.java
similarity index 97%
rename from core/org/omnirom/omnilibcore/utils/PackageUtils.java
rename to src/org/omnirom/omnilib/utils/PackageUtils.java
index 639dc1d..fb586a3 100644
--- a/core/org/omnirom/omnilibcore/utils/PackageUtils.java
+++ b/src/org/omnirom/omnilib/utils/PackageUtils.java
@@ -13,7 +13,7 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.content.Context;
 import android.content.pm.PackageManager;
diff --git a/core/org/omnirom/omnilibcore/utils/SystemKeyEventHandler.java b/src/org/omnirom/omnilib/utils/SystemKeyEventHandler.java
similarity index 98%
rename from core/org/omnirom/omnilibcore/utils/SystemKeyEventHandler.java
rename to src/org/omnirom/omnilib/utils/SystemKeyEventHandler.java
index 71c2a2e..2ba2bc0 100644
--- a/core/org/omnirom/omnilibcore/utils/SystemKeyEventHandler.java
+++ b/src/org/omnirom/omnilib/utils/SystemKeyEventHandler.java
@@ -16,7 +16,7 @@
  *
  */
 
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.os.Handler;
 import android.util.Log;
diff --git a/core/org/omnirom/omnilibcore/utils/TaskUtils.java b/src/org/omnirom/omnilib/utils/TaskUtils.java
similarity index 97%
rename from core/org/omnirom/omnilibcore/utils/TaskUtils.java
rename to src/org/omnirom/omnilib/utils/TaskUtils.java
index aa57b44..19c8292 100644
--- a/core/org/omnirom/omnilibcore/utils/TaskUtils.java
+++ b/src/org/omnirom/omnilib/utils/TaskUtils.java
@@ -13,7 +13,7 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-package org.omnirom.omnilibcore.utils;
+package org.omnirom.omnilib.utils;
 
 import android.app.Activity;
 import android.app.ActivityOptions;
@@ -26,7 +26,7 @@
 import android.content.pm.PackageManager;
 import android.os.RemoteException;
 
-import org.omnirom.omnilib.R;
+import omnirom.platform.R;
 
 import java.util.List;
 
