Skip to content

Commit

Permalink
patterns: meta: Deprecate patterns in favor of meta-packages
Browse files Browse the repository at this point in the history
  • Loading branch information
JamiKettunen committed Dec 5, 2019
1 parent 4c6d62d commit cc43ea3
Show file tree
Hide file tree
Showing 10 changed files with 187 additions and 128 deletions.
2 changes: 1 addition & 1 deletion .gitmodules
@@ -1,3 +1,3 @@
[submodule "droid-configs-device"]
path = droid-configs-device
url = https://github.com/mer-hybris/droid-hal-configs
url = https://github.com/sailfishos-oneplus5/droid-hal-configs
2 changes: 1 addition & 1 deletion droid-configs-device
37 changes: 3 additions & 34 deletions patterns/jolla-configuration-cheeseburger.yaml
@@ -1,36 +1,5 @@
Description: Pattern with packages for cheeseburger configurations
Description: Dummy pattern to keep scripts happy
Name: jolla-configuration-cheeseburger
Requires:
- pattern:jolla-hw-adaptation-cheeseburger

- patterns-sailfish-applications
- patterns-sailfish-ui
- patterns-sailfish-cellular-apps
# Early stages of porting benefit from these:
- pattern:sailfish-porter-tools

- sailfish-content-graphics-z@ICON_RES@

# For multi-SIM devices
- jolla-settings-networking-multisim

# Introduced starting Sailfish OS 2.0.4.x:
# 3rd party accounts like Twitter, VK, cloud services, etc
- jolla-settings-accounts-extensions-3rd-party-all

# Introduced starting Sailfish OS 2.1.1.26
# Required for Jolla Store Access
- patterns-sailfish-consumer-generic

# For Mozilla location services (online)
- geoclue-provider-mlsdb

# Sailfish OS CSD tool for hardware testing
# needs some configuration to get all features working
- csd

# Devices with 2G or more memory should also include this booster
# to improve camera startup times and the like
- mapplauncherd-booster-silica-qt5-media

Summary: Jolla Configuration cheeseburger
- dummy-package
Summary: Jolla Dummy Configuration cheeseburger
93 changes: 3 additions & 90 deletions patterns/jolla-hw-adaptation-cheeseburger.yaml
@@ -1,92 +1,5 @@
Description: Pattern with packages for cheeseburger HW Adaptation
Description: Dummy pattern to keep scripts happy
Name: jolla-hw-adaptation-cheeseburger
Requires:
- droid-hal-cheeseburger
- droid-hal-cheeseburger-detritus
- droid-hal-cheeseburger-img-boot
- droid-hal-cheeseburger-kernel-modules
- droid-config-cheeseburger-sailfish
- droid-config-cheeseburger-pulseaudio-settings
- droid-config-cheeseburger-policy-settings
- droid-config-cheeseburger-preinit-plugin
- droid-config-cheeseburger-flashing
- droid-config-cheeseburger-bluez5
- droid-hal-version-cheeseburger

# Hybris packages
- libhybris-libEGL
- libhybris-libGLESv2
- libhybris-libwayland-egl

# Telephony
- ofono-ril-binder-plugin

# Bluetooth
- bluebinder

# NFC
- nfcd-binder-plugin
- jolla-settings-system-nfc

# Flashlight
- jolla-settings-system-flashlight

# Sensors
- hybris-libsensorfw-qt5

# Vibra
- ngfd-plugin-native-vibrator
- qt5-feedback-haptics-native-vibrator

# Needed for /dev/touchscreen symlink
- qt5-plugin-generic-evdev

# Audio
- pulseaudio-modules-droid
- pulseaudio-modules-droid-hidl
- pulseaudio-modules-droid-glue
# for audio recording to work:
- qt5-qtmultimedia-plugin-mediaservice-gstmediacapture

# These need to be per-device due to differing backends (fbdev, eglfs, hwc, ..?)
- qt5-qtwayland-wayland_egl
- qt5-qpa-hwcomposer-plugin
- qtscenegraph-adaptation

