Merge branch 'master' of https://github.com/calamares/calamares into development
This commit is contained in:
commit
4b4bd83a39
@ -16,5 +16,5 @@ install:
|
||||
- docker build -t calamares .
|
||||
|
||||
script:
|
||||
- docker run -v $PWD:/src --tmpfs /build:rw,size=65536k calamares bash -lc "cd /build && cmake -DWEBVIEW_FORCE_WEBKIT=1 -DKDE_INSTALL_USE_QT_SYS_PATHS=ON /src && make -j2 && make install DESTDIR=/build/INSTALL_ROOT"
|
||||
- docker run -v $PWD:/src --tmpfs /build:rw,size=65536k -e SRCDIR=/src -e BUILDDIR=/build calamares "/src/ci/travis.sh"
|
||||
|
||||
|
@ -1,17 +0,0 @@
|
||||
# Shared CMake core for finding KPMCore
|
||||
#
|
||||
# This is wrapped into a CMake include file because there's a bunch of
|
||||
# pre-requisites that need searching for before looking for KPMCore.
|
||||
# If you just do find_package( KPMCore ) without finding the things
|
||||
# it links against first, you get CMake errors.
|
||||
#
|
||||
#
|
||||
find_package(ECM 5.10.0 REQUIRED NO_MODULE)
|
||||
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_MODULE_PATH})
|
||||
|
||||
include(KDEInstallDirs)
|
||||
include(GenerateExportHeader)
|
||||
find_package( KF5 REQUIRED CoreAddons )
|
||||
find_package( KF5 REQUIRED Config I18n IconThemes KIO Service )
|
||||
|
||||
find_package( KPMcore 3.0.3 REQUIRED )
|
@ -1,44 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Make sure we can make git operations from the Calamares Docker+Jenkins environment.
|
||||
cp ~/jenkins-master/.gitconfig ~
|
||||
cp -R ~/jenkins-master/.ssh ~
|
||||
|
||||
cd "$WORKSPACE"
|
||||
git config --global http.sslVerify false
|
||||
|
||||
rm -Rf "$WORKSPACE/prefix"
|
||||
mkdir "$WORKSPACE/prefix"
|
||||
|
||||
git clone git://anongit.kde.org/kpmcore "$WORKSPACE/kpmcore"
|
||||
cd "$WORKSPACE/kpmcore"
|
||||
mkdir "$WORKSPACE/kpmcore/build"
|
||||
cd "$WORKSPACE/kpmcore/build"
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr ..
|
||||
nice -n 18 make -j2
|
||||
make DESTDIR="$WORKSPACE/prefix" install
|
||||
|
||||
cd "$WORKSPACE"
|
||||
|
||||
wget https://scan.coverity.com/download/cxx/linux64 --no-check-certificate \
|
||||
--post-data "token=ll90T04noQ4cORJx_zczKA&project=calamares%2Fcalamares" \
|
||||
-O coverity_tool.tar.gz
|
||||
mkdir "$WORKSPACE/coveritytool"
|
||||
tar xvf coverity_tool.tar.gz -C "$WORKSPACE/coveritytool" --strip-components 2
|
||||
export PATH="$WORKSPACE/coveritytool/bin:$PATH"
|
||||
|
||||
rm -Rf "$WORKSPACE/build"
|
||||
mkdir "$WORKSPACE/build"
|
||||
cd "$WORKSPACE/build"
|
||||
|
||||
CMAKE_PREFIX_PATH="$WORKSPACE/prefix/usr" cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr -DWEBVIEW_FORCE_WEBKIT=1 ..
|
||||
nice -n 18 cov-build --dir cov-int make -j2
|
||||
|
||||
tar caf calamares-ci.tar.xz cov-int
|
||||
|
||||
curl -k --form token=ll90T04noQ4cORJx_zczKA \
|
||||
--form email=teo@kde.org \
|
||||
--form file=@calamares-ci.tar.xz \
|
||||
--form version="master-`date -u +%Y%m%d`" \
|
||||
--form description="master on `date -u`" \
|
||||
https://scan.coverity.com/builds?project=calamares%2Fcalamares
|
@ -1,30 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
#Hack for Coverity build, so the compiler doesn't complain about InheritanceChecker
|
||||
sudo cp ~/jenkins-master/kpluginfactory.h /usr/include/KF5/KCoreAddons
|
||||
|
||||
cd "$WORKSPACE"
|
||||
wget https://scan.coverity.com/download/cxx/linux64 --no-check-certificate \
|
||||
--post-data "token=cyOjQZx5EOFLdhfo7ZDa4Q&project=KDE+Partition+Manager+Core+Library+-+KPMcore" \
|
||||
-O coverity_tool.tar.gz
|
||||
mkdir "$WORKSPACE/coveritytool"
|
||||
tar xvf coverity_tool.tar.gz -C "$WORKSPACE/coveritytool" --strip-components 2
|
||||
export PATH="$WORKSPACE/coveritytool/bin:$PATH"
|
||||
|
||||
rm -Rf "$WORKSPACE/build"
|
||||
mkdir "$WORKSPACE/build"
|
||||
cd "$WORKSPACE/build"
|
||||
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr ..
|
||||
nice -n 18 cov-build --dir cov-int make -j2
|
||||
|
||||
tar cavf kpmcore-ci.tar.xz cov-int
|
||||
|
||||
cat cov-int/build-log.txt
|
||||
|
||||
curl -k --form token=cyOjQZx5EOFLdhfo7ZDa4Q \
|
||||
--form email=teo@kde.org \
|
||||
--form file=@kpmcore-ci.tar.xz \
|
||||
--form version="master-`date -u +%Y%m%d`" \
|
||||
--form description="master on `date -u`" \
|
||||
https://scan.coverity.com/builds?project=KDE+Partition+Manager+Core+Library+-+KPMcore
|
15
ci/travis-continuous.sh
Executable file
15
ci/travis-continuous.sh
Executable file
@ -0,0 +1,15 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# Travis CI script for use on every-commit:
|
||||
# - build and install Calamares
|
||||
#
|
||||
test -n "$BUILDDIR" || exit 1
|
||||
test -n "$SRCDIR" || exit 1
|
||||
|
||||
test -d $BUILDDIR || exit 1
|
||||
test -d $SRCDIR || exit 1
|
||||
test -f $SRCDIR/CMakeLists.txt || exit 1
|
||||
|
||||
cd $BUILDDIR || exit 1
|
||||
|
||||
cmake -DWEBVIEW_FORCE_WEBKIT=1 -DKDE_INSTALL_USE_QT_SYS_PATHS=ON $SRCDIR && make -j2 && make install DESTDIR=/build/INSTALL_ROOT
|
34
ci/travis-coverity.sh
Executable file
34
ci/travis-coverity.sh
Executable file
@ -0,0 +1,34 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# Travis CI script for weekly (cron) use:
|
||||
# - use the coverity tool to build and and upload results
|
||||
#
|
||||
test -n "$COVERITY_SCAN_TOKEN" || exit 1
|
||||
test -n "$BUILDDIR" || exit 1
|
||||
test -n "$SRCDIR" || exit 1
|
||||
|
||||
test -d $BUILDDIR || exit 1
|
||||
test -d $SRCDIR || exit 1
|
||||
test -f $SRCDIR/CMakeLists.txt || exit 1
|
||||
|
||||
cd $BUILDDIR || exit 1
|
||||
|
||||
curl -k -o coverity_tool.tar.gz \
|
||||
-d "token=$COVERITY_SCAN_TOKEN&project=calamares%2Fcalamares" \
|
||||
https://scan.coverity.com/download/cxx/linux64 || exit 1
|
||||
mkdir "$BUILDDIR/coveritytool"
|
||||
tar xvf coverity_tool.tar.gz -C "$BUILDDIR/coveritytool" --strip-components 2
|
||||
export PATH="$BUILDDIR/coveritytool/bin:$PATH"
|
||||
|
||||
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug -DWEBVIEW_FORCE_WEBKIT=1 -DKDE_INSTALL_USE_QT_SYS_PATHS=ON $SRCDIR || exit 1
|
||||
cov-build --dir cov-int make -j2
|
||||
|
||||
tar caf calamares-ci.tar.xz cov-int
|
||||
|
||||
curl -k --form token=$COVERITY_SCAN_TOKEN \
|
||||
--form email=groot@kde.org \
|
||||
--form file=@calamares-ci.tar.xz \
|
||||
--form version="master-`date -u +%Y%m%d`" \
|
||||
--form description="master on `date -u`" \
|
||||
https://scan.coverity.com/builds?project=calamares%2Fcalamares
|
19
ci/travis.sh
Executable file
19
ci/travis.sh
Executable file
@ -0,0 +1,19 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# Travis build driver script:
|
||||
# - the regular CI runs, triggered by commits, run a script that builds
|
||||
# and installs calamares, and then runs the tests.
|
||||
# - the cronjob CI runs, triggered weekly, run a script that uses the
|
||||
# coverity tools to submit a build. This is slightly more resource-
|
||||
# intensive than the coverity add-on, but works on master.
|
||||
#
|
||||
D=`dirname "$0"`
|
||||
test -d "$D" || exit 1
|
||||
test -x "$D/travis-continuous.sh" || exit 1
|
||||
test -x "$D/travis-coverity.sh" || exit 1
|
||||
|
||||
if test "$TRAVIS_EVENT_TYPE" = "cron" ; then
|
||||
exec "$D/travis-coverity.sh"
|
||||
else
|
||||
exec "$D/travis-continuous.sh"
|
||||
fi
|
@ -43,7 +43,7 @@ welcomeExpandingLogo: true
|
||||
# productIcon is used as the window icon, and will (usually) be used
|
||||
# by the window manager to represent the application. This image
|
||||
# should be square, and may be displayed by the window manager
|
||||
# as small as 32x32 (but possibly larger).
|
||||
# as small as 16x16 (but possibly larger).
|
||||
# productLogo is used as the logo at the top of the left-hand column
|
||||
# which shows the steps to be taken. The image should be square,
|
||||
# and is displayed at 80x80 pixels (also on HiDPI).
|
||||
|
@ -72,9 +72,10 @@ calamares_add_library( calamaresui
|
||||
EXPORT_MACRO UIDLLEXPORT_PRO
|
||||
LINK_PRIVATE_LIBRARIES
|
||||
${YAMLCPP_LIBRARY}
|
||||
${OPTIONAL_PRIVATE_LIBRARIES}
|
||||
LINK_LIBRARIES
|
||||
Qt5::Svg
|
||||
Qt5::QuickWidgets
|
||||
${OPTIONAL_PRIVATE_LIBRARIES}
|
||||
RESOURCES libcalamaresui.qrc
|
||||
EXPORT CalamaresLibraryDepends
|
||||
VERSION ${CALAMARES_VERSION_SHORT}
|
||||
|
@ -13,6 +13,7 @@
|
||||
# Copyright 2017, Alf Gaida <agaida@siduction.org>
|
||||
# Copyright 2017, Adriaan de Groot <groot@kde.org>
|
||||
# Copyright 2017, Gabriel Craciunescu <crazy@frugalware.org>
|
||||
# Copyright 2017, Ben Green <Bezzy1999@hotmail.com>
|
||||
#
|
||||
# Calamares is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@ -235,10 +236,18 @@ def install_grub(efi_directory, fw_type):
|
||||
# if the kernel is older than 4.0, the UEFI bitness likely isn't
|
||||
# exposed to the userspace so we assume a 64 bit UEFI here
|
||||
efi_bitness = "64"
|
||||
bitness_translate = {"32": "--target=i386-efi",
|
||||
"64": "--target=x86_64-efi"}
|
||||
|
||||
if efi_bitness == "32":
|
||||
efi_target = "i386-efi"
|
||||
efi_grub_file = "grubia32.efi"
|
||||
efi_boot_file = "bootia32.efi"
|
||||
elif efi_bitness == "64":
|
||||
efi_target = "x86_64-efi"
|
||||
efi_grub_file = "grubx64.efi"
|
||||
efi_boot_file = "bootx64.efi"
|
||||
|
||||
check_target_env_call([libcalamares.job.configuration["grubInstall"],
|
||||
bitness_translate[efi_bitness],
|
||||
"--target=" + efi_target,
|
||||
"--efi-directory=" + efi_directory,
|
||||
"--bootloader-id=" + efi_bootloader_id,
|
||||
"--force"])
|
||||
@ -260,19 +269,13 @@ def install_grub(efi_directory, fw_type):
|
||||
os.makedirs(install_efi_boot_directory)
|
||||
|
||||
# Workaround for some UEFI firmwares
|
||||
efi_file_source = {"32": os.path.join(install_efi_directory_firmware,
|
||||
efi_bootloader_id,
|
||||
"grubia32.efi"),
|
||||
"64": os.path.join(install_efi_directory_firmware,
|
||||
efi_bootloader_id,
|
||||
"grubx64.efi")}
|
||||
efi_file_source = os.path.join(install_efi_directory_firmware,
|
||||
efi_bootloader_id,
|
||||
efi_grub_file),
|
||||
efi_file_target = os.path.join(install_efi_boot_directory,
|
||||
efi_boot_file),
|
||||
|
||||
efi_file_target = {"32": os.path.join(install_efi_boot_directory,
|
||||
"bootia32.efi"),
|
||||
"64": os.path.join(install_efi_boot_directory,
|
||||
"bootx64.efi")}
|
||||
|
||||
shutil.copy2(efi_file_source[efi_bitness], efi_file_target[efi_bitness])
|
||||
shutil.copy2(efi_file_source, efi_file_target)
|
||||
else:
|
||||
print("Bootloader: grub (bios)")
|
||||
if libcalamares.globalstorage.value("bootLoader") is None:
|
||||
|
@ -21,6 +21,7 @@ calamares_add_plugin( interactiveterminal
|
||||
InteractiveTerminalPage.cpp
|
||||
LINK_PRIVATE_LIBRARIES
|
||||
calamaresui
|
||||
LINK_LIBRARIES
|
||||
KF5::Service
|
||||
KF5::Parts
|
||||
SHARED_LIB
|
||||
|
@ -8,11 +8,15 @@ find_package( KF5 REQUIRED CoreAddons )
|
||||
# These are needed because KPMcore links publicly against ConfigCore, I18n, IconThemes, KIOCore and Service
|
||||
find_package( KF5 REQUIRED Config I18n IconThemes KIO Service )
|
||||
|
||||
# Compatibility: KPMCore 3.2 has a different API, so detect it
|
||||
# first and add a define for it; otherwise we need 3.0.3 for NVMe
|
||||
# support; 3.0.2 works as well, but is buggy (#697)
|
||||
find_package( KPMcore 3.1.50 QUIET )
|
||||
if ( ${KPMcore_FOUND} )
|
||||
add_definitions(-DWITH_KPMCORE22)
|
||||
endif()
|
||||
find_package( KPMcore 3.0.3 REQUIRED )
|
||||
|
||||
find_library( atasmart_LIB atasmart )
|
||||
find_library( blkid_LIB blkid )
|
||||
if( NOT atasmart_LIB )
|
||||
|
@ -12,7 +12,7 @@ set( CHECKER_SOURCES
|
||||
checker/partman_devices.c
|
||||
)
|
||||
set( CHECKER_LINK_LIBRARIES
|
||||
${LIBPARTED_LIBS}
|
||||
${LIBPARTED_LIBRARY}
|
||||
Qt5::DBus
|
||||
Qt5::Network
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user