diff --git a/CMakeLists.txt b/CMakeLists.txt
index faaf3b8d418fee39cd449af2ce04b1c70acbfe15..74f69a8a7da9070ea86fae3755aae7a9383e4314 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -192,10 +192,6 @@ set( THIRDPARTY_DIR "${CMAKE_SOURCE_DIR}/thirdparty" )
 #   make example-distro
 #
 find_program( mksquashfs_PROGRAM mksquashfs )
-set_package_properties( mksquashfs PROPERTIES
-    DESCRIPTION "Create example distro"
-    URL "http://tldp.org/HOWTO/SquashFS-HOWTO/creatingandusing.html"
-)
 if( mksquashfs_PROGRAM )
     set( mksquashfs_FOUND ON )
     set( src_fs ${CMAKE_SOURCE_DIR}/data/example-root/ )
diff --git a/CMakeModules/CalamaresAddLibrary.cmake b/CMakeModules/CalamaresAddLibrary.cmake
index a774b1f31753e4300c4e5cce29b34c78b8026101..f183277c8b368f19332db94662ee120effb7b720 100644
--- a/CMakeModules/CalamaresAddLibrary.cmake
+++ b/CMakeModules/CalamaresAddLibrary.cmake
@@ -45,9 +45,6 @@ function(calamares_add_library)
         add_library(${target} SHARED ${LIBRARY_SOURCES})
     endif()
 
-    # HACK: add qt modules - every lib should define its own set of modules
-    qt5_use_modules(${target} Core Gui Widgets ${LIBRARY_QT5_MODULES})
-
     # definitions - can this be moved into set_target_properties below?
     add_definitions(${QT_DEFINITIONS})
     set_target_properties(${target} PROPERTIES AUTOMOC TRUE)
@@ -67,9 +64,15 @@ function(calamares_add_library)
     endif()
 
     # add link targets
-    target_link_libraries(${target} ${CALAMARES_LIBRARIES})
+    target_link_libraries(${target} 
+        LINK_PUBLIC ${CALAMARES_LIBRARIES}
+        Qt5::Core
+        Qt5::Gui
+        Qt5::Widgets
+        ${LIBRARY_QT5_MODULES}
+    )
     if(LIBRARY_LINK_LIBRARIES)
-        target_link_libraries(${target} ${LIBRARY_LINK_LIBRARIES})
+        target_link_libraries(${target} LINK_PUBLIC ${LIBRARY_LINK_LIBRARIES})
     endif()
     if(LIBRARY_LINK_PRIVATE_LIBRARIES)
         target_link_libraries(${target} LINK_PRIVATE ${LIBRARY_LINK_PRIVATE_LIBRARIES})
diff --git a/src/calamares/CMakeLists.txt b/src/calamares/CMakeLists.txt
index c0f9ecb668629ff82d4c30708271a6e34f7cf7a7..62be0ed34fff5229d9743d2ad0fe1a21c7969d2c 100644
--- a/src/calamares/CMakeLists.txt
+++ b/src/calamares/CMakeLists.txt
@@ -55,7 +55,6 @@ if( WITH_CRASHREPORTER )
     list( APPEND LINK_LIBRARIES ${LINK_LIBRARIES} pthread crashreporter-handler )
 endif()
 
-qt5_use_modules( calamares_bin Core Widgets )
 target_link_libraries( calamares_bin
     PRIVATE
         ${CALAMARES_LIBRARIES}
diff --git a/src/libcalamares/CMakeLists.txt b/src/libcalamares/CMakeLists.txt
index fd94e3eab77a1ce9dadc1869ae5cc2d254c0d7d9..cdd31b782269d3188a0b1efcc271b25f2f0259cb 100644
--- a/src/libcalamares/CMakeLists.txt
+++ b/src/libcalamares/CMakeLists.txt
@@ -81,17 +81,9 @@ set_target_properties( calamares
         SOVERSION ${CALAMARES_VERSION_SHORT}
 )
 
-qt5_use_modules( calamares Core )
-
-
 target_link_libraries( calamares
-    LINK_PRIVATE
-    # internal deps, if any
-    ${OPTIONAL_PRIVATE_LIBRARIES}
-
-    LINK_PUBLIC
-    # External deps
-    Qt5::Core
+    LINK_PRIVATE ${OPTIONAL_PRIVATE_LIBRARIES}
+    LINK_PUBLIC Qt5::Core
 )
 
 install( TARGETS calamares