# Add GStreamer v1.0 as standard
- gstreamer1.0
- gstreamer1.0-droid
- gstreamer1.0-libav
- gstreamer1.0-plugins-good
- gstreamer1.0-plugins-base
- gstreamer1.0-plugins-bad
- nemo-gstreamer1.0-interfaces

# This is needed for notification LEDs
- mce-plugin-libhybris

## USB mode controller
# Enables mode selector upon plugging USB cable:
- usb-moded

# hammerhead, grouper, and maguro use this in scripts, so include for all
- rfkill

# enable device lock and allow to select untrusted software
- jolla-devicelock-daemon-encsfa

# For GPS
- geoclue-provider-hybris

# OnePlus 5 specific packages
- triambienced
- onyx-triambience-settings-plugin
- gestured
- onyx-gesture-settings-plugin

# Other packages
- mce-tools
- nano
- htop

Summary: Jolla HW Adaptation cheeseburger
- dummy-package
Summary: Jolla Dummy HW Adaptation cheeseburger
7 changes: 5 additions & 2 deletions rpm/droid-config-cheeseburger.spec
@@ -1,12 +1,12 @@
# Reference: ../droid-configs-device/droid-configs.inc

%define vendor oneplus
%define device cheeseburger
%include rpm/header-cheeseburger.inc

%define vendor_pretty OnePlus
%define device_pretty OnePlus 5

%define community_adaptation 1
%define use_meta_package 1
%define pixel_ratio 1.8

# Device-specific usb-moded configuration
Expand All @@ -17,6 +17,9 @@ Obsoletes: usb-moded-defaults
Provides: ofono-configs
Obsoletes: ofono-configs-mer

# Obsolete unnecessary PA glue module (we still need audioflingerglue for camera)
Obsoletes: pulseaudio-modules-droid-glue

%define ofono_enable_plugins bluez5,hfp_ag_bluez5
%define ofono_disable_plugins bluez4,dun_gw_bluez4,hfp_ag_bluez4,hfp_bluez4,dun_gw_bluez5,hfp_bluez5

Expand Down
2 changes: 2 additions & 0 deletions rpm/header-cheeseburger.inc
@@ -0,0 +1,2 @@
%define vendor oneplus
%define device cheeseburger
61 changes: 61 additions & 0 deletions rpm/jolla-configuration-cheeseburger.inc
@@ -0,0 +1,61 @@
Requires: jolla-hw-adaptation-%{device}

Requires: patterns-sailfish-applications
Requires: patterns-sailfish-ui
Requires: patterns-sailfish-cellular-apps

Requires: sailfish-content-graphics-z1.75

# Extended settings functionality
Requires: jolla-settings-system-nfc
Requires: jolla-settings-system-flashlight
Requires: jolla-settings-networking-multisim
Requires: jolla-settings-accounts-extensions-3rd-party-all

# Introduced starting Sailfish OS 2.1.1.26
# Required for Jolla Store Access
Requires: patterns-sailfish-consumer-generic

# For Mozilla location services (online)
Requires: geoclue-provider-mlsdb

# Sailfish OS CSD tool for hardware testing
# needs some configuration to get all features working
Requires: csd

# Devices with 2G or more memory should also include this booster
# to improve camera startup times and the like
Requires: mapplauncherd-booster-silica-qt5-media

# Enable device lock and allow to select untrusted software
Requires: jolla-devicelock-daemon-encsfa
#Requires: jolla-devicelock-plugin-encsfa

# Enable /home encryption
#Requires: sailfish-device-encryption

# SELinux
#Requires: libselinux-utils
#Requires: libselinux-utils-extra
#Requires: setools
#Requires: policycoreutils

# Early stages of porting benefit from these:
# On the basis of sailfish-porter-tools
Requires: jolla-developer-mode
Requires: sailfishsilica-qt5-demos
Requires: busybox-static
Requires: net-tools
Requires: openssh-clients
Requires: openssh-server
Requires: vim-enhanced
Requires: zypper
Requires: strace
#Requires: jolla-rnd-device
#Requires: libhybris-tests
# End sailfish-porter-tools

