This is the list of the proprietary libraries, binaries and firmwares shipped on the Galaxy S and the status of their replacement.
Library location |
Function |
Can be replaced or avoided? |
/system/vendor/lib/hw/gps.aries.so |
GPS library (sends NMEA output to framework) |
Easy to rewrite, doesn't deal with hardware at all |
/system/lib/libril.so |
RIL Lib |
Default libril works fine with replacement |
/system/lib/libsecril-client.so |
RIL client (used by libaudio) |
Replaced by samsung-ril-client |
/system/lib/libsec-ril.so |
RIL |
Replaced by samsung-ril |
/system/lib/libsamsungcamera.so |
dlopened camera lib |
Camera is v4l2 and there is a free replacement for ics available |
/system/lib/egl/libGLES_android.so |
graphics |
PowerVR-related |
/system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so |
graphics |
PowerVR-related |
/system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so |
graphics |
PowerVR-related |
/system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so |
graphics |
PowerVR-related |
/system/vendor/lib/hw/gralloc.aries.so |
graphics |
PowerVR-related |
/system/vendor/lib/libakm.so |
compass lib |
there is libakm_free but it doesn't support this compass |
/system/vendor/lib/libglslcompiler.so |
? |
can be avoided |
/system/vendor/lib/libIMGegl.so |
graphics |
PowerVR-related |
/system/vendor/lib/libpvr2d.so |
graphics |
PowerVR-related |
/system/vendor/lib/libpvrANDROID_WSEGL.so |
graphics |
PowerVR-related |
/system/vendor/lib/libPVRScopeServices.so |
graphics |
PowerVR-related |
/system/vendor/lib/libsrv_init.so |
? |
can be avoided |
/system/vendor/lib/libsrv_um.so |
? |
can be avoided |
/system/vendor/lib/libusc.so |
? |
can be avoided |
/system/vendor/lib/libsensor_yamaha_test.so |
sensors |
can be avoided |
/system/vendor/lib/libsensorservice.so |
sensors |
can be avoided |
/system/lib/libActionShot.so |
camera-related |
? |
/system/lib/libarccamera.so |
camera-related |
? |
/system/lib/libcamera_client.so |
camera-related |
? |
/system/lib/libcamerafirmwarejni.so |
camera-related |
? |
/system/lib/libcameraservice.so |
camera-related |
? |
/system/lib/libCaMotion.so |
camera-related |
? |
/system/lib/libcaps.so |
? |
? |
/system/lib/libPanoraMax1.so |
? |
? |
/system/lib/libPlusMe.so |
? |
? |
/system/lib/libs3cjpeg.so |
jpeg-related |
should be free software |
/system/lib/libseccamera.so |
camera-related |
? |
/system/lib/libseccameraadaptor.so |
camera-related |
? |
/system/lib/libsecjpegencoder.so |
jpeg-related |
? |
/system/lib/libtvout.so |
graphics (tv out) |
? |
/system/lib/lib_tvoutengine.so |
graphics (tv out) |
? |
/system/lib/libtvoutfimc.so |
graphics (tv out) |
? |
/system/lib/libtvouthdmi.so |
graphics (tv out) |
? |
/system/lib/libtvoutservice.so |
graphics (tv out) |
? |
/system/lib/libQmageDecoder.so |
decoder ? |
? |
Binary location |
Function |
Can be replaced or avoided? |
/system/vendor/bin/gpsd |
non-free gpsd |
needs to eb replaced to have working gps |
/system/bin/rild |
ril daemon |
it's there to run the RIL as root, was replaced easily |
/radio/modem.bin |
modem binary |
we don't want to deal with it |
/system/vendor/bin/pvrsrvinit |
graphics |
can be avoided with our gralloc |
/system/vendor/bin/orientationd |
sensors |
must be replaced by libakm_free |
/system/vendor/bin/geomagneticd |
must be replaced by libakm_free |
/system/bin/tvoutserver |
graphics |
? |
/system/bin/charging_mode |
? |
? |
/system/bin/playlpm |
play nice images when charging the phone |
was replaced |
File location |
Function |
What depends on it? |
/system/etc/gps.conf |
gps conf |
non-free gps module? |
/system/vendor/etc/gps.xml |
gps conf |
non-free gpsd |
/system/cameradata/datapattern_420sp.yuv |
camera-related |
non-free camera lib |
/system/cameradata/datapattern_front_420sp.yuv |
camera-related |
non-free camera lib |
/system/media/battery_charging_10.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_100.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_15.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_20.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_25.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_30.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_35.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_40.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_45.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_5.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_50.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_55.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_60.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_65.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_70.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_75.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_80.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_85.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_90.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/battery_charging_95.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/chargingwarning.qmg |
charging mode screen |
charging mode (but was replaced) |
/system/media/Disconnected.qmg |
charging mode screen |
charging mode (but was replaced) |