[libcamera-devel,v1,3/6] Move test applications to src/apps/
diff mbox series

Message ID 20221019231537.26880-4-laurent.pinchart@ideasonboard.com
State Accepted
Headers show
Series
  • apps: Avoid duplicate compilation of common code
Related show

Commit Message

Laurent Pinchart Oct. 19, 2022, 11:15 p.m. UTC
The cam and qcam test application share code, currently through a crude
hack that references the cam source files directly from the qcam
meson.build file. To prepare for the introduction of hosting that code
in a static library, move all applications to src/apps/.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 src/{ => apps}/cam/camera_session.cpp                       | 0
 src/{ => apps}/cam/camera_session.h                         | 0
 src/{ => apps}/cam/capture-script.yaml                      | 0
 src/{ => apps}/cam/capture_script.cpp                       | 0
 src/{ => apps}/cam/capture_script.h                         | 0
 src/{ => apps}/cam/dng_writer.cpp                           | 0
 src/{ => apps}/cam/dng_writer.h                             | 0
 src/{ => apps}/cam/drm.cpp                                  | 0
 src/{ => apps}/cam/drm.h                                    | 0
 src/{ => apps}/cam/event_loop.cpp                           | 0
 src/{ => apps}/cam/event_loop.h                             | 0
 src/{ => apps}/cam/file_sink.cpp                            | 0
 src/{ => apps}/cam/file_sink.h                              | 0
 src/{ => apps}/cam/frame_sink.cpp                           | 0
 src/{ => apps}/cam/frame_sink.h                             | 0
 src/{ => apps}/cam/image.cpp                                | 0
 src/{ => apps}/cam/image.h                                  | 0
 src/{ => apps}/cam/kms_sink.cpp                             | 0
 src/{ => apps}/cam/kms_sink.h                               | 0
 src/{ => apps}/cam/main.cpp                                 | 0
 src/{ => apps}/cam/main.h                                   | 0
 src/{ => apps}/cam/meson.build                              | 0
 src/{ => apps}/cam/options.cpp                              | 0
 src/{ => apps}/cam/options.h                                | 0
 src/{ => apps}/cam/sdl_sink.cpp                             | 0
 src/{ => apps}/cam/sdl_sink.h                               | 0
 src/{ => apps}/cam/sdl_texture.cpp                          | 0
 src/{ => apps}/cam/sdl_texture.h                            | 0
 src/{ => apps}/cam/sdl_texture_mjpg.cpp                     | 0
 src/{ => apps}/cam/sdl_texture_mjpg.h                       | 0
 src/{ => apps}/cam/sdl_texture_yuv.cpp                      | 0
 src/{ => apps}/cam/sdl_texture_yuv.h                        | 0
 src/{ => apps}/cam/stream_options.cpp                       | 0
 src/{ => apps}/cam/stream_options.h                         | 0
 src/{ => apps}/lc-compliance/capture_test.cpp               | 0
 src/{ => apps}/lc-compliance/environment.cpp                | 0
 src/{ => apps}/lc-compliance/environment.h                  | 0
 src/{ => apps}/lc-compliance/main.cpp                       | 0
 src/{ => apps}/lc-compliance/meson.build                    | 0
 src/{ => apps}/lc-compliance/simple_capture.cpp             | 0
 src/{ => apps}/lc-compliance/simple_capture.h               | 0
 src/apps/meson.build                                        | 6 ++++++
 src/{ => apps}/qcam/assets/feathericons/activity.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/airplay.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/alert-circle.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/alert-octagon.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/alert-triangle.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/align-center.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/align-justify.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/align-left.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/align-right.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/anchor.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/aperture.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/archive.svg         | 0
 .../qcam/assets/feathericons/arrow-down-circle.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-down-left.svg | 0
 .../qcam/assets/feathericons/arrow-down-right.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-down.svg      | 0
 .../qcam/assets/feathericons/arrow-left-circle.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-left.svg      | 0
 .../qcam/assets/feathericons/arrow-right-circle.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-right.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-up-circle.svg | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-up-left.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-up-right.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/arrow-up.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/at-sign.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/award.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/bar-chart-2.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/bar-chart.svg       | 0
 .../qcam/assets/feathericons/battery-charging.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/battery.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/bell-off.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/bell.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/bluetooth.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/bold.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/book-open.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/book.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/bookmark.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/box.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/briefcase.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/calendar.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/camera-off.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/camera.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/cast.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/check-circle.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/check-square.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/check.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/chevron-down.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/chevron-left.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/chevron-right.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/chevron-up.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/chevrons-down.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/chevrons-left.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/chevrons-right.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/chevrons-up.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/chrome.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/circle.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/clipboard.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/clock.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/cloud-drizzle.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/cloud-lightning.svg | 0
 src/{ => apps}/qcam/assets/feathericons/cloud-off.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/cloud-rain.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/cloud-snow.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/cloud.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/code.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/codepen.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/codesandbox.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/coffee.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/columns.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/command.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/compass.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/copy.svg            | 0
 .../qcam/assets/feathericons/corner-down-left.svg           | 0
 .../qcam/assets/feathericons/corner-down-right.svg          | 0
 .../qcam/assets/feathericons/corner-left-down.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/corner-left-up.svg  | 0
 .../qcam/assets/feathericons/corner-right-down.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/corner-right-up.svg | 0
 src/{ => apps}/qcam/assets/feathericons/corner-up-left.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/corner-up-right.svg | 0
 src/{ => apps}/qcam/assets/feathericons/cpu.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/credit-card.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/crop.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/crosshair.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/database.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/delete.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/disc.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/dollar-sign.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/download-cloud.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/download.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/droplet.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/edit-2.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/edit-3.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/edit.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/external-link.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/eye-off.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/eye.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/facebook.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/fast-forward.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/feather.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/feathericons.qrc    | 0
 src/{ => apps}/qcam/assets/feathericons/figma.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/file-minus.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/file-plus.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/file-text.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/file.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/film.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/filter.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/flag.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/folder-minus.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/folder-plus.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/folder.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/framer.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/frown.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/gift.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/git-branch.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/git-commit.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/git-merge.svg       | 0
 .../qcam/assets/feathericons/git-pull-request.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/github.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/gitlab.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/globe.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/grid.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/hard-drive.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/hash.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/headphones.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/heart.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/help-circle.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/hexagon.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/home.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/image.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/inbox.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/info.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/instagram.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/italic.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/key.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/layers.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/layout.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/life-buoy.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/link-2.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/link.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/linkedin.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/list.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/loader.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/lock.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/log-in.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/log-out.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/mail.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/map-pin.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/map.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/maximize-2.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/maximize.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/meh.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/menu.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/message-circle.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/message-square.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/mic-off.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/mic.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/minimize-2.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/minimize.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/minus-circle.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/minus-square.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/minus.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/monitor.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/moon.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/more-horizontal.svg | 0
 src/{ => apps}/qcam/assets/feathericons/more-vertical.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/mouse-pointer.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/move.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/music.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/navigation-2.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/navigation.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/octagon.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/package.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/paperclip.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/pause-circle.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/pause.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/pen-tool.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/percent.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/phone-call.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/phone-forwarded.svg | 0
 src/{ => apps}/qcam/assets/feathericons/phone-incoming.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/phone-missed.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/phone-off.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/phone-outgoing.svg  | 0
 src/{ => apps}/qcam/assets/feathericons/phone.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/pie-chart.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/play-circle.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/play.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/plus-circle.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/plus-square.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/plus.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/pocket.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/power.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/printer.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/radio.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/refresh-ccw.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/refresh-cw.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/repeat.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/rewind.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/rotate-ccw.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/rotate-cw.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/rss.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/save.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/scissors.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/search.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/send.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/server.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/settings.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/share-2.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/share.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/shield-off.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/shield.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/shopping-bag.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/shopping-cart.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/shuffle.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/sidebar.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/skip-back.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/skip-forward.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/slack.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/slash.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/sliders.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/smartphone.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/smile.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/speaker.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/square.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/star.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/stop-circle.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/sun.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/sunrise.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/sunset.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/tablet.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/tag.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/target.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/terminal.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/thermometer.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/thumbs-down.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/thumbs-up.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/toggle-left.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/toggle-right.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/tool.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/trash-2.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/trash.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/trello.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/trending-down.svg   | 0
 src/{ => apps}/qcam/assets/feathericons/trending-up.svg     | 0
 src/{ => apps}/qcam/assets/feathericons/triangle.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/truck.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/tv.svg              | 0
 src/{ => apps}/qcam/assets/feathericons/twitch.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/twitter.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/type.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/umbrella.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/underline.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/unlock.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/upload-cloud.svg    | 0
 src/{ => apps}/qcam/assets/feathericons/upload.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/user-check.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/user-minus.svg      | 0
 src/{ => apps}/qcam/assets/feathericons/user-plus.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/user-x.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/user.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/users.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/video-off.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/video.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/voicemail.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/volume-1.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/volume-2.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/volume-x.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/volume.svg          | 0
 src/{ => apps}/qcam/assets/feathericons/watch.svg           | 0
 src/{ => apps}/qcam/assets/feathericons/wifi-off.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/wifi.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/wind.svg            | 0
 src/{ => apps}/qcam/assets/feathericons/x-circle.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/x-octagon.svg       | 0
 src/{ => apps}/qcam/assets/feathericons/x-square.svg        | 0
 src/{ => apps}/qcam/assets/feathericons/x.svg               | 0
 src/{ => apps}/qcam/assets/feathericons/youtube.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/zap-off.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/zap.svg             | 0
 src/{ => apps}/qcam/assets/feathericons/zoom-in.svg         | 0
 src/{ => apps}/qcam/assets/feathericons/zoom-out.svg        | 0
 src/{ => apps}/qcam/assets/shader/RGB.frag                  | 0
 src/{ => apps}/qcam/assets/shader/YUV_2_planes.frag         | 0
 src/{ => apps}/qcam/assets/shader/YUV_3_planes.frag         | 0
 src/{ => apps}/qcam/assets/shader/YUV_packed.frag           | 0
 src/{ => apps}/qcam/assets/shader/bayer_1x_packed.frag      | 0
 src/{ => apps}/qcam/assets/shader/bayer_8.frag              | 0
 src/{ => apps}/qcam/assets/shader/bayer_8.vert              | 0
 src/{ => apps}/qcam/assets/shader/identity.vert             | 0
 src/{ => apps}/qcam/assets/shader/shaders.qrc               | 0
 src/{ => apps}/qcam/cam_select_dialog.cpp                   | 0
 src/{ => apps}/qcam/cam_select_dialog.h                     | 0
 src/{ => apps}/qcam/format_converter.cpp                    | 0
 src/{ => apps}/qcam/format_converter.h                      | 0
 src/{ => apps}/qcam/main.cpp                                | 0
 src/{ => apps}/qcam/main_window.cpp                         | 0
 src/{ => apps}/qcam/main_window.h                           | 0
 src/{ => apps}/qcam/meson.build                             | 0
 src/{ => apps}/qcam/message_handler.cpp                     | 0
 src/{ => apps}/qcam/message_handler.h                       | 0
 src/{ => apps}/qcam/viewfinder.h                            | 0
 src/{ => apps}/qcam/viewfinder_gl.cpp                       | 0
 src/{ => apps}/qcam/viewfinder_gl.h                         | 0
 src/{ => apps}/qcam/viewfinder_qt.cpp                       | 0
 src/{ => apps}/qcam/viewfinder_qt.h                         | 0
 src/meson.build                                             | 5 +----
 350 files changed, 7 insertions(+), 4 deletions(-)
 rename src/{ => apps}/cam/camera_session.cpp (100%)
 rename src/{ => apps}/cam/camera_session.h (100%)
 rename src/{ => apps}/cam/capture-script.yaml (100%)
 rename src/{ => apps}/cam/capture_script.cpp (100%)
 rename src/{ => apps}/cam/capture_script.h (100%)
 rename src/{ => apps}/cam/dng_writer.cpp (100%)
 rename src/{ => apps}/cam/dng_writer.h (100%)
 rename src/{ => apps}/cam/drm.cpp (100%)
 rename src/{ => apps}/cam/drm.h (100%)
 rename src/{ => apps}/cam/event_loop.cpp (100%)
 rename src/{ => apps}/cam/event_loop.h (100%)
 rename src/{ => apps}/cam/file_sink.cpp (100%)
 rename src/{ => apps}/cam/file_sink.h (100%)
 rename src/{ => apps}/cam/frame_sink.cpp (100%)
 rename src/{ => apps}/cam/frame_sink.h (100%)
 rename src/{ => apps}/cam/image.cpp (100%)
 rename src/{ => apps}/cam/image.h (100%)
 rename src/{ => apps}/cam/kms_sink.cpp (100%)
 rename src/{ => apps}/cam/kms_sink.h (100%)
 rename src/{ => apps}/cam/main.cpp (100%)
 rename src/{ => apps}/cam/main.h (100%)
 rename src/{ => apps}/cam/meson.build (100%)
 rename src/{ => apps}/cam/options.cpp (100%)
 rename src/{ => apps}/cam/options.h (100%)
 rename src/{ => apps}/cam/sdl_sink.cpp (100%)
 rename src/{ => apps}/cam/sdl_sink.h (100%)
 rename src/{ => apps}/cam/sdl_texture.cpp (100%)
 rename src/{ => apps}/cam/sdl_texture.h (100%)
 rename src/{ => apps}/cam/sdl_texture_mjpg.cpp (100%)
 rename src/{ => apps}/cam/sdl_texture_mjpg.h (100%)
 rename src/{ => apps}/cam/sdl_texture_yuv.cpp (100%)
 rename src/{ => apps}/cam/sdl_texture_yuv.h (100%)
 rename src/{ => apps}/cam/stream_options.cpp (100%)
 rename src/{ => apps}/cam/stream_options.h (100%)
 rename src/{ => apps}/lc-compliance/capture_test.cpp (100%)
 rename src/{ => apps}/lc-compliance/environment.cpp (100%)
 rename src/{ => apps}/lc-compliance/environment.h (100%)
 rename src/{ => apps}/lc-compliance/main.cpp (100%)
 rename src/{ => apps}/lc-compliance/meson.build (100%)
 rename src/{ => apps}/lc-compliance/simple_capture.cpp (100%)
 rename src/{ => apps}/lc-compliance/simple_capture.h (100%)
 create mode 100644 src/apps/meson.build
 rename src/{ => apps}/qcam/assets/feathericons/activity.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/airplay.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/alert-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/alert-octagon.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/alert-triangle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/align-center.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/align-justify.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/align-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/align-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/anchor.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/aperture.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/archive.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-down-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-down-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-down-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-down.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-left-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-right-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-up-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-up-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-up-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/arrow-up.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/at-sign.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/award.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/bar-chart-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/bar-chart.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/battery-charging.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/battery.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/bell-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/bell.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/bluetooth.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/bold.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/book-open.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/book.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/bookmark.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/box.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/briefcase.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/calendar.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/camera-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/camera.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cast.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/check-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/check-square.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/check.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevron-down.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevron-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevron-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevron-up.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevrons-down.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevrons-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevrons-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chevrons-up.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/chrome.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/clipboard.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/clock.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cloud-drizzle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cloud-lightning.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cloud-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cloud-rain.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cloud-snow.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cloud.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/code.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/codepen.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/codesandbox.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/coffee.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/columns.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/command.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/compass.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/copy.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-down-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-down-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-left-down.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-left-up.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-right-down.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-right-up.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-up-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/corner-up-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/cpu.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/credit-card.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/crop.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/crosshair.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/database.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/delete.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/disc.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/dollar-sign.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/download-cloud.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/download.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/droplet.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/edit-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/edit-3.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/edit.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/external-link.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/eye-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/eye.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/facebook.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/fast-forward.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/feather.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/feathericons.qrc (100%)
 rename src/{ => apps}/qcam/assets/feathericons/figma.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/file-minus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/file-plus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/file-text.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/file.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/film.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/filter.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/flag.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/folder-minus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/folder-plus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/folder.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/framer.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/frown.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/gift.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/git-branch.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/git-commit.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/git-merge.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/git-pull-request.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/github.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/gitlab.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/globe.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/grid.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/hard-drive.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/hash.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/headphones.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/heart.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/help-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/hexagon.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/home.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/image.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/inbox.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/info.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/instagram.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/italic.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/key.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/layers.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/layout.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/life-buoy.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/link-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/link.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/linkedin.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/list.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/loader.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/lock.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/log-in.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/log-out.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/mail.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/map-pin.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/map.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/maximize-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/maximize.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/meh.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/menu.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/message-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/message-square.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/mic-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/mic.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/minimize-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/minimize.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/minus-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/minus-square.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/minus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/monitor.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/moon.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/more-horizontal.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/more-vertical.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/mouse-pointer.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/move.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/music.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/navigation-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/navigation.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/octagon.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/package.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/paperclip.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/pause-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/pause.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/pen-tool.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/percent.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/phone-call.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/phone-forwarded.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/phone-incoming.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/phone-missed.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/phone-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/phone-outgoing.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/phone.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/pie-chart.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/play-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/play.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/plus-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/plus-square.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/plus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/pocket.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/power.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/printer.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/radio.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/refresh-ccw.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/refresh-cw.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/repeat.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/rewind.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/rotate-ccw.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/rotate-cw.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/rss.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/save.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/scissors.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/search.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/send.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/server.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/settings.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/share-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/share.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/shield-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/shield.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/shopping-bag.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/shopping-cart.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/shuffle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/sidebar.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/skip-back.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/skip-forward.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/slack.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/slash.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/sliders.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/smartphone.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/smile.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/speaker.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/square.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/star.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/stop-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/sun.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/sunrise.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/sunset.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/tablet.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/tag.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/target.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/terminal.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/thermometer.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/thumbs-down.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/thumbs-up.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/toggle-left.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/toggle-right.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/tool.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/trash-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/trash.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/trello.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/trending-down.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/trending-up.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/triangle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/truck.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/tv.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/twitch.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/twitter.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/type.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/umbrella.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/underline.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/unlock.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/upload-cloud.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/upload.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/user-check.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/user-minus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/user-plus.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/user-x.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/user.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/users.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/video-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/video.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/voicemail.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/volume-1.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/volume-2.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/volume-x.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/volume.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/watch.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/wifi-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/wifi.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/wind.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/x-circle.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/x-octagon.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/x-square.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/x.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/youtube.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/zap-off.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/zap.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/zoom-in.svg (100%)
 rename src/{ => apps}/qcam/assets/feathericons/zoom-out.svg (100%)
 rename src/{ => apps}/qcam/assets/shader/RGB.frag (100%)
 rename src/{ => apps}/qcam/assets/shader/YUV_2_planes.frag (100%)
 rename src/{ => apps}/qcam/assets/shader/YUV_3_planes.frag (100%)
 rename src/{ => apps}/qcam/assets/shader/YUV_packed.frag (100%)
 rename src/{ => apps}/qcam/assets/shader/bayer_1x_packed.frag (100%)
 rename src/{ => apps}/qcam/assets/shader/bayer_8.frag (100%)
 rename src/{ => apps}/qcam/assets/shader/bayer_8.vert (100%)
 rename src/{ => apps}/qcam/assets/shader/identity.vert (100%)
 rename src/{ => apps}/qcam/assets/shader/shaders.qrc (100%)
 rename src/{ => apps}/qcam/cam_select_dialog.cpp (100%)
 rename src/{ => apps}/qcam/cam_select_dialog.h (100%)
 rename src/{ => apps}/qcam/format_converter.cpp (100%)
 rename src/{ => apps}/qcam/format_converter.h (100%)
 rename src/{ => apps}/qcam/main.cpp (100%)
 rename src/{ => apps}/qcam/main_window.cpp (100%)
 rename src/{ => apps}/qcam/main_window.h (100%)
 rename src/{ => apps}/qcam/meson.build (100%)
 rename src/{ => apps}/qcam/message_handler.cpp (100%)
 rename src/{ => apps}/qcam/message_handler.h (100%)
 rename src/{ => apps}/qcam/viewfinder.h (100%)
 rename src/{ => apps}/qcam/viewfinder_gl.cpp (100%)
 rename src/{ => apps}/qcam/viewfinder_gl.h (100%)
 rename src/{ => apps}/qcam/viewfinder_qt.cpp (100%)
 rename src/{ => apps}/qcam/viewfinder_qt.h (100%)