# Miscellaneous packages
Requires: htop
#Requires: mce-tools
#Requires: nano
16 changes: 16 additions & 0 deletions rpm/jolla-configuration-cheeseburger.spec
@@ -0,0 +1,16 @@
# Device variables including vendor & device (model)
%include rpm/header-cheeseburger.inc

Name: jolla-configuration-%{device}
Summary: Jolla Configuration %{device}
Version: 1.1.1
Release: 1
License: BSD-3-Clause
Source: %{name}-%{version}.tar.gz

# Include general Jolla & Sailfish OS configuration
%inlcude rpm/jolla-configuration-cheeseburger.inc

%description
Meta-package to install packages for %{device} configurations
%files
79 changes: 79 additions & 0 deletions rpm/jolla-hw-adaptation-cheeseburger.inc
@@ -0,0 +1,79 @@
Requires: droid-hal-%{device}
Requires: droid-hal-%{device}-detritus
Requires: droid-hal-%{device}-img-boot
#Requires: droid-hal-%{device}-img-recovery
Requires: droid-hal-%{device}-kernel-modules
Requires: droid-hal-%{device}-tools
Requires: droid-config-%{device}-sailfish
Requires: droid-config-%{device}-pulseaudio-settings
Requires: droid-config-%{device}-policy-settings
Requires: droid-config-%{device}-preinit-plugin
Requires: droid-config-%{device}-flashing
Requires: droid-config-%{device}-bluez5
Requires: droid-hal-version-%{device}

# Hybris packages
Requires: libhybris-libEGL
Requires: libhybris-libGLESv2
Requires: libhybris-libwayland-egl

# Telephony
Requires: ofono-ril-binder-plugin

# Bluetooth
Requires: bluebinder

# NFC
Requires: nfcd-binder-plugin

# Sensors
Requires: hybris-libsensorfw-qt5

# Vibra
Requires: ngfd-plugin-native-vibrator
Requires: qt5-feedback-haptics-native-vibrator

# Needed for /dev/touchscreen symlink
Requires: qt5-plugin-generic-evdev

# Audio
Requires: pulseaudio-modules-droid
Requires: pulseaudio-modules-droid-hidl
# for audio recording to work:
Requires: qt5-qtmultimedia-plugin-mediaservice-gstmediacapture

# Camera
Requires: audioflingerglue

# These need to be per-device due to differing backends (fbdev, eglfs, hwc, ..?)
Requires: qt5-qtwayland-wayland_egl
Requires: qt5-qpa-hwcomposer-plugin
Requires: qtscenegraph-adaptation

# Add GStreamer v1.0 as standard
Requires: gstreamer1.0
Requires: gstreamer1.0-droid
Requires: gstreamer1.0-libav
Requires: gstreamer1.0-plugins-good
Requires: gstreamer1.0-plugins-base
Requires: gstreamer1.0-plugins-bad
Requires: nemo-gstreamer1.0-interfaces

# This is needed for notification LEDs
Requires: mce-plugin-libhybris

## USB mode controller
# Enables mode selector upon plugging USB cable:
Requires: usb-moded

# hammerhead, grouper, and maguro use this in scripts, so include for all
Requires: rfkill

# For GPS
Requires: geoclue-provider-hybris

# OnePlus 5 specific packages
Requires: triambienced
Requires: onyx-triambience-settings-plugin
Requires: gestured
Requires: onyx-gesture-settings-plugin
16 changes: 16 additions & 0 deletions rpm/jolla-hw-adaptation-cheeseburger.spec
@@ -0,0 +1,16 @@
# Device variables including vendor & device (model)
%include rpm/header-cheeseburger.inc

Name: jolla-hw-adaptation-%{device}
Summary: Jolla HW Adaptation %{device}
Version: 1.1.1
Release: 1
License: BSD-3-Clause
Source: %{name}-%{version}.tar.gz

# Include device specific HW adaptation configuration
%inlcude rpm/jolla-hw-adaptation-cheeseburger.inc

%description
Meta-package to install packages for %{device} HW Adaptation
%files

0 comments on commit cc43ea3

Please sign in to comment.