# Refactor build script

**URL:** https://forum.screen-play.app/t/refactor-build-script/34
**Category:** Development
**Created:** [December 30, 2021, 12:44pm UTC](https://forum.screen-play.app/t/refactor-build-script/34 "2021-12-30T12:44:58Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 30, 2021, 12:44pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/1 "2021-12-30T12:44:58Z")

</div>

Discuss about [this PR](https://gitlab.com/kelteseth/ScreenPlay/-/merge_requests/89) here, because not everybody wants to go to GitLab to see exactly what we’re doing.

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 30, 2021, 12:46pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/2 "2021-12-30T12:46:36Z")

</div>

@Kelteseth The check part in the CI file, does it need to exactly use Windows, or we can use Linux instead? (because Linux container is much faster than Windows VM in CI)

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [December 30, 2021, 2:33pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/3 "2021-12-30T14:33:04Z")

</div>

Good idea we should use linux for this should be faster!

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 30, 2021, 2:37pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/4 "2021-12-30T14:37:58Z")

</div>

Yes, like how Linux built ScreenPlay for 16 minutes 45 seconds while it isn’t finished on Windows yet ([It stuck at bootstrap-vcpkg.bat on GitLab](https://gitlab.com/kelteseth/ScreenPlay/-/jobs/1930617547), can you check that out?)

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [December 30, 2021, 2:55pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/5 "2021-12-30T14:55:52Z")

</div>

weird… will do not my vm but gitlabs 🙂

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [December 30, 2021, 3:30pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/6 "2021-12-30T15:30:06Z")

</div>

@tretrauit you can refactor it to use arch or alpine. But we should still use aqt so we can install spesific qt versions

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 31, 2021, 9:03am UTC](https://forum.screen-play.app/t/refactor-build-script/34/7 "2021-12-31T09:03:06Z")

</div>

Well that was before I knew the Ubuntu container works, but well Ubuntu is more stable than Arch Linux (arch is rolling release) and not as minimal as Alpine (alpine uses musl) so keep ubuntu as it is

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 31, 2021, 9:15am UTC](https://forum.screen-play.app/t/refactor-build-script/34/8 "2021-12-31T09:15:33Z")

</div>

Also is it possible to use system included vcpkg, and fallback to our one if not found? Because some Linux system like Arch Linux provides vcpkg system-wide

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 31, 2021, 9:29am UTC](https://forum.screen-play.app/t/refactor-build-script/34/9 "2021-12-31T09:29:38Z")

</div>

hey not related here but it’d be cool if you can add a feature to quote message and reply to that

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 31, 2021, 9:55am UTC](https://forum.screen-play.app/t/refactor-build-script/34/10 "2021-12-31T09:55:35Z")

</div>

> @Kelteseth The check part in the CI file, does it need to exactly use Windows, or we can use Linux instead? (because Linux container is much faster than Windows VM in CI)

The commit [7cdb25045d20e1a419c845742712d8562b8bc8e6](https://gitlab.com/kelteseth/ScreenPlay/-/merge_requests/89/diffs?commit_id=7cdb25045d20e1a419c845742712d8562b8bc8e6) and after that changed from Windows to Ubuntu in check part, and it’s working I guess? (not that commit but [the commit after that](https://gitlab.com/kelteseth/ScreenPlay/-/merge_requests/89/diffs?commit_id=3b7fb53a9ed783d4aeff241979b153f407359767), because I forgot we have to use -y to accept in apt-get)

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [December 31, 2021, 10:01am UTC](https://forum.screen-play.app/t/refactor-build-script/34/11 "2021-12-31T10:01:47Z")

</div>

Btw, how do you add a url that point to latest artifact for a specific branch? I found the one in readme is for rmaster branch but i want to change it to the refactor-build-script branch (for linux ci)

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [December 31, 2021, 12:07pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/12 "2021-12-31T12:07:45Z")

</div>

AFAIK you cannot do that @tretrauit

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [December 31, 2021, 12:18pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/13 "2021-12-31T12:18:25Z")

</div>

> [@tretrauit](#):
>
> hey not related here but it’d be cool if you can add a feature to quote message and reply to that

You can simply select my text and then there is an option to quote

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [December 31, 2021, 1:01pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/14 "2021-12-31T13:01:18Z")

</div>

@tretrauit I’m investigation why the build script is stuck on windows. We can also remove the download\_ffmpeg.bat with the python version while we’re at it.

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [January 1, 2022, 7:06am UTC](https://forum.screen-play.app/t/refactor-build-script/34/15 "2022-01-01T07:06:04Z")

</div>

yeah, but i think that isn’t the case since it stuck at bootstrap-vcpkg.bat (and the ffmpeg downloaded successfully)

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [January 1, 2022, 7:06am UTC](https://forum.screen-play.app/t/refactor-build-script/34/16 "2022-01-01T07:06:46Z")

</div>

where’s the option to quote i can’t see it

 ![Screenshot_20220101_140632](https://forum.screen-play.app/uploads/default/original/1X/2a6e6306b9df429e2c5313bcd6c28bb2c8790502.png)

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [January 1, 2022, 9:17am UTC](https://forum.screen-play.app/t/refactor-build-script/34/17 "2022-01-01T09:17:51Z")

</div>

> [@tretrauit](#):
>
> where’s the option to quote i can’t see it

[https://imgur.com/a/OcrVr8a](https://imgur.com/a/OcrVr8a)

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [January 1, 2022, 1:46pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/18 "2022-01-01T13:46:04Z")

</div>

So Qt still has issues when creating an installer when the sum of file sizes is bigger than X00mb (maybe 300mb?). It has a workaround when calling binarycreator.exe directly but not when using it via cmake/cpack like we do.

> **[Qt Installer Framework 7zip exception not enough memory](https://forum.qt.io/topic/90613/qt-installer-framework-7zip-exception-not-enough-memory/15)**
>
> Hi, When I want to generate repository using repogen on Windows10 with Qt Installer Framework 3.0. I have an issue with 7zip: repogen.exe -p packages repository Caught 7zip exception: Cannot create archive "\\1.0.3lib.7z": not enough memory I have...

[https://bugreports.qt.io/browse/QTIFW-2354?focusedCommentId=638735&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-638735](https://bugreports.qt.io/browse/QTIFW-2354?focusedCommentId=638735&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-638735)

---

<div class="post-metadata">

### Author: ![Kelteseth](https://forum.screen-play.app/user_avatar/forum.screen-play.app/kelteseth/32/3_2.png) [@Kelteseth](https://forum.screen-play.app/u/Kelteseth)
#### Post date: [January 1, 2022, 1:54pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/19 "2022-01-01T13:54:51Z")

</div>

So apparently cmake contains a flag [CPack IFW Generator — CMake 3.22.20220101-gd8fc870 Documentation](https://cmake.org/cmake/help/git-stage/cpack_gen/ifw.html#variable:CPACK_IFW_ARCHIVE_FORMAT) but only in the next release

---

<div class="post-metadata">

### Author: ![tretrauit](https://forum.screen-play.app/user_avatar/forum.screen-play.app/tretrauit/32/21_2.png) [@tretrauit](https://forum.screen-play.app/u/tretrauit)
#### Post date: [January 2, 2022, 12:47pm UTC](https://forum.screen-play.app/t/refactor-build-script/34/20 "2022-01-02T12:47:59Z")

</div>

It seems that CQtDeployer create DistributionKit folder which contain a complete ScreenPlay build (with dependencies), but the artifact is having both ScreenPlay (that uses system dependencies) and the DistributionKit folder…

[Next page](https://forum.screen-play.app/t/refactor-build-script/34.md?page=2)