Comments

Nicolas Dufresne via libcamera-devel Oct. 20, 2022, 6:36 a.m. UTC | #1
On Thu, Oct 20, 2022 at 02:15:34AM +0300, Laurent Pinchart via libcamera-devel wrote:
> The cam and qcam test application share code, currently through a crude
> hack that references the cam source files directly from the qcam
> meson.build file. To prepare for the introduction of hosting that code
> in a static library, move all applications to src/apps/.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

<snip>

Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
Kieran Bingham Oct. 20, 2022, 9:02 a.m. UTC | #2
Quoting Paul Elder via libcamera-devel (2022-10-20 07:36:54)
> On Thu, Oct 20, 2022 at 02:15:34AM +0300, Laurent Pinchart via libcamera-devel wrote:
> > The cam and qcam test application share code, currently through a crude
> > hack that references the cam source files directly from the qcam
> > meson.build file. To prepare for the introduction of hosting that code
> > in a static library, move all applications to src/apps/.
> > 
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> 
> <snip>
> 
> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>

I'm a little hesitant on this. (mostly because all of my muscle memory
for running cam and qcam will be broken I suspect...)

But I think it's reasonable to group applications that sit on top of
libcamera separately.


Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

Patch
diff mbox series

diff --git a/src/cam/camera_session.cpp b/src/apps/cam/camera_session.cpp
similarity index 100%
rename from src/cam/camera_session.cpp
rename to src/apps/cam/camera_session.cpp
diff --git a/src/cam/camera_session.h b/src/apps/cam/camera_session.h
similarity index 100%
rename from src/cam/camera_session.h
rename to src/apps/cam/camera_session.h
diff --git a/src/cam/capture-script.yaml b/src/apps/cam/capture-script.yaml
similarity index 100%
rename from src/cam/capture-script.yaml
rename to src/apps/cam/capture-script.yaml
diff --git a/src/cam/capture_script.cpp b/src/apps/cam/capture_script.cpp
similarity index 100%
rename from src/cam/capture_script.cpp
rename to src/apps/cam/capture_script.cpp
diff --git a/src/cam/capture_script.h b/src/apps/cam/capture_script.h
similarity index 100%
rename from src/cam/capture_script.h
rename to src/apps/cam/capture_script.h
diff --git a/src/cam/dng_writer.cpp b/src/apps/cam/dng_writer.cpp
similarity index 100%
rename from src/cam/dng_writer.cpp
rename to src/apps/cam/dng_writer.cpp
diff --git a/src/cam/dng_writer.h b/src/apps/cam/dng_writer.h
similarity index 100%
rename from src/cam/dng_writer.h
rename to src/apps/cam/dng_writer.h
diff --git a/src/cam/drm.cpp b/src/apps/cam/drm.cpp
similarity index 100%
rename from src/cam/drm.cpp
rename to src/apps/cam/drm.cpp
diff --git a/src/cam/drm.h b/src/apps/cam/drm.h
similarity index 100%
rename from src/cam/drm.h
rename to src/apps/cam/drm.h
diff --git a/src/cam/event_loop.cpp b/src/apps/cam/event_loop.cpp
similarity index 100%
rename from src/cam/event_loop.cpp
rename to src/apps/cam/event_loop.cpp
diff --git a/src/cam/event_loop.h b/src/apps/cam/event_loop.h
similarity index 100%
rename from src/cam/event_loop.h
rename to src/apps/cam/event_loop.h
diff --git a/src/cam/file_sink.cpp b/src/apps/cam/file_sink.cpp
similarity index 100%
rename from src/cam/file_sink.cpp
rename to src/apps/cam/file_sink.cpp
diff --git a/src/cam/file_sink.h b/src/apps/cam/file_sink.h
similarity index 100%
rename from src/cam/file_sink.h
rename to src/apps/cam/file_sink.h
diff --git a/src/cam/frame_sink.cpp b/src/apps/cam/frame_sink.cpp
similarity index 100%
rename from src/cam/frame_sink.cpp
rename to src/apps/cam/frame_sink.cpp
diff --git a/src/cam/frame_sink.h b/src/apps/cam/frame_sink.h
similarity index 100%
rename from src/cam/frame_sink.h
rename to src/apps/cam/frame_sink.h
diff --git a/src/cam/image.cpp b/src/apps/cam/image.cpp
similarity index 100%
rename from src/cam/image.cpp
rename to src/apps/cam/image.cpp
diff --git a/src/cam/image.h b/src/apps/cam/image.h
similarity index 100%
rename from src/cam/image.h
rename to src/apps/cam/image.h
diff --git a/src/cam/kms_sink.cpp b/src/apps/cam/kms_sink.cpp
similarity index 100%
rename from src/cam/kms_sink.cpp
rename to src/apps/cam/kms_sink.cpp
diff --git a/src/cam/kms_sink.h b/src/apps/cam/kms_sink.h
similarity index 100%
rename from src/cam/kms_sink.h
rename to src/apps/cam/kms_sink.h
diff --git a/src/cam/main.cpp b/src/apps/cam/main.cpp
similarity index 100%
rename from src/cam/main.cpp
rename to src/apps/cam/main.cpp
diff --git a/src/cam/main.h b/src/apps/cam/main.h
similarity index 100%
rename from src/cam/main.h
rename to src/apps/cam/main.h
diff --git a/src/cam/meson.build b/src/apps/cam/meson.build
similarity index 100%
rename from src/cam/meson.build
rename to src/apps/cam/meson.build
diff --git a/src/cam/options.cpp b/src/apps/cam/options.cpp
similarity index 100%
rename from src/cam/options.cpp
rename to src/apps/cam/options.cpp
diff --git a/src/cam/options.h b/src/apps/cam/options.h
similarity index 100%
rename from src/cam/options.h
rename to src/apps/cam/options.h
diff --git a/src/cam/sdl_sink.cpp b/src/apps/cam/sdl_sink.cpp
similarity index 100%
rename from src/cam/sdl_sink.cpp
rename to src/apps/cam/sdl_sink.cpp
diff --git a/src/cam/sdl_sink.h b/src/apps/cam/sdl_sink.h
similarity index 100%
rename from src/cam/sdl_sink.h
rename to src/apps/cam/sdl_sink.h
diff --git a/src/cam/sdl_texture.cpp b/src/apps/cam/sdl_texture.cpp
similarity index 100%
rename from src/cam/sdl_texture.cpp
rename to src/apps/cam/sdl_texture.cpp
diff --git a/src/cam/sdl_texture.h b/src/apps/cam/sdl_texture.h
similarity index 100%
rename from src/cam/sdl_texture.h
rename to src/apps/cam/sdl_texture.h
diff --git a/src/cam/sdl_texture_mjpg.cpp b/src/apps/cam/sdl_texture_mjpg.cpp
similarity index 100%
rename from src/cam/sdl_texture_mjpg.cpp
rename to src/apps/cam/sdl_texture_mjpg.cpp
diff --git a/src/cam/sdl_texture_mjpg.h b/src/apps/cam/sdl_texture_mjpg.h
similarity index 100%
rename from src/cam/sdl_texture_mjpg.h
rename to src/apps/cam/sdl_texture_mjpg.h
diff --git a/src/cam/sdl_texture_yuv.cpp b/src/apps/cam/sdl_texture_yuv.cpp
similarity index 100%
rename from src/cam/sdl_texture_yuv.cpp
rename to src/apps/cam/sdl_texture_yuv.cpp
diff --git a/src/cam/sdl_texture_yuv.h b/src/apps/cam/sdl_texture_yuv.h
similarity index 100%
rename from src/cam/sdl_texture_yuv.h
rename to src/apps/cam/sdl_texture_yuv.h
diff --git a/src/cam/stream_options.cpp b/src/apps/cam/stream_options.cpp
similarity index 100%
rename from src/cam/stream_options.cpp
rename to src/apps/cam/stream_options.cpp
diff --git a/src/cam/stream_options.h b/src/apps/cam/stream_options.h
similarity index 100%
rename from src/cam/stream_options.h
rename to src/apps/cam/stream_options.h
diff --git a/src/lc-compliance/capture_test.cpp b/src/apps/lc-compliance/capture_test.cpp
similarity index 100%
rename from src/lc-compliance/capture_test.cpp
rename to src/apps/lc-compliance/capture_test.cpp
diff --git a/src/lc-compliance/environment.cpp b/src/apps/lc-compliance/environment.cpp
similarity index 100%
rename from src/lc-compliance/environment.cpp
rename to src/apps/lc-compliance/environment.cpp
diff --git a/src/lc-compliance/environment.h b/src/apps/lc-compliance/environment.h
similarity index 100%
rename from src/lc-compliance/environment.h
rename to src/apps/lc-compliance/environment.h
diff --git a/src/lc-compliance/main.cpp b/src/apps/lc-compliance/main.cpp
similarity index 100%
rename from src/lc-compliance/main.cpp
rename to src/apps/lc-compliance/main.cpp
diff --git a/src/lc-compliance/meson.build b/src/apps/lc-compliance/meson.build
similarity index 100%
rename from src/lc-compliance/meson.build
rename to src/apps/lc-compliance/meson.build
diff --git a/src/lc-compliance/simple_capture.cpp b/src/apps/lc-compliance/simple_capture.cpp
similarity index 100%
rename from src/lc-compliance/simple_capture.cpp
rename to src/apps/lc-compliance/simple_capture.cpp
diff --git a/src/lc-compliance/simple_capture.h b/src/apps/lc-compliance/simple_capture.h
similarity index 100%
rename from src/lc-compliance/simple_capture.h
rename to src/apps/lc-compliance/simple_capture.h
diff --git a/src/apps/meson.build b/src/apps/meson.build
new file mode 100644
index 000000000000..9e4388bd7881
--- /dev/null
+++ b/src/apps/meson.build
@@ -0,0 +1,6 @@ 
+# SPDX-License-Identifier: CC0-1.0
+
+subdir('lc-compliance')
+
+subdir('cam')
+subdir('qcam')
diff --git a/src/qcam/assets/feathericons/activity.svg b/src/apps/qcam/assets/feathericons/activity.svg
similarity index 100%
rename from src/qcam/assets/feathericons/activity.svg
rename to src/apps/qcam/assets/feathericons/activity.svg
diff --git a/src/qcam/assets/feathericons/airplay.svg b/src/apps/qcam/assets/feathericons/airplay.svg
similarity index 100%
rename from src/qcam/assets/feathericons/airplay.svg
rename to src/apps/qcam/assets/feathericons/airplay.svg
diff --git a/src/qcam/assets/feathericons/alert-circle.svg b/src/apps/qcam/assets/feathericons/alert-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/alert-circle.svg
rename to src/apps/qcam/assets/feathericons/alert-circle.svg
diff --git a/src/qcam/assets/feathericons/alert-octagon.svg b/src/apps/qcam/assets/feathericons/alert-octagon.svg
similarity index 100%
rename from src/qcam/assets/feathericons/alert-octagon.svg
rename to src/apps/qcam/assets/feathericons/alert-octagon.svg
diff --git a/src/qcam/assets/feathericons/alert-triangle.svg b/src/apps/qcam/assets/feathericons/alert-triangle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/alert-triangle.svg
rename to src/apps/qcam/assets/feathericons/alert-triangle.svg
diff --git a/src/qcam/assets/feathericons/align-center.svg b/src/apps/qcam/assets/feathericons/align-center.svg
similarity index 100%
rename from src/qcam/assets/feathericons/align-center.svg
rename to src/apps/qcam/assets/feathericons/align-center.svg
diff --git a/src/qcam/assets/feathericons/align-justify.svg b/src/apps/qcam/assets/feathericons/align-justify.svg
similarity index 100%
rename from src/qcam/assets/feathericons/align-justify.svg
rename to src/apps/qcam/assets/feathericons/align-justify.svg
diff --git a/src/qcam/assets/feathericons/align-left.svg b/src/apps/qcam/assets/feathericons/align-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/align-left.svg
rename to src/apps/qcam/assets/feathericons/align-left.svg
diff --git a/src/qcam/assets/feathericons/align-right.svg b/src/apps/qcam/assets/feathericons/align-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/align-right.svg
rename to src/apps/qcam/assets/feathericons/align-right.svg
diff --git a/src/qcam/assets/feathericons/anchor.svg b/src/apps/qcam/assets/feathericons/anchor.svg
similarity index 100%
rename from src/qcam/assets/feathericons/anchor.svg
rename to src/apps/qcam/assets/feathericons/anchor.svg
diff --git a/src/qcam/assets/feathericons/aperture.svg b/src/apps/qcam/assets/feathericons/aperture.svg
similarity index 100%
rename from src/qcam/assets/feathericons/aperture.svg
rename to src/apps/qcam/assets/feathericons/aperture.svg
diff --git a/src/qcam/assets/feathericons/archive.svg b/src/apps/qcam/assets/feathericons/archive.svg
similarity index 100%
rename from src/qcam/assets/feathericons/archive.svg
rename to src/apps/qcam/assets/feathericons/archive.svg
diff --git a/src/qcam/assets/feathericons/arrow-down-circle.svg b/src/apps/qcam/assets/feathericons/arrow-down-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-down-circle.svg
rename to src/apps/qcam/assets/feathericons/arrow-down-circle.svg
diff --git a/src/qcam/assets/feathericons/arrow-down-left.svg b/src/apps/qcam/assets/feathericons/arrow-down-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-down-left.svg
rename to src/apps/qcam/assets/feathericons/arrow-down-left.svg
diff --git a/src/qcam/assets/feathericons/arrow-down-right.svg b/src/apps/qcam/assets/feathericons/arrow-down-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-down-right.svg
rename to src/apps/qcam/assets/feathericons/arrow-down-right.svg
diff --git a/src/qcam/assets/feathericons/arrow-down.svg b/src/apps/qcam/assets/feathericons/arrow-down.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-down.svg
rename to src/apps/qcam/assets/feathericons/arrow-down.svg
diff --git a/src/qcam/assets/feathericons/arrow-left-circle.svg b/src/apps/qcam/assets/feathericons/arrow-left-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-left-circle.svg
rename to src/apps/qcam/assets/feathericons/arrow-left-circle.svg
diff --git a/src/qcam/assets/feathericons/arrow-left.svg b/src/apps/qcam/assets/feathericons/arrow-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-left.svg
rename to src/apps/qcam/assets/feathericons/arrow-left.svg
diff --git a/src/qcam/assets/feathericons/arrow-right-circle.svg b/src/apps/qcam/assets/feathericons/arrow-right-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-right-circle.svg
rename to src/apps/qcam/assets/feathericons/arrow-right-circle.svg
diff --git a/src/qcam/assets/feathericons/arrow-right.svg b/src/apps/qcam/assets/feathericons/arrow-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-right.svg
rename to src/apps/qcam/assets/feathericons/arrow-right.svg
diff --git a/src/qcam/assets/feathericons/arrow-up-circle.svg b/src/apps/qcam/assets/feathericons/arrow-up-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-up-circle.svg
rename to src/apps/qcam/assets/feathericons/arrow-up-circle.svg
diff --git a/src/qcam/assets/feathericons/arrow-up-left.svg b/src/apps/qcam/assets/feathericons/arrow-up-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-up-left.svg
rename to src/apps/qcam/assets/feathericons/arrow-up-left.svg
diff --git a/src/qcam/assets/feathericons/arrow-up-right.svg b/src/apps/qcam/assets/feathericons/arrow-up-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-up-right.svg
rename to src/apps/qcam/assets/feathericons/arrow-up-right.svg
diff --git a/src/qcam/assets/feathericons/arrow-up.svg b/src/apps/qcam/assets/feathericons/arrow-up.svg
similarity index 100%
rename from src/qcam/assets/feathericons/arrow-up.svg
rename to src/apps/qcam/assets/feathericons/arrow-up.svg
diff --git a/src/qcam/assets/feathericons/at-sign.svg b/src/apps/qcam/assets/feathericons/at-sign.svg
similarity index 100%
rename from src/qcam/assets/feathericons/at-sign.svg
rename to src/apps/qcam/assets/feathericons/at-sign.svg
diff --git a/src/qcam/assets/feathericons/award.svg b/src/apps/qcam/assets/feathericons/award.svg
similarity index 100%
rename from src/qcam/assets/feathericons/award.svg
rename to src/apps/qcam/assets/feathericons/award.svg
diff --git a/src/qcam/assets/feathericons/bar-chart-2.svg b/src/apps/qcam/assets/feathericons/bar-chart-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/bar-chart-2.svg
rename to src/apps/qcam/assets/feathericons/bar-chart-2.svg
diff --git a/src/qcam/assets/feathericons/bar-chart.svg b/src/apps/qcam/assets/feathericons/bar-chart.svg
similarity index 100%
rename from src/qcam/assets/feathericons/bar-chart.svg
rename to src/apps/qcam/assets/feathericons/bar-chart.svg
diff --git a/src/qcam/assets/feathericons/battery-charging.svg b/src/apps/qcam/assets/feathericons/battery-charging.svg
similarity index 100%
rename from src/qcam/assets/feathericons/battery-charging.svg
rename to src/apps/qcam/assets/feathericons/battery-charging.svg
diff --git a/src/qcam/assets/feathericons/battery.svg b/src/apps/qcam/assets/feathericons/battery.svg
similarity index 100%
rename from src/qcam/assets/feathericons/battery.svg
rename to src/apps/qcam/assets/feathericons/battery.svg
diff --git a/src/qcam/assets/feathericons/bell-off.svg b/src/apps/qcam/assets/feathericons/bell-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/bell-off.svg
rename to src/apps/qcam/assets/feathericons/bell-off.svg
diff --git a/src/qcam/assets/feathericons/bell.svg b/src/apps/qcam/assets/feathericons/bell.svg
similarity index 100%
rename from src/qcam/assets/feathericons/bell.svg
rename to src/apps/qcam/assets/feathericons/bell.svg
diff --git a/src/qcam/assets/feathericons/bluetooth.svg b/src/apps/qcam/assets/feathericons/bluetooth.svg
similarity index 100%
rename from src/qcam/assets/feathericons/bluetooth.svg
rename to src/apps/qcam/assets/feathericons/bluetooth.svg
diff --git a/src/qcam/assets/feathericons/bold.svg b/src/apps/qcam/assets/feathericons/bold.svg
similarity index 100%
rename from src/qcam/assets/feathericons/bold.svg
rename to src/apps/qcam/assets/feathericons/bold.svg
diff --git a/src/qcam/assets/feathericons/book-open.svg b/src/apps/qcam/assets/feathericons/book-open.svg
similarity index 100%
rename from src/qcam/assets/feathericons/book-open.svg
rename to src/apps/qcam/assets/feathericons/book-open.svg
diff --git a/src/qcam/assets/feathericons/book.svg b/src/apps/qcam/assets/feathericons/book.svg
similarity index 100%
rename from src/qcam/assets/feathericons/book.svg
rename to src/apps/qcam/assets/feathericons/book.svg
diff --git a/src/qcam/assets/feathericons/bookmark.svg b/src/apps/qcam/assets/feathericons/bookmark.svg
similarity index 100%
rename from src/qcam/assets/feathericons/bookmark.svg
rename to src/apps/qcam/assets/feathericons/bookmark.svg
diff --git a/src/qcam/assets/feathericons/box.svg b/src/apps/qcam/assets/feathericons/box.svg
similarity index 100%
rename from src/qcam/assets/feathericons/box.svg
rename to src/apps/qcam/assets/feathericons/box.svg
diff --git a/src/qcam/assets/feathericons/briefcase.svg b/src/apps/qcam/assets/feathericons/briefcase.svg
similarity index 100%
rename from src/qcam/assets/feathericons/briefcase.svg
rename to src/apps/qcam/assets/feathericons/briefcase.svg
diff --git a/src/qcam/assets/feathericons/calendar.svg b/src/apps/qcam/assets/feathericons/calendar.svg
similarity index 100%
rename from src/qcam/assets/feathericons/calendar.svg
rename to src/apps/qcam/assets/feathericons/calendar.svg
diff --git a/src/qcam/assets/feathericons/camera-off.svg b/src/apps/qcam/assets/feathericons/camera-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/camera-off.svg
rename to src/apps/qcam/assets/feathericons/camera-off.svg
diff --git a/src/qcam/assets/feathericons/camera.svg b/src/apps/qcam/assets/feathericons/camera.svg
similarity index 100%
rename from src/qcam/assets/feathericons/camera.svg
rename to src/apps/qcam/assets/feathericons/camera.svg
diff --git a/src/qcam/assets/feathericons/cast.svg b/src/apps/qcam/assets/feathericons/cast.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cast.svg
rename to src/apps/qcam/assets/feathericons/cast.svg
diff --git a/src/qcam/assets/feathericons/check-circle.svg b/src/apps/qcam/assets/feathericons/check-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/check-circle.svg
rename to src/apps/qcam/assets/feathericons/check-circle.svg
diff --git a/src/qcam/assets/feathericons/check-square.svg b/src/apps/qcam/assets/feathericons/check-square.svg
similarity index 100%
rename from src/qcam/assets/feathericons/check-square.svg
rename to src/apps/qcam/assets/feathericons/check-square.svg
diff --git a/src/qcam/assets/feathericons/check.svg b/src/apps/qcam/assets/feathericons/check.svg
similarity index 100%
rename from src/qcam/assets/feathericons/check.svg
rename to src/apps/qcam/assets/feathericons/check.svg
diff --git a/src/qcam/assets/feathericons/chevron-down.svg b/src/apps/qcam/assets/feathericons/chevron-down.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevron-down.svg
rename to src/apps/qcam/assets/feathericons/chevron-down.svg
diff --git a/src/qcam/assets/feathericons/chevron-left.svg b/src/apps/qcam/assets/feathericons/chevron-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevron-left.svg
rename to src/apps/qcam/assets/feathericons/chevron-left.svg
diff --git a/src/qcam/assets/feathericons/chevron-right.svg b/src/apps/qcam/assets/feathericons/chevron-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevron-right.svg
rename to src/apps/qcam/assets/feathericons/chevron-right.svg
diff --git a/src/qcam/assets/feathericons/chevron-up.svg b/src/apps/qcam/assets/feathericons/chevron-up.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevron-up.svg
rename to src/apps/qcam/assets/feathericons/chevron-up.svg
diff --git a/src/qcam/assets/feathericons/chevrons-down.svg b/src/apps/qcam/assets/feathericons/chevrons-down.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevrons-down.svg
rename to src/apps/qcam/assets/feathericons/chevrons-down.svg
diff --git a/src/qcam/assets/feathericons/chevrons-left.svg b/src/apps/qcam/assets/feathericons/chevrons-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevrons-left.svg
rename to src/apps/qcam/assets/feathericons/chevrons-left.svg
diff --git a/src/qcam/assets/feathericons/chevrons-right.svg b/src/apps/qcam/assets/feathericons/chevrons-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevrons-right.svg
rename to src/apps/qcam/assets/feathericons/chevrons-right.svg
diff --git a/src/qcam/assets/feathericons/chevrons-up.svg b/src/apps/qcam/assets/feathericons/chevrons-up.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chevrons-up.svg
rename to src/apps/qcam/assets/feathericons/chevrons-up.svg
diff --git a/src/qcam/assets/feathericons/chrome.svg b/src/apps/qcam/assets/feathericons/chrome.svg
similarity index 100%
rename from src/qcam/assets/feathericons/chrome.svg
rename to src/apps/qcam/assets/feathericons/chrome.svg
diff --git a/src/qcam/assets/feathericons/circle.svg b/src/apps/qcam/assets/feathericons/circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/circle.svg
rename to src/apps/qcam/assets/feathericons/circle.svg
diff --git a/src/qcam/assets/feathericons/clipboard.svg b/src/apps/qcam/assets/feathericons/clipboard.svg
similarity index 100%
rename from src/qcam/assets/feathericons/clipboard.svg
rename to src/apps/qcam/assets/feathericons/clipboard.svg
diff --git a/src/qcam/assets/feathericons/clock.svg b/src/apps/qcam/assets/feathericons/clock.svg
similarity index 100%
rename from src/qcam/assets/feathericons/clock.svg
rename to src/apps/qcam/assets/feathericons/clock.svg
diff --git a/src/qcam/assets/feathericons/cloud-drizzle.svg b/src/apps/qcam/assets/feathericons/cloud-drizzle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cloud-drizzle.svg
rename to src/apps/qcam/assets/feathericons/cloud-drizzle.svg
diff --git a/src/qcam/assets/feathericons/cloud-lightning.svg b/src/apps/qcam/assets/feathericons/cloud-lightning.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cloud-lightning.svg
rename to src/apps/qcam/assets/feathericons/cloud-lightning.svg
diff --git a/src/qcam/assets/feathericons/cloud-off.svg b/src/apps/qcam/assets/feathericons/cloud-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cloud-off.svg
rename to src/apps/qcam/assets/feathericons/cloud-off.svg
diff --git a/src/qcam/assets/feathericons/cloud-rain.svg b/src/apps/qcam/assets/feathericons/cloud-rain.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cloud-rain.svg
rename to src/apps/qcam/assets/feathericons/cloud-rain.svg
diff --git a/src/qcam/assets/feathericons/cloud-snow.svg b/src/apps/qcam/assets/feathericons/cloud-snow.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cloud-snow.svg
rename to src/apps/qcam/assets/feathericons/cloud-snow.svg
diff --git a/src/qcam/assets/feathericons/cloud.svg b/src/apps/qcam/assets/feathericons/cloud.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cloud.svg
rename to src/apps/qcam/assets/feathericons/cloud.svg
diff --git a/src/qcam/assets/feathericons/code.svg b/src/apps/qcam/assets/feathericons/code.svg
similarity index 100%
rename from src/qcam/assets/feathericons/code.svg
rename to src/apps/qcam/assets/feathericons/code.svg
diff --git a/src/qcam/assets/feathericons/codepen.svg b/src/apps/qcam/assets/feathericons/codepen.svg
similarity index 100%
rename from src/qcam/assets/feathericons/codepen.svg
rename to src/apps/qcam/assets/feathericons/codepen.svg
diff --git a/src/qcam/assets/feathericons/codesandbox.svg b/src/apps/qcam/assets/feathericons/codesandbox.svg
similarity index 100%
rename from src/qcam/assets/feathericons/codesandbox.svg
rename to src/apps/qcam/assets/feathericons/codesandbox.svg
diff --git a/src/qcam/assets/feathericons/coffee.svg b/src/apps/qcam/assets/feathericons/coffee.svg
similarity index 100%
rename from src/qcam/assets/feathericons/coffee.svg
rename to src/apps/qcam/assets/feathericons/coffee.svg
diff --git a/src/qcam/assets/feathericons/columns.svg b/src/apps/qcam/assets/feathericons/columns.svg
similarity index 100%
rename from src/qcam/assets/feathericons/columns.svg
rename to src/apps/qcam/assets/feathericons/columns.svg
diff --git a/src/qcam/assets/feathericons/command.svg b/src/apps/qcam/assets/feathericons/command.svg
similarity index 100%
rename from src/qcam/assets/feathericons/command.svg
rename to src/apps/qcam/assets/feathericons/command.svg
diff --git a/src/qcam/assets/feathericons/compass.svg b/src/apps/qcam/assets/feathericons/compass.svg
similarity index 100%
rename from src/qcam/assets/feathericons/compass.svg
rename to src/apps/qcam/assets/feathericons/compass.svg
diff --git a/src/qcam/assets/feathericons/copy.svg b/src/apps/qcam/assets/feathericons/copy.svg
similarity index 100%
rename from src/qcam/assets/feathericons/copy.svg
rename to src/apps/qcam/assets/feathericons/copy.svg
diff --git a/src/qcam/assets/feathericons/corner-down-left.svg b/src/apps/qcam/assets/feathericons/corner-down-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-down-left.svg
rename to src/apps/qcam/assets/feathericons/corner-down-left.svg
diff --git a/src/qcam/assets/feathericons/corner-down-right.svg b/src/apps/qcam/assets/feathericons/corner-down-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-down-right.svg
rename to src/apps/qcam/assets/feathericons/corner-down-right.svg
diff --git a/src/qcam/assets/feathericons/corner-left-down.svg b/src/apps/qcam/assets/feathericons/corner-left-down.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-left-down.svg
rename to src/apps/qcam/assets/feathericons/corner-left-down.svg
diff --git a/src/qcam/assets/feathericons/corner-left-up.svg b/src/apps/qcam/assets/feathericons/corner-left-up.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-left-up.svg
rename to src/apps/qcam/assets/feathericons/corner-left-up.svg
diff --git a/src/qcam/assets/feathericons/corner-right-down.svg b/src/apps/qcam/assets/feathericons/corner-right-down.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-right-down.svg
rename to src/apps/qcam/assets/feathericons/corner-right-down.svg
diff --git a/src/qcam/assets/feathericons/corner-right-up.svg b/src/apps/qcam/assets/feathericons/corner-right-up.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-right-up.svg
rename to src/apps/qcam/assets/feathericons/corner-right-up.svg
diff --git a/src/qcam/assets/feathericons/corner-up-left.svg b/src/apps/qcam/assets/feathericons/corner-up-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-up-left.svg
rename to src/apps/qcam/assets/feathericons/corner-up-left.svg
diff --git a/src/qcam/assets/feathericons/corner-up-right.svg b/src/apps/qcam/assets/feathericons/corner-up-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/corner-up-right.svg
rename to src/apps/qcam/assets/feathericons/corner-up-right.svg
diff --git a/src/qcam/assets/feathericons/cpu.svg b/src/apps/qcam/assets/feathericons/cpu.svg
similarity index 100%
rename from src/qcam/assets/feathericons/cpu.svg
rename to src/apps/qcam/assets/feathericons/cpu.svg
diff --git a/src/qcam/assets/feathericons/credit-card.svg b/src/apps/qcam/assets/feathericons/credit-card.svg
similarity index 100%
rename from src/qcam/assets/feathericons/credit-card.svg
rename to src/apps/qcam/assets/feathericons/credit-card.svg
diff --git a/src/qcam/assets/feathericons/crop.svg b/src/apps/qcam/assets/feathericons/crop.svg
similarity index 100%
rename from src/qcam/assets/feathericons/crop.svg
rename to src/apps/qcam/assets/feathericons/crop.svg
diff --git a/src/qcam/assets/feathericons/crosshair.svg b/src/apps/qcam/assets/feathericons/crosshair.svg
similarity index 100%
rename from src/qcam/assets/feathericons/crosshair.svg
rename to src/apps/qcam/assets/feathericons/crosshair.svg
diff --git a/src/qcam/assets/feathericons/database.svg b/src/apps/qcam/assets/feathericons/database.svg
similarity index 100%
rename from src/qcam/assets/feathericons/database.svg
rename to src/apps/qcam/assets/feathericons/database.svg
diff --git a/src/qcam/assets/feathericons/delete.svg b/src/apps/qcam/assets/feathericons/delete.svg
similarity index 100%
rename from src/qcam/assets/feathericons/delete.svg
rename to src/apps/qcam/assets/feathericons/delete.svg
diff --git a/src/qcam/assets/feathericons/disc.svg b/src/apps/qcam/assets/feathericons/disc.svg
similarity index 100%
rename from src/qcam/assets/feathericons/disc.svg
rename to src/apps/qcam/assets/feathericons/disc.svg
diff --git a/src/qcam/assets/feathericons/dollar-sign.svg b/src/apps/qcam/assets/feathericons/dollar-sign.svg
similarity index 100%
rename from src/qcam/assets/feathericons/dollar-sign.svg
rename to src/apps/qcam/assets/feathericons/dollar-sign.svg
diff --git a/src/qcam/assets/feathericons/download-cloud.svg b/src/apps/qcam/assets/feathericons/download-cloud.svg
similarity index 100%
rename from src/qcam/assets/feathericons/download-cloud.svg
rename to src/apps/qcam/assets/feathericons/download-cloud.svg
diff --git a/src/qcam/assets/feathericons/download.svg b/src/apps/qcam/assets/feathericons/download.svg
similarity index 100%
rename from src/qcam/assets/feathericons/download.svg
rename to src/apps/qcam/assets/feathericons/download.svg
diff --git a/src/qcam/assets/feathericons/droplet.svg b/src/apps/qcam/assets/feathericons/droplet.svg
similarity index 100%
rename from src/qcam/assets/feathericons/droplet.svg
rename to src/apps/qcam/assets/feathericons/droplet.svg
diff --git a/src/qcam/assets/feathericons/edit-2.svg b/src/apps/qcam/assets/feathericons/edit-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/edit-2.svg
rename to src/apps/qcam/assets/feathericons/edit-2.svg
diff --git a/src/qcam/assets/feathericons/edit-3.svg b/src/apps/qcam/assets/feathericons/edit-3.svg
similarity index 100%
rename from src/qcam/assets/feathericons/edit-3.svg
rename to src/apps/qcam/assets/feathericons/edit-3.svg
diff --git a/src/qcam/assets/feathericons/edit.svg b/src/apps/qcam/assets/feathericons/edit.svg
similarity index 100%
rename from src/qcam/assets/feathericons/edit.svg
rename to src/apps/qcam/assets/feathericons/edit.svg
diff --git a/src/qcam/assets/feathericons/external-link.svg b/src/apps/qcam/assets/feathericons/external-link.svg
similarity index 100%
rename from src/qcam/assets/feathericons/external-link.svg
rename to src/apps/qcam/assets/feathericons/external-link.svg
diff --git a/src/qcam/assets/feathericons/eye-off.svg b/src/apps/qcam/assets/feathericons/eye-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/eye-off.svg
rename to src/apps/qcam/assets/feathericons/eye-off.svg
diff --git a/src/qcam/assets/feathericons/eye.svg b/src/apps/qcam/assets/feathericons/eye.svg
similarity index 100%
rename from src/qcam/assets/feathericons/eye.svg
rename to src/apps/qcam/assets/feathericons/eye.svg
diff --git a/src/qcam/assets/feathericons/facebook.svg b/src/apps/qcam/assets/feathericons/facebook.svg
similarity index 100%
rename from src/qcam/assets/feathericons/facebook.svg
rename to src/apps/qcam/assets/feathericons/facebook.svg
diff --git a/src/qcam/assets/feathericons/fast-forward.svg b/src/apps/qcam/assets/feathericons/fast-forward.svg
similarity index 100%
rename from src/qcam/assets/feathericons/fast-forward.svg
rename to src/apps/qcam/assets/feathericons/fast-forward.svg
diff --git a/src/qcam/assets/feathericons/feather.svg b/src/apps/qcam/assets/feathericons/feather.svg
similarity index 100%
rename from src/qcam/assets/feathericons/feather.svg
rename to src/apps/qcam/assets/feathericons/feather.svg
diff --git a/src/qcam/assets/feathericons/feathericons.qrc b/src/apps/qcam/assets/feathericons/feathericons.qrc
similarity index 100%
rename from src/qcam/assets/feathericons/feathericons.qrc
rename to src/apps/qcam/assets/feathericons/feathericons.qrc
diff --git a/src/qcam/assets/feathericons/figma.svg b/src/apps/qcam/assets/feathericons/figma.svg
similarity index 100%
rename from src/qcam/assets/feathericons/figma.svg
rename to src/apps/qcam/assets/feathericons/figma.svg
diff --git a/src/qcam/assets/feathericons/file-minus.svg b/src/apps/qcam/assets/feathericons/file-minus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/file-minus.svg
rename to src/apps/qcam/assets/feathericons/file-minus.svg
diff --git a/src/qcam/assets/feathericons/file-plus.svg b/src/apps/qcam/assets/feathericons/file-plus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/file-plus.svg
rename to src/apps/qcam/assets/feathericons/file-plus.svg
diff --git a/src/qcam/assets/feathericons/file-text.svg b/src/apps/qcam/assets/feathericons/file-text.svg
similarity index 100%
rename from src/qcam/assets/feathericons/file-text.svg
rename to src/apps/qcam/assets/feathericons/file-text.svg
diff --git a/src/qcam/assets/feathericons/file.svg b/src/apps/qcam/assets/feathericons/file.svg
similarity index 100%
rename from src/qcam/assets/feathericons/file.svg
rename to src/apps/qcam/assets/feathericons/file.svg
diff --git a/src/qcam/assets/feathericons/film.svg b/src/apps/qcam/assets/feathericons/film.svg
similarity index 100%
rename from src/qcam/assets/feathericons/film.svg
rename to src/apps/qcam/assets/feathericons/film.svg
diff --git a/src/qcam/assets/feathericons/filter.svg b/src/apps/qcam/assets/feathericons/filter.svg
similarity index 100%
rename from src/qcam/assets/feathericons/filter.svg
rename to src/apps/qcam/assets/feathericons/filter.svg
diff --git a/src/qcam/assets/feathericons/flag.svg b/src/apps/qcam/assets/feathericons/flag.svg
similarity index 100%
rename from src/qcam/assets/feathericons/flag.svg
rename to src/apps/qcam/assets/feathericons/flag.svg
diff --git a/src/qcam/assets/feathericons/folder-minus.svg b/src/apps/qcam/assets/feathericons/folder-minus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/folder-minus.svg
rename to src/apps/qcam/assets/feathericons/folder-minus.svg
diff --git a/src/qcam/assets/feathericons/folder-plus.svg b/src/apps/qcam/assets/feathericons/folder-plus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/folder-plus.svg
rename to src/apps/qcam/assets/feathericons/folder-plus.svg
diff --git a/src/qcam/assets/feathericons/folder.svg b/src/apps/qcam/assets/feathericons/folder.svg
similarity index 100%
rename from src/qcam/assets/feathericons/folder.svg
rename to src/apps/qcam/assets/feathericons/folder.svg
diff --git a/src/qcam/assets/feathericons/framer.svg b/src/apps/qcam/assets/feathericons/framer.svg
similarity index 100%
rename from src/qcam/assets/feathericons/framer.svg
rename to src/apps/qcam/assets/feathericons/framer.svg
diff --git a/src/qcam/assets/feathericons/frown.svg b/src/apps/qcam/assets/feathericons/frown.svg
similarity index 100%
rename from src/qcam/assets/feathericons/frown.svg
rename to src/apps/qcam/assets/feathericons/frown.svg
diff --git a/src/qcam/assets/feathericons/gift.svg b/src/apps/qcam/assets/feathericons/gift.svg
similarity index 100%
rename from src/qcam/assets/feathericons/gift.svg
rename to src/apps/qcam/assets/feathericons/gift.svg
diff --git a/src/qcam/assets/feathericons/git-branch.svg b/src/apps/qcam/assets/feathericons/git-branch.svg
similarity index 100%
rename from src/qcam/assets/feathericons/git-branch.svg
rename to src/apps/qcam/assets/feathericons/git-branch.svg
diff --git a/src/qcam/assets/feathericons/git-commit.svg b/src/apps/qcam/assets/feathericons/git-commit.svg
similarity index 100%
rename from src/qcam/assets/feathericons/git-commit.svg
rename to src/apps/qcam/assets/feathericons/git-commit.svg
diff --git a/src/qcam/assets/feathericons/git-merge.svg b/src/apps/qcam/assets/feathericons/git-merge.svg
similarity index 100%
rename from src/qcam/assets/feathericons/git-merge.svg
rename to src/apps/qcam/assets/feathericons/git-merge.svg
diff --git a/src/qcam/assets/feathericons/git-pull-request.svg b/src/apps/qcam/assets/feathericons/git-pull-request.svg
similarity index 100%
rename from src/qcam/assets/feathericons/git-pull-request.svg
rename to src/apps/qcam/assets/feathericons/git-pull-request.svg
diff --git a/src/qcam/assets/feathericons/github.svg b/src/apps/qcam/assets/feathericons/github.svg
similarity index 100%
rename from src/qcam/assets/feathericons/github.svg
rename to src/apps/qcam/assets/feathericons/github.svg
diff --git a/src/qcam/assets/feathericons/gitlab.svg b/src/apps/qcam/assets/feathericons/gitlab.svg
similarity index 100%
rename from src/qcam/assets/feathericons/gitlab.svg
rename to src/apps/qcam/assets/feathericons/gitlab.svg
diff --git a/src/qcam/assets/feathericons/globe.svg b/src/apps/qcam/assets/feathericons/globe.svg
similarity index 100%
rename from src/qcam/assets/feathericons/globe.svg
rename to src/apps/qcam/assets/feathericons/globe.svg
diff --git a/src/qcam/assets/feathericons/grid.svg b/src/apps/qcam/assets/feathericons/grid.svg
similarity index 100%
rename from src/qcam/assets/feathericons/grid.svg
rename to src/apps/qcam/assets/feathericons/grid.svg
diff --git a/src/qcam/assets/feathericons/hard-drive.svg b/src/apps/qcam/assets/feathericons/hard-drive.svg
similarity index 100%
rename from src/qcam/assets/feathericons/hard-drive.svg
rename to src/apps/qcam/assets/feathericons/hard-drive.svg
diff --git a/src/qcam/assets/feathericons/hash.svg b/src/apps/qcam/assets/feathericons/hash.svg
similarity index 100%
rename from src/qcam/assets/feathericons/hash.svg
rename to src/apps/qcam/assets/feathericons/hash.svg
diff --git a/src/qcam/assets/feathericons/headphones.svg b/src/apps/qcam/assets/feathericons/headphones.svg
similarity index 100%
rename from src/qcam/assets/feathericons/headphones.svg
rename to src/apps/qcam/assets/feathericons/headphones.svg
diff --git a/src/qcam/assets/feathericons/heart.svg b/src/apps/qcam/assets/feathericons/heart.svg
similarity index 100%
rename from src/qcam/assets/feathericons/heart.svg
rename to src/apps/qcam/assets/feathericons/heart.svg
diff --git a/src/qcam/assets/feathericons/help-circle.svg b/src/apps/qcam/assets/feathericons/help-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/help-circle.svg
rename to src/apps/qcam/assets/feathericons/help-circle.svg
diff --git a/src/qcam/assets/feathericons/hexagon.svg b/src/apps/qcam/assets/feathericons/hexagon.svg
similarity index 100%
rename from src/qcam/assets/feathericons/hexagon.svg
rename to src/apps/qcam/assets/feathericons/hexagon.svg
diff --git a/src/qcam/assets/feathericons/home.svg b/src/apps/qcam/assets/feathericons/home.svg
similarity index 100%
rename from src/qcam/assets/feathericons/home.svg
rename to src/apps/qcam/assets/feathericons/home.svg
diff --git a/src/qcam/assets/feathericons/image.svg b/src/apps/qcam/assets/feathericons/image.svg
similarity index 100%
rename from src/qcam/assets/feathericons/image.svg
rename to src/apps/qcam/assets/feathericons/image.svg
diff --git a/src/qcam/assets/feathericons/inbox.svg b/src/apps/qcam/assets/feathericons/inbox.svg
similarity index 100%
rename from src/qcam/assets/feathericons/inbox.svg
rename to src/apps/qcam/assets/feathericons/inbox.svg
diff --git a/src/qcam/assets/feathericons/info.svg b/src/apps/qcam/assets/feathericons/info.svg
similarity index 100%
rename from src/qcam/assets/feathericons/info.svg
rename to src/apps/qcam/assets/feathericons/info.svg
diff --git a/src/qcam/assets/feathericons/instagram.svg b/src/apps/qcam/assets/feathericons/instagram.svg
similarity index 100%
rename from src/qcam/assets/feathericons/instagram.svg
rename to src/apps/qcam/assets/feathericons/instagram.svg
diff --git a/src/qcam/assets/feathericons/italic.svg b/src/apps/qcam/assets/feathericons/italic.svg
similarity index 100%
rename from src/qcam/assets/feathericons/italic.svg
rename to src/apps/qcam/assets/feathericons/italic.svg
diff --git a/src/qcam/assets/feathericons/key.svg b/src/apps/qcam/assets/feathericons/key.svg
similarity index 100%
rename from src/qcam/assets/feathericons/key.svg
rename to src/apps/qcam/assets/feathericons/key.svg
diff --git a/src/qcam/assets/feathericons/layers.svg b/src/apps/qcam/assets/feathericons/layers.svg
similarity index 100%
rename from src/qcam/assets/feathericons/layers.svg
rename to src/apps/qcam/assets/feathericons/layers.svg
diff --git a/src/qcam/assets/feathericons/layout.svg b/src/apps/qcam/assets/feathericons/layout.svg
similarity index 100%
rename from src/qcam/assets/feathericons/layout.svg
rename to src/apps/qcam/assets/feathericons/layout.svg
diff --git a/src/qcam/assets/feathericons/life-buoy.svg b/src/apps/qcam/assets/feathericons/life-buoy.svg
similarity index 100%
rename from src/qcam/assets/feathericons/life-buoy.svg
rename to src/apps/qcam/assets/feathericons/life-buoy.svg
diff --git a/src/qcam/assets/feathericons/link-2.svg b/src/apps/qcam/assets/feathericons/link-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/link-2.svg
rename to src/apps/qcam/assets/feathericons/link-2.svg
diff --git a/src/qcam/assets/feathericons/link.svg b/src/apps/qcam/assets/feathericons/link.svg
similarity index 100%
rename from src/qcam/assets/feathericons/link.svg
rename to src/apps/qcam/assets/feathericons/link.svg
diff --git a/src/qcam/assets/feathericons/linkedin.svg b/src/apps/qcam/assets/feathericons/linkedin.svg
similarity index 100%
rename from src/qcam/assets/feathericons/linkedin.svg
rename to src/apps/qcam/assets/feathericons/linkedin.svg
diff --git a/src/qcam/assets/feathericons/list.svg b/src/apps/qcam/assets/feathericons/list.svg
similarity index 100%
rename from src/qcam/assets/feathericons/list.svg
rename to src/apps/qcam/assets/feathericons/list.svg
diff --git a/src/qcam/assets/feathericons/loader.svg b/src/apps/qcam/assets/feathericons/loader.svg
similarity index 100%
rename from src/qcam/assets/feathericons/loader.svg
rename to src/apps/qcam/assets/feathericons/loader.svg
diff --git a/src/qcam/assets/feathericons/lock.svg b/src/apps/qcam/assets/feathericons/lock.svg
similarity index 100%
rename from src/qcam/assets/feathericons/lock.svg
rename to src/apps/qcam/assets/feathericons/lock.svg
diff --git a/src/qcam/assets/feathericons/log-in.svg b/src/apps/qcam/assets/feathericons/log-in.svg
similarity index 100%
rename from src/qcam/assets/feathericons/log-in.svg
rename to src/apps/qcam/assets/feathericons/log-in.svg
diff --git a/src/qcam/assets/feathericons/log-out.svg b/src/apps/qcam/assets/feathericons/log-out.svg
similarity index 100%
rename from src/qcam/assets/feathericons/log-out.svg
rename to src/apps/qcam/assets/feathericons/log-out.svg
diff --git a/src/qcam/assets/feathericons/mail.svg b/src/apps/qcam/assets/feathericons/mail.svg
similarity index 100%
rename from src/qcam/assets/feathericons/mail.svg
rename to src/apps/qcam/assets/feathericons/mail.svg
diff --git a/src/qcam/assets/feathericons/map-pin.svg b/src/apps/qcam/assets/feathericons/map-pin.svg
similarity index 100%
rename from src/qcam/assets/feathericons/map-pin.svg
rename to src/apps/qcam/assets/feathericons/map-pin.svg
diff --git a/src/qcam/assets/feathericons/map.svg b/src/apps/qcam/assets/feathericons/map.svg
similarity index 100%
rename from src/qcam/assets/feathericons/map.svg
rename to src/apps/qcam/assets/feathericons/map.svg
diff --git a/src/qcam/assets/feathericons/maximize-2.svg b/src/apps/qcam/assets/feathericons/maximize-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/maximize-2.svg
rename to src/apps/qcam/assets/feathericons/maximize-2.svg
diff --git a/src/qcam/assets/feathericons/maximize.svg b/src/apps/qcam/assets/feathericons/maximize.svg
similarity index 100%
rename from src/qcam/assets/feathericons/maximize.svg
rename to src/apps/qcam/assets/feathericons/maximize.svg
diff --git a/src/qcam/assets/feathericons/meh.svg b/src/apps/qcam/assets/feathericons/meh.svg
similarity index 100%
rename from src/qcam/assets/feathericons/meh.svg
rename to src/apps/qcam/assets/feathericons/meh.svg
diff --git a/src/qcam/assets/feathericons/menu.svg b/src/apps/qcam/assets/feathericons/menu.svg
similarity index 100%
rename from src/qcam/assets/feathericons/menu.svg
rename to src/apps/qcam/assets/feathericons/menu.svg
diff --git a/src/qcam/assets/feathericons/message-circle.svg b/src/apps/qcam/assets/feathericons/message-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/message-circle.svg
rename to src/apps/qcam/assets/feathericons/message-circle.svg
diff --git a/src/qcam/assets/feathericons/message-square.svg b/src/apps/qcam/assets/feathericons/message-square.svg
similarity index 100%
rename from src/qcam/assets/feathericons/message-square.svg
rename to src/apps/qcam/assets/feathericons/message-square.svg
diff --git a/src/qcam/assets/feathericons/mic-off.svg b/src/apps/qcam/assets/feathericons/mic-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/mic-off.svg
rename to src/apps/qcam/assets/feathericons/mic-off.svg
diff --git a/src/qcam/assets/feathericons/mic.svg b/src/apps/qcam/assets/feathericons/mic.svg
similarity index 100%
rename from src/qcam/assets/feathericons/mic.svg
rename to src/apps/qcam/assets/feathericons/mic.svg
diff --git a/src/qcam/assets/feathericons/minimize-2.svg b/src/apps/qcam/assets/feathericons/minimize-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/minimize-2.svg
rename to src/apps/qcam/assets/feathericons/minimize-2.svg
diff --git a/src/qcam/assets/feathericons/minimize.svg b/src/apps/qcam/assets/feathericons/minimize.svg
similarity index 100%
rename from src/qcam/assets/feathericons/minimize.svg
rename to src/apps/qcam/assets/feathericons/minimize.svg
diff --git a/src/qcam/assets/feathericons/minus-circle.svg b/src/apps/qcam/assets/feathericons/minus-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/minus-circle.svg
rename to src/apps/qcam/assets/feathericons/minus-circle.svg
diff --git a/src/qcam/assets/feathericons/minus-square.svg b/src/apps/qcam/assets/feathericons/minus-square.svg
similarity index 100%
rename from src/qcam/assets/feathericons/minus-square.svg
rename to src/apps/qcam/assets/feathericons/minus-square.svg
diff --git a/src/qcam/assets/feathericons/minus.svg b/src/apps/qcam/assets/feathericons/minus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/minus.svg
rename to src/apps/qcam/assets/feathericons/minus.svg
diff --git a/src/qcam/assets/feathericons/monitor.svg b/src/apps/qcam/assets/feathericons/monitor.svg
similarity index 100%
rename from src/qcam/assets/feathericons/monitor.svg
rename to src/apps/qcam/assets/feathericons/monitor.svg
diff --git a/src/qcam/assets/feathericons/moon.svg b/src/apps/qcam/assets/feathericons/moon.svg
similarity index 100%
rename from src/qcam/assets/feathericons/moon.svg
rename to src/apps/qcam/assets/feathericons/moon.svg
diff --git a/src/qcam/assets/feathericons/more-horizontal.svg b/src/apps/qcam/assets/feathericons/more-horizontal.svg
similarity index 100%
rename from src/qcam/assets/feathericons/more-horizontal.svg
rename to src/apps/qcam/assets/feathericons/more-horizontal.svg
diff --git a/src/qcam/assets/feathericons/more-vertical.svg b/src/apps/qcam/assets/feathericons/more-vertical.svg
similarity index 100%
rename from src/qcam/assets/feathericons/more-vertical.svg
rename to src/apps/qcam/assets/feathericons/more-vertical.svg
diff --git a/src/qcam/assets/feathericons/mouse-pointer.svg b/src/apps/qcam/assets/feathericons/mouse-pointer.svg
similarity index 100%
rename from src/qcam/assets/feathericons/mouse-pointer.svg
rename to src/apps/qcam/assets/feathericons/mouse-pointer.svg
diff --git a/src/qcam/assets/feathericons/move.svg b/src/apps/qcam/assets/feathericons/move.svg
similarity index 100%
rename from src/qcam/assets/feathericons/move.svg
rename to src/apps/qcam/assets/feathericons/move.svg
diff --git a/src/qcam/assets/feathericons/music.svg b/src/apps/qcam/assets/feathericons/music.svg
similarity index 100%
rename from src/qcam/assets/feathericons/music.svg
rename to src/apps/qcam/assets/feathericons/music.svg
diff --git a/src/qcam/assets/feathericons/navigation-2.svg b/src/apps/qcam/assets/feathericons/navigation-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/navigation-2.svg
rename to src/apps/qcam/assets/feathericons/navigation-2.svg
diff --git a/src/qcam/assets/feathericons/navigation.svg b/src/apps/qcam/assets/feathericons/navigation.svg
similarity index 100%
rename from src/qcam/assets/feathericons/navigation.svg
rename to src/apps/qcam/assets/feathericons/navigation.svg
diff --git a/src/qcam/assets/feathericons/octagon.svg b/src/apps/qcam/assets/feathericons/octagon.svg
similarity index 100%
rename from src/qcam/assets/feathericons/octagon.svg
rename to src/apps/qcam/assets/feathericons/octagon.svg
diff --git a/src/qcam/assets/feathericons/package.svg b/src/apps/qcam/assets/feathericons/package.svg
similarity index 100%
rename from src/qcam/assets/feathericons/package.svg
rename to src/apps/qcam/assets/feathericons/package.svg
diff --git a/src/qcam/assets/feathericons/paperclip.svg b/src/apps/qcam/assets/feathericons/paperclip.svg
similarity index 100%
rename from src/qcam/assets/feathericons/paperclip.svg
rename to src/apps/qcam/assets/feathericons/paperclip.svg
diff --git a/src/qcam/assets/feathericons/pause-circle.svg b/src/apps/qcam/assets/feathericons/pause-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/pause-circle.svg
rename to src/apps/qcam/assets/feathericons/pause-circle.svg
diff --git a/src/qcam/assets/feathericons/pause.svg b/src/apps/qcam/assets/feathericons/pause.svg
similarity index 100%
rename from src/qcam/assets/feathericons/pause.svg
rename to src/apps/qcam/assets/feathericons/pause.svg
diff --git a/src/qcam/assets/feathericons/pen-tool.svg b/src/apps/qcam/assets/feathericons/pen-tool.svg
similarity index 100%
rename from src/qcam/assets/feathericons/pen-tool.svg
rename to src/apps/qcam/assets/feathericons/pen-tool.svg
diff --git a/src/qcam/assets/feathericons/percent.svg b/src/apps/qcam/assets/feathericons/percent.svg
similarity index 100%
rename from src/qcam/assets/feathericons/percent.svg
rename to src/apps/qcam/assets/feathericons/percent.svg
diff --git a/src/qcam/assets/feathericons/phone-call.svg b/src/apps/qcam/assets/feathericons/phone-call.svg
similarity index 100%
rename from src/qcam/assets/feathericons/phone-call.svg
rename to src/apps/qcam/assets/feathericons/phone-call.svg
diff --git a/src/qcam/assets/feathericons/phone-forwarded.svg b/src/apps/qcam/assets/feathericons/phone-forwarded.svg
similarity index 100%
rename from src/qcam/assets/feathericons/phone-forwarded.svg
rename to src/apps/qcam/assets/feathericons/phone-forwarded.svg
diff --git a/src/qcam/assets/feathericons/phone-incoming.svg b/src/apps/qcam/assets/feathericons/phone-incoming.svg
similarity index 100%
rename from src/qcam/assets/feathericons/phone-incoming.svg
rename to src/apps/qcam/assets/feathericons/phone-incoming.svg
diff --git a/src/qcam/assets/feathericons/phone-missed.svg b/src/apps/qcam/assets/feathericons/phone-missed.svg
similarity index 100%
rename from src/qcam/assets/feathericons/phone-missed.svg
rename to src/apps/qcam/assets/feathericons/phone-missed.svg
diff --git a/src/qcam/assets/feathericons/phone-off.svg b/src/apps/qcam/assets/feathericons/phone-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/phone-off.svg
rename to src/apps/qcam/assets/feathericons/phone-off.svg
diff --git a/src/qcam/assets/feathericons/phone-outgoing.svg b/src/apps/qcam/assets/feathericons/phone-outgoing.svg
similarity index 100%
rename from src/qcam/assets/feathericons/phone-outgoing.svg
rename to src/apps/qcam/assets/feathericons/phone-outgoing.svg
diff --git a/src/qcam/assets/feathericons/phone.svg b/src/apps/qcam/assets/feathericons/phone.svg
similarity index 100%
rename from src/qcam/assets/feathericons/phone.svg
rename to src/apps/qcam/assets/feathericons/phone.svg
diff --git a/src/qcam/assets/feathericons/pie-chart.svg b/src/apps/qcam/assets/feathericons/pie-chart.svg
similarity index 100%
rename from src/qcam/assets/feathericons/pie-chart.svg
rename to src/apps/qcam/assets/feathericons/pie-chart.svg
diff --git a/src/qcam/assets/feathericons/play-circle.svg b/src/apps/qcam/assets/feathericons/play-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/play-circle.svg
rename to src/apps/qcam/assets/feathericons/play-circle.svg
diff --git a/src/qcam/assets/feathericons/play.svg b/src/apps/qcam/assets/feathericons/play.svg
similarity index 100%
rename from src/qcam/assets/feathericons/play.svg
rename to src/apps/qcam/assets/feathericons/play.svg
diff --git a/src/qcam/assets/feathericons/plus-circle.svg b/src/apps/qcam/assets/feathericons/plus-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/plus-circle.svg
rename to src/apps/qcam/assets/feathericons/plus-circle.svg
diff --git a/src/qcam/assets/feathericons/plus-square.svg b/src/apps/qcam/assets/feathericons/plus-square.svg
similarity index 100%
rename from src/qcam/assets/feathericons/plus-square.svg
rename to src/apps/qcam/assets/feathericons/plus-square.svg
diff --git a/src/qcam/assets/feathericons/plus.svg b/src/apps/qcam/assets/feathericons/plus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/plus.svg
rename to src/apps/qcam/assets/feathericons/plus.svg
diff --git a/src/qcam/assets/feathericons/pocket.svg b/src/apps/qcam/assets/feathericons/pocket.svg
similarity index 100%
rename from src/qcam/assets/feathericons/pocket.svg
rename to src/apps/qcam/assets/feathericons/pocket.svg
diff --git a/src/qcam/assets/feathericons/power.svg b/src/apps/qcam/assets/feathericons/power.svg
similarity index 100%
rename from src/qcam/assets/feathericons/power.svg
rename to src/apps/qcam/assets/feathericons/power.svg
diff --git a/src/qcam/assets/feathericons/printer.svg b/src/apps/qcam/assets/feathericons/printer.svg
similarity index 100%
rename from src/qcam/assets/feathericons/printer.svg
rename to src/apps/qcam/assets/feathericons/printer.svg
diff --git a/src/qcam/assets/feathericons/radio.svg b/src/apps/qcam/assets/feathericons/radio.svg
similarity index 100%
rename from src/qcam/assets/feathericons/radio.svg
rename to src/apps/qcam/assets/feathericons/radio.svg
diff --git a/src/qcam/assets/feathericons/refresh-ccw.svg b/src/apps/qcam/assets/feathericons/refresh-ccw.svg
similarity index 100%
rename from src/qcam/assets/feathericons/refresh-ccw.svg
rename to src/apps/qcam/assets/feathericons/refresh-ccw.svg
diff --git a/src/qcam/assets/feathericons/refresh-cw.svg b/src/apps/qcam/assets/feathericons/refresh-cw.svg
similarity index 100%
rename from src/qcam/assets/feathericons/refresh-cw.svg
rename to src/apps/qcam/assets/feathericons/refresh-cw.svg
diff --git a/src/qcam/assets/feathericons/repeat.svg b/src/apps/qcam/assets/feathericons/repeat.svg
similarity index 100%
rename from src/qcam/assets/feathericons/repeat.svg
rename to src/apps/qcam/assets/feathericons/repeat.svg
diff --git a/src/qcam/assets/feathericons/rewind.svg b/src/apps/qcam/assets/feathericons/rewind.svg
similarity index 100%
rename from src/qcam/assets/feathericons/rewind.svg
rename to src/apps/qcam/assets/feathericons/rewind.svg
diff --git a/src/qcam/assets/feathericons/rotate-ccw.svg b/src/apps/qcam/assets/feathericons/rotate-ccw.svg
similarity index 100%
rename from src/qcam/assets/feathericons/rotate-ccw.svg
rename to src/apps/qcam/assets/feathericons/rotate-ccw.svg
diff --git a/src/qcam/assets/feathericons/rotate-cw.svg b/src/apps/qcam/assets/feathericons/rotate-cw.svg
similarity index 100%
rename from src/qcam/assets/feathericons/rotate-cw.svg
rename to src/apps/qcam/assets/feathericons/rotate-cw.svg
diff --git a/src/qcam/assets/feathericons/rss.svg b/src/apps/qcam/assets/feathericons/rss.svg
similarity index 100%
rename from src/qcam/assets/feathericons/rss.svg
rename to src/apps/qcam/assets/feathericons/rss.svg
diff --git a/src/qcam/assets/feathericons/save.svg b/src/apps/qcam/assets/feathericons/save.svg
similarity index 100%
rename from src/qcam/assets/feathericons/save.svg
rename to src/apps/qcam/assets/feathericons/save.svg
diff --git a/src/qcam/assets/feathericons/scissors.svg b/src/apps/qcam/assets/feathericons/scissors.svg
similarity index 100%
rename from src/qcam/assets/feathericons/scissors.svg
rename to src/apps/qcam/assets/feathericons/scissors.svg
diff --git a/src/qcam/assets/feathericons/search.svg b/src/apps/qcam/assets/feathericons/search.svg
similarity index 100%
rename from src/qcam/assets/feathericons/search.svg
rename to src/apps/qcam/assets/feathericons/search.svg
diff --git a/src/qcam/assets/feathericons/send.svg b/src/apps/qcam/assets/feathericons/send.svg
similarity index 100%
rename from src/qcam/assets/feathericons/send.svg
rename to src/apps/qcam/assets/feathericons/send.svg
diff --git a/src/qcam/assets/feathericons/server.svg b/src/apps/qcam/assets/feathericons/server.svg
similarity index 100%
rename from src/qcam/assets/feathericons/server.svg
rename to src/apps/qcam/assets/feathericons/server.svg
diff --git a/src/qcam/assets/feathericons/settings.svg b/src/apps/qcam/assets/feathericons/settings.svg
similarity index 100%
rename from src/qcam/assets/feathericons/settings.svg
rename to src/apps/qcam/assets/feathericons/settings.svg
diff --git a/src/qcam/assets/feathericons/share-2.svg b/src/apps/qcam/assets/feathericons/share-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/share-2.svg
rename to src/apps/qcam/assets/feathericons/share-2.svg
diff --git a/src/qcam/assets/feathericons/share.svg b/src/apps/qcam/assets/feathericons/share.svg
similarity index 100%
rename from src/qcam/assets/feathericons/share.svg
rename to src/apps/qcam/assets/feathericons/share.svg
diff --git a/src/qcam/assets/feathericons/shield-off.svg b/src/apps/qcam/assets/feathericons/shield-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/shield-off.svg
rename to src/apps/qcam/assets/feathericons/shield-off.svg
diff --git a/src/qcam/assets/feathericons/shield.svg b/src/apps/qcam/assets/feathericons/shield.svg
similarity index 100%
rename from src/qcam/assets/feathericons/shield.svg
rename to src/apps/qcam/assets/feathericons/shield.svg
diff --git a/src/qcam/assets/feathericons/shopping-bag.svg b/src/apps/qcam/assets/feathericons/shopping-bag.svg
similarity index 100%
rename from src/qcam/assets/feathericons/shopping-bag.svg
rename to src/apps/qcam/assets/feathericons/shopping-bag.svg
diff --git a/src/qcam/assets/feathericons/shopping-cart.svg b/src/apps/qcam/assets/feathericons/shopping-cart.svg
similarity index 100%
rename from src/qcam/assets/feathericons/shopping-cart.svg
rename to src/apps/qcam/assets/feathericons/shopping-cart.svg
diff --git a/src/qcam/assets/feathericons/shuffle.svg b/src/apps/qcam/assets/feathericons/shuffle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/shuffle.svg
rename to src/apps/qcam/assets/feathericons/shuffle.svg
diff --git a/src/qcam/assets/feathericons/sidebar.svg b/src/apps/qcam/assets/feathericons/sidebar.svg
similarity index 100%
rename from src/qcam/assets/feathericons/sidebar.svg
rename to src/apps/qcam/assets/feathericons/sidebar.svg
diff --git a/src/qcam/assets/feathericons/skip-back.svg b/src/apps/qcam/assets/feathericons/skip-back.svg
similarity index 100%
rename from src/qcam/assets/feathericons/skip-back.svg
rename to src/apps/qcam/assets/feathericons/skip-back.svg
diff --git a/src/qcam/assets/feathericons/skip-forward.svg b/src/apps/qcam/assets/feathericons/skip-forward.svg
similarity index 100%
rename from src/qcam/assets/feathericons/skip-forward.svg
rename to src/apps/qcam/assets/feathericons/skip-forward.svg
diff --git a/src/qcam/assets/feathericons/slack.svg b/src/apps/qcam/assets/feathericons/slack.svg
similarity index 100%
rename from src/qcam/assets/feathericons/slack.svg
rename to src/apps/qcam/assets/feathericons/slack.svg
diff --git a/src/qcam/assets/feathericons/slash.svg b/src/apps/qcam/assets/feathericons/slash.svg
similarity index 100%
rename from src/qcam/assets/feathericons/slash.svg
rename to src/apps/qcam/assets/feathericons/slash.svg
diff --git a/src/qcam/assets/feathericons/sliders.svg b/src/apps/qcam/assets/feathericons/sliders.svg
similarity index 100%
rename from src/qcam/assets/feathericons/sliders.svg
rename to src/apps/qcam/assets/feathericons/sliders.svg
diff --git a/src/qcam/assets/feathericons/smartphone.svg b/src/apps/qcam/assets/feathericons/smartphone.svg
similarity index 100%
rename from src/qcam/assets/feathericons/smartphone.svg
rename to src/apps/qcam/assets/feathericons/smartphone.svg
diff --git a/src/qcam/assets/feathericons/smile.svg b/src/apps/qcam/assets/feathericons/smile.svg
similarity index 100%
rename from src/qcam/assets/feathericons/smile.svg
rename to src/apps/qcam/assets/feathericons/smile.svg
diff --git a/src/qcam/assets/feathericons/speaker.svg b/src/apps/qcam/assets/feathericons/speaker.svg
similarity index 100%
rename from src/qcam/assets/feathericons/speaker.svg
rename to src/apps/qcam/assets/feathericons/speaker.svg
diff --git a/src/qcam/assets/feathericons/square.svg b/src/apps/qcam/assets/feathericons/square.svg
similarity index 100%
rename from src/qcam/assets/feathericons/square.svg
rename to src/apps/qcam/assets/feathericons/square.svg
diff --git a/src/qcam/assets/feathericons/star.svg b/src/apps/qcam/assets/feathericons/star.svg
similarity index 100%
rename from src/qcam/assets/feathericons/star.svg
rename to src/apps/qcam/assets/feathericons/star.svg
diff --git a/src/qcam/assets/feathericons/stop-circle.svg b/src/apps/qcam/assets/feathericons/stop-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/stop-circle.svg
rename to src/apps/qcam/assets/feathericons/stop-circle.svg
diff --git a/src/qcam/assets/feathericons/sun.svg b/src/apps/qcam/assets/feathericons/sun.svg
similarity index 100%
rename from src/qcam/assets/feathericons/sun.svg
rename to src/apps/qcam/assets/feathericons/sun.svg
diff --git a/src/qcam/assets/feathericons/sunrise.svg b/src/apps/qcam/assets/feathericons/sunrise.svg
similarity index 100%
rename from src/qcam/assets/feathericons/sunrise.svg
rename to src/apps/qcam/assets/feathericons/sunrise.svg
diff --git a/src/qcam/assets/feathericons/sunset.svg b/src/apps/qcam/assets/feathericons/sunset.svg
similarity index 100%
rename from src/qcam/assets/feathericons/sunset.svg
rename to src/apps/qcam/assets/feathericons/sunset.svg
diff --git a/src/qcam/assets/feathericons/tablet.svg b/src/apps/qcam/assets/feathericons/tablet.svg
similarity index 100%
rename from src/qcam/assets/feathericons/tablet.svg
rename to src/apps/qcam/assets/feathericons/tablet.svg
diff --git a/src/qcam/assets/feathericons/tag.svg b/src/apps/qcam/assets/feathericons/tag.svg
similarity index 100%
rename from src/qcam/assets/feathericons/tag.svg
rename to src/apps/qcam/assets/feathericons/tag.svg
diff --git a/src/qcam/assets/feathericons/target.svg b/src/apps/qcam/assets/feathericons/target.svg
similarity index 100%
rename from src/qcam/assets/feathericons/target.svg
rename to src/apps/qcam/assets/feathericons/target.svg
diff --git a/src/qcam/assets/feathericons/terminal.svg b/src/apps/qcam/assets/feathericons/terminal.svg
similarity index 100%
rename from src/qcam/assets/feathericons/terminal.svg
rename to src/apps/qcam/assets/feathericons/terminal.svg
diff --git a/src/qcam/assets/feathericons/thermometer.svg b/src/apps/qcam/assets/feathericons/thermometer.svg
similarity index 100%
rename from src/qcam/assets/feathericons/thermometer.svg
rename to src/apps/qcam/assets/feathericons/thermometer.svg
diff --git a/src/qcam/assets/feathericons/thumbs-down.svg b/src/apps/qcam/assets/feathericons/thumbs-down.svg
similarity index 100%
rename from src/qcam/assets/feathericons/thumbs-down.svg
rename to src/apps/qcam/assets/feathericons/thumbs-down.svg
diff --git a/src/qcam/assets/feathericons/thumbs-up.svg b/src/apps/qcam/assets/feathericons/thumbs-up.svg
similarity index 100%
rename from src/qcam/assets/feathericons/thumbs-up.svg
rename to src/apps/qcam/assets/feathericons/thumbs-up.svg
diff --git a/src/qcam/assets/feathericons/toggle-left.svg b/src/apps/qcam/assets/feathericons/toggle-left.svg
similarity index 100%
rename from src/qcam/assets/feathericons/toggle-left.svg
rename to src/apps/qcam/assets/feathericons/toggle-left.svg
diff --git a/src/qcam/assets/feathericons/toggle-right.svg b/src/apps/qcam/assets/feathericons/toggle-right.svg
similarity index 100%
rename from src/qcam/assets/feathericons/toggle-right.svg
rename to src/apps/qcam/assets/feathericons/toggle-right.svg
diff --git a/src/qcam/assets/feathericons/tool.svg b/src/apps/qcam/assets/feathericons/tool.svg
similarity index 100%
rename from src/qcam/assets/feathericons/tool.svg
rename to src/apps/qcam/assets/feathericons/tool.svg
diff --git a/src/qcam/assets/feathericons/trash-2.svg b/src/apps/qcam/assets/feathericons/trash-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/trash-2.svg
rename to src/apps/qcam/assets/feathericons/trash-2.svg
diff --git a/src/qcam/assets/feathericons/trash.svg b/src/apps/qcam/assets/feathericons/trash.svg
similarity index 100%
rename from src/qcam/assets/feathericons/trash.svg
rename to src/apps/qcam/assets/feathericons/trash.svg
diff --git a/src/qcam/assets/feathericons/trello.svg b/src/apps/qcam/assets/feathericons/trello.svg
similarity index 100%
rename from src/qcam/assets/feathericons/trello.svg
rename to src/apps/qcam/assets/feathericons/trello.svg
diff --git a/src/qcam/assets/feathericons/trending-down.svg b/src/apps/qcam/assets/feathericons/trending-down.svg
similarity index 100%
rename from src/qcam/assets/feathericons/trending-down.svg
rename to src/apps/qcam/assets/feathericons/trending-down.svg
diff --git a/src/qcam/assets/feathericons/trending-up.svg b/src/apps/qcam/assets/feathericons/trending-up.svg
similarity index 100%
rename from src/qcam/assets/feathericons/trending-up.svg
rename to src/apps/qcam/assets/feathericons/trending-up.svg
diff --git a/src/qcam/assets/feathericons/triangle.svg b/src/apps/qcam/assets/feathericons/triangle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/triangle.svg
rename to src/apps/qcam/assets/feathericons/triangle.svg
diff --git a/src/qcam/assets/feathericons/truck.svg b/src/apps/qcam/assets/feathericons/truck.svg
similarity index 100%
rename from src/qcam/assets/feathericons/truck.svg
rename to src/apps/qcam/assets/feathericons/truck.svg
diff --git a/src/qcam/assets/feathericons/tv.svg b/src/apps/qcam/assets/feathericons/tv.svg
similarity index 100%
rename from src/qcam/assets/feathericons/tv.svg
rename to src/apps/qcam/assets/feathericons/tv.svg
diff --git a/src/qcam/assets/feathericons/twitch.svg b/src/apps/qcam/assets/feathericons/twitch.svg
similarity index 100%
rename from src/qcam/assets/feathericons/twitch.svg
rename to src/apps/qcam/assets/feathericons/twitch.svg
diff --git a/src/qcam/assets/feathericons/twitter.svg b/src/apps/qcam/assets/feathericons/twitter.svg
similarity index 100%
rename from src/qcam/assets/feathericons/twitter.svg
rename to src/apps/qcam/assets/feathericons/twitter.svg
diff --git a/src/qcam/assets/feathericons/type.svg b/src/apps/qcam/assets/feathericons/type.svg
similarity index 100%
rename from src/qcam/assets/feathericons/type.svg
rename to src/apps/qcam/assets/feathericons/type.svg
diff --git a/src/qcam/assets/feathericons/umbrella.svg b/src/apps/qcam/assets/feathericons/umbrella.svg
similarity index 100%
rename from src/qcam/assets/feathericons/umbrella.svg
rename to src/apps/qcam/assets/feathericons/umbrella.svg
diff --git a/src/qcam/assets/feathericons/underline.svg b/src/apps/qcam/assets/feathericons/underline.svg
similarity index 100%
rename from src/qcam/assets/feathericons/underline.svg
rename to src/apps/qcam/assets/feathericons/underline.svg
diff --git a/src/qcam/assets/feathericons/unlock.svg b/src/apps/qcam/assets/feathericons/unlock.svg
similarity index 100%
rename from src/qcam/assets/feathericons/unlock.svg
rename to src/apps/qcam/assets/feathericons/unlock.svg
diff --git a/src/qcam/assets/feathericons/upload-cloud.svg b/src/apps/qcam/assets/feathericons/upload-cloud.svg
similarity index 100%
rename from src/qcam/assets/feathericons/upload-cloud.svg
rename to src/apps/qcam/assets/feathericons/upload-cloud.svg
diff --git a/src/qcam/assets/feathericons/upload.svg b/src/apps/qcam/assets/feathericons/upload.svg
similarity index 100%
rename from src/qcam/assets/feathericons/upload.svg
rename to src/apps/qcam/assets/feathericons/upload.svg
diff --git a/src/qcam/assets/feathericons/user-check.svg b/src/apps/qcam/assets/feathericons/user-check.svg
similarity index 100%
rename from src/qcam/assets/feathericons/user-check.svg
rename to src/apps/qcam/assets/feathericons/user-check.svg
diff --git a/src/qcam/assets/feathericons/user-minus.svg b/src/apps/qcam/assets/feathericons/user-minus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/user-minus.svg
rename to src/apps/qcam/assets/feathericons/user-minus.svg
diff --git a/src/qcam/assets/feathericons/user-plus.svg b/src/apps/qcam/assets/feathericons/user-plus.svg
similarity index 100%
rename from src/qcam/assets/feathericons/user-plus.svg
rename to src/apps/qcam/assets/feathericons/user-plus.svg
diff --git a/src/qcam/assets/feathericons/user-x.svg b/src/apps/qcam/assets/feathericons/user-x.svg
similarity index 100%
rename from src/qcam/assets/feathericons/user-x.svg
rename to src/apps/qcam/assets/feathericons/user-x.svg
diff --git a/src/qcam/assets/feathericons/user.svg b/src/apps/qcam/assets/feathericons/user.svg
similarity index 100%
rename from src/qcam/assets/feathericons/user.svg
rename to src/apps/qcam/assets/feathericons/user.svg
diff --git a/src/qcam/assets/feathericons/users.svg b/src/apps/qcam/assets/feathericons/users.svg
similarity index 100%
rename from src/qcam/assets/feathericons/users.svg
rename to src/apps/qcam/assets/feathericons/users.svg
diff --git a/src/qcam/assets/feathericons/video-off.svg b/src/apps/qcam/assets/feathericons/video-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/video-off.svg
rename to src/apps/qcam/assets/feathericons/video-off.svg
diff --git a/src/qcam/assets/feathericons/video.svg b/src/apps/qcam/assets/feathericons/video.svg
similarity index 100%
rename from src/qcam/assets/feathericons/video.svg
rename to src/apps/qcam/assets/feathericons/video.svg
diff --git a/src/qcam/assets/feathericons/voicemail.svg b/src/apps/qcam/assets/feathericons/voicemail.svg
similarity index 100%
rename from src/qcam/assets/feathericons/voicemail.svg
rename to src/apps/qcam/assets/feathericons/voicemail.svg
diff --git a/src/qcam/assets/feathericons/volume-1.svg b/src/apps/qcam/assets/feathericons/volume-1.svg
similarity index 100%
rename from src/qcam/assets/feathericons/volume-1.svg
rename to src/apps/qcam/assets/feathericons/volume-1.svg
diff --git a/src/qcam/assets/feathericons/volume-2.svg b/src/apps/qcam/assets/feathericons/volume-2.svg
similarity index 100%
rename from src/qcam/assets/feathericons/volume-2.svg
rename to src/apps/qcam/assets/feathericons/volume-2.svg
diff --git a/src/qcam/assets/feathericons/volume-x.svg b/src/apps/qcam/assets/feathericons/volume-x.svg
similarity index 100%
rename from src/qcam/assets/feathericons/volume-x.svg
rename to src/apps/qcam/assets/feathericons/volume-x.svg
diff --git a/src/qcam/assets/feathericons/volume.svg b/src/apps/qcam/assets/feathericons/volume.svg
similarity index 100%
rename from src/qcam/assets/feathericons/volume.svg
rename to src/apps/qcam/assets/feathericons/volume.svg
diff --git a/src/qcam/assets/feathericons/watch.svg b/src/apps/qcam/assets/feathericons/watch.svg
similarity index 100%
rename from src/qcam/assets/feathericons/watch.svg
rename to src/apps/qcam/assets/feathericons/watch.svg
diff --git a/src/qcam/assets/feathericons/wifi-off.svg b/src/apps/qcam/assets/feathericons/wifi-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/wifi-off.svg
rename to src/apps/qcam/assets/feathericons/wifi-off.svg
diff --git a/src/qcam/assets/feathericons/wifi.svg b/src/apps/qcam/assets/feathericons/wifi.svg
similarity index 100%
rename from src/qcam/assets/feathericons/wifi.svg
rename to src/apps/qcam/assets/feathericons/wifi.svg
diff --git a/src/qcam/assets/feathericons/wind.svg b/src/apps/qcam/assets/feathericons/wind.svg
similarity index 100%
rename from src/qcam/assets/feathericons/wind.svg
rename to src/apps/qcam/assets/feathericons/wind.svg
diff --git a/src/qcam/assets/feathericons/x-circle.svg b/src/apps/qcam/assets/feathericons/x-circle.svg
similarity index 100%
rename from src/qcam/assets/feathericons/x-circle.svg
rename to src/apps/qcam/assets/feathericons/x-circle.svg
diff --git a/src/qcam/assets/feathericons/x-octagon.svg b/src/apps/qcam/assets/feathericons/x-octagon.svg
similarity index 100%
rename from src/qcam/assets/feathericons/x-octagon.svg
rename to src/apps/qcam/assets/feathericons/x-octagon.svg
diff --git a/src/qcam/assets/feathericons/x-square.svg b/src/apps/qcam/assets/feathericons/x-square.svg
similarity index 100%
rename from src/qcam/assets/feathericons/x-square.svg
rename to src/apps/qcam/assets/feathericons/x-square.svg
diff --git a/src/qcam/assets/feathericons/x.svg b/src/apps/qcam/assets/feathericons/x.svg
similarity index 100%
rename from src/qcam/assets/feathericons/x.svg
rename to src/apps/qcam/assets/feathericons/x.svg
diff --git a/src/qcam/assets/feathericons/youtube.svg b/src/apps/qcam/assets/feathericons/youtube.svg
similarity index 100%
rename from src/qcam/assets/feathericons/youtube.svg
rename to src/apps/qcam/assets/feathericons/youtube.svg
diff --git a/src/qcam/assets/feathericons/zap-off.svg b/src/apps/qcam/assets/feathericons/zap-off.svg
similarity index 100%
rename from src/qcam/assets/feathericons/zap-off.svg
rename to src/apps/qcam/assets/feathericons/zap-off.svg
diff --git a/src/qcam/assets/feathericons/zap.svg b/src/apps/qcam/assets/feathericons/zap.svg
similarity index 100%
rename from src/qcam/assets/feathericons/zap.svg
rename to src/apps/qcam/assets/feathericons/zap.svg
diff --git a/src/qcam/assets/feathericons/zoom-in.svg b/src/apps/qcam/assets/feathericons/zoom-in.svg
similarity index 100%
rename from src/qcam/assets/feathericons/zoom-in.svg
rename to src/apps/qcam/assets/feathericons/zoom-in.svg
diff --git a/src/qcam/assets/feathericons/zoom-out.svg b/src/apps/qcam/assets/feathericons/zoom-out.svg
similarity index 100%
rename from src/qcam/assets/feathericons/zoom-out.svg
rename to src/apps/qcam/assets/feathericons/zoom-out.svg
diff --git a/src/qcam/assets/shader/RGB.frag b/src/apps/qcam/assets/shader/RGB.frag
similarity index 100%
rename from src/qcam/assets/shader/RGB.frag
rename to src/apps/qcam/assets/shader/RGB.frag
diff --git a/src/qcam/assets/shader/YUV_2_planes.frag b/src/apps/qcam/assets/shader/YUV_2_planes.frag
similarity index 100%
rename from src/qcam/assets/shader/YUV_2_planes.frag
rename to src/apps/qcam/assets/shader/YUV_2_planes.frag
diff --git a/src/qcam/assets/shader/YUV_3_planes.frag b/src/apps/qcam/assets/shader/YUV_3_planes.frag
similarity index 100%
rename from src/qcam/assets/shader/YUV_3_planes.frag
rename to src/apps/qcam/assets/shader/YUV_3_planes.frag
diff --git a/src/qcam/assets/shader/YUV_packed.frag b/src/apps/qcam/assets/shader/YUV_packed.frag
similarity index 100%
rename from src/qcam/assets/shader/YUV_packed.frag
rename to src/apps/qcam/assets/shader/YUV_packed.frag
diff --git a/src/qcam/assets/shader/bayer_1x_packed.frag b/src/apps/qcam/assets/shader/bayer_1x_packed.frag
similarity index 100%
rename from src/qcam/assets/shader/bayer_1x_packed.frag
rename to src/apps/qcam/assets/shader/bayer_1x_packed.frag
diff --git a/src/qcam/assets/shader/bayer_8.frag b/src/apps/qcam/assets/shader/bayer_8.frag
similarity index 100%
rename from src/qcam/assets/shader/bayer_8.frag
rename to src/apps/qcam/assets/shader/bayer_8.frag
diff --git a/src/qcam/assets/shader/bayer_8.vert b/src/apps/qcam/assets/shader/bayer_8.vert
similarity index 100%
rename from src/qcam/assets/shader/bayer_8.vert
rename to src/apps/qcam/assets/shader/bayer_8.vert
diff --git a/src/qcam/assets/shader/identity.vert b/src/apps/qcam/assets/shader/identity.vert
similarity index 100%
rename from src/qcam/assets/shader/identity.vert
rename to src/apps/qcam/assets/shader/identity.vert
diff --git a/src/qcam/assets/shader/shaders.qrc b/src/apps/qcam/assets/shader/shaders.qrc
similarity index 100%
rename from src/qcam/assets/shader/shaders.qrc
rename to src/apps/qcam/assets/shader/shaders.qrc
diff --git a/src/qcam/cam_select_dialog.cpp b/src/apps/qcam/cam_select_dialog.cpp
similarity index 100%
rename from src/qcam/cam_select_dialog.cpp
rename to src/apps/qcam/cam_select_dialog.cpp
diff --git a/src/qcam/cam_select_dialog.h b/src/apps/qcam/cam_select_dialog.h
similarity index 100%
rename from src/qcam/cam_select_dialog.h
rename to src/apps/qcam/cam_select_dialog.h
diff --git a/src/qcam/format_converter.cpp b/src/apps/qcam/format_converter.cpp
similarity index 100%
rename from src/qcam/format_converter.cpp
rename to src/apps/qcam/format_converter.cpp
diff --git a/src/qcam/format_converter.h b/src/apps/qcam/format_converter.h
similarity index 100%
rename from src/qcam/format_converter.h
rename to src/apps/qcam/format_converter.h
diff --git a/src/qcam/main.cpp b/src/apps/qcam/main.cpp
similarity index 100%
rename from src/qcam/main.cpp
rename to src/apps/qcam/main.cpp
diff --git a/src/qcam/main_window.cpp b/src/apps/qcam/main_window.cpp
similarity index 100%
rename from src/qcam/main_window.cpp
rename to src/apps/qcam/main_window.cpp
diff --git a/src/qcam/main_window.h b/src/apps/qcam/main_window.h
similarity index 100%
rename from src/qcam/main_window.h
rename to src/apps/qcam/main_window.h
diff --git a/src/qcam/meson.build b/src/apps/qcam/meson.build
similarity index 100%
rename from src/qcam/meson.build
rename to src/apps/qcam/meson.build
diff --git a/src/qcam/message_handler.cpp b/src/apps/qcam/message_handler.cpp
similarity index 100%
rename from src/qcam/message_handler.cpp
rename to src/apps/qcam/message_handler.cpp
diff --git a/src/qcam/message_handler.h b/src/apps/qcam/message_handler.h
similarity index 100%
rename from src/qcam/message_handler.h
rename to src/apps/qcam/message_handler.h
diff --git a/src/qcam/viewfinder.h b/src/apps/qcam/viewfinder.h
similarity index 100%
rename from src/qcam/viewfinder.h
rename to src/apps/qcam/viewfinder.h
diff --git a/src/qcam/viewfinder_gl.cpp b/src/apps/qcam/viewfinder_gl.cpp
similarity index 100%
rename from src/qcam/viewfinder_gl.cpp
rename to src/apps/qcam/viewfinder_gl.cpp
diff --git a/src/qcam/viewfinder_gl.h b/src/apps/qcam/viewfinder_gl.h
similarity index 100%
rename from src/qcam/viewfinder_gl.h
rename to src/apps/qcam/viewfinder_gl.h
diff --git a/src/qcam/viewfinder_qt.cpp b/src/apps/qcam/viewfinder_qt.cpp
similarity index 100%
rename from src/qcam/viewfinder_qt.cpp
rename to src/apps/qcam/viewfinder_qt.cpp
diff --git a/src/qcam/viewfinder_qt.h b/src/apps/qcam/viewfinder_qt.h
similarity index 100%
rename from src/qcam/viewfinder_qt.h
rename to src/apps/qcam/viewfinder_qt.h
diff --git a/src/meson.build b/src/meson.build
index f37c44ca9f60..a3821fb90a0f 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -32,10 +32,7 @@  subdir('libcamera')
 subdir('android')
 subdir('ipa')
 
-subdir('lc-compliance')
-
-subdir('cam')
-subdir('qcam')
+subdir('apps')
 
 subdir('gstreamer')
 subdir('py')