File: Dockerfile

package info (click to toggle)
qbs 3.1.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 30,780 kB
  • sloc: cpp: 120,475; ansic: 72,055; javascript: 14,887; python: 5,882; asm: 1,742; sh: 1,059; java: 693; objc: 409; lex: 194; xml: 141; perl: 137; yacc: 86; makefile: 55; cs: 41
file content (54 lines) | stat: -rw-r--r-- 2,553 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54

FROM mcr.microsoft.com/windows/servercore:ltsc2022
LABEL Description="Windows Server Core 2022 development environment for Qbs with Qt, Chocolatey and various dependencies for testing Qbs modules and functionality"

# Disable crash dialog for release-mode runtimes
RUN reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting" /v Disabled /t REG_DWORD /d 1 /f
RUN reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting" /v DontShowUI /t REG_DWORD /d 1 /f

# Install VS 2019 from the website since chocolatey has broken .NET 4.8 (dotnetfx package) which is a
# dependency for the visualstudio2019buildtools package
RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \
    Invoke-WebRequest "https://aka.ms/vs/17/release/vs_community.exe" \
    -OutFile "%TEMP%\vs_community.exe" -UseBasicParsing

RUN "%TEMP%\vs_community.exe"  --quiet --wait --norestart --noUpdateInstaller \
    --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 \
    --add Microsoft.VisualStudio.Component.Windows10SDK.19041

RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \
    $Env:chocolateyVersion = '0.10.15' ; \
    $Env:chocolateyUseWindowsCompression = 'false' ; \
    "[Net.ServicePointManager]::SecurityProtocol = \"tls12, tls11, tls\"; iex ((New-Object System.Net.WebClient).DownloadString('http://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

RUN choco install -y python --version 3.13.6 && \
    choco install -y 7zip --version 25.1.0 && \
    choco install -y git --version 2.50.1 --params "/GitAndUnixToolsOnPath" && \
    choco install -y vswhere

RUN pip install -U pip

# for building the documentation
RUN pip install beautifulsoup4 lxml

# clcache for speeding up MSVC builds
ENV CLCACHE_DIR="C:/.ccache"
RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \
    Invoke-WebRequest "https://github.com/frerich/clcache/releases/download/v4.2.0/clcache.4.2.0.nupkg" \
    -OutFile "%TEMP%\clcache.4.2.0.nupkg" -UseBasicParsing
RUN choco install clcache --source="%TEMP%"

########### Install Qt #############
ARG QT_VERSION
COPY scripts/install-qt.sh install-qt.sh

RUN bash -c "./install-qt.sh -d /c/Qt --version ${QT_VERSION} --toolchain win64_msvc2022_64 qtbase qtdeclarative qttools qt5compat"
ENV QTDIR64=C:\\Qt\\${QT_VERSION}\\msvc2022_64

########### Install Qbs #############
ARG QBS_VERSION
RUN choco install -y qbs --version %QBS_VERSION%

RUN qbs setup-toolchains --detect && \
    qbs setup-qt %QTDIR64%/bin/qmake.exe qt64 && \
    qbs config defaultProfile qt64