Commit Graph

96 Commits

Author SHA1 Message Date
tcely
53ad31d128 Merge branch 'main' into patch-4 2025-01-15 04:35:43 -05:00
tcely
2860147212 Build on older docker also
* Do without --link for COPY or ADD

* Do without --checksum for ADD

* Trim the FFMPEG_VERSION variable with cut instead

I've built successfully on old Debian systems using these changes. Everything else I use has a newer docker on it.
2025-01-12 04:46:32 -05:00
tcely
5e5d011b64 Add parser directives
This hopefully helps anyone building on an older docker, such as Debian / Ubuntu packaged versions.
2025-01-12 00:49:19 -05:00
tcely
ef4181c2c4 Dockerfile syntax and checks
- Specify the syntax be the latest stable version and that failed checks should stop the build.

```
By default, builds with failing build checks exit with a zero status code despite warnings. To make the build fail on warnings, set #check=error=true.
```

- Use the form of health checking that doesn't involve an extra shell on every check.
2025-01-12 00:37:30 -05:00
tcely
4364ebbff3 Multi-stage docker build for ffmpeg & s6-overlay
* Create a s6-overlay-extracted stage to copy from

This was largely inspired by: @socheatsok78

Our downloaded files are checked where that version doesn't do any verification of the downloads.

* Update ffmpeg to the first build with checksums.sha256

* Create a ffmpeg-extracted stage to copy from

* Don't preserve ownership from the builder

I was sick of the extra work with ffmpeg builds.

So, I managed to get sums generated for those builds and now we don't need to manually fill out SHA256 hashes anymore.

Now to bump ffmpeg, we can just change the date.
2025-01-11 11:53:10 -05:00
tcely
7b42213bbb Keep curl and add less
These are very useful when using the shell inside the container and don't use much space.
2025-01-08 00:36:37 -05:00
tcely
f0b7d31949 Test and log ffmpeg version output earlier
Running the ffmpeg in an earlier (hopefully cached) layer should clean up the logs a bit.

On a related note, shadowing the environment variable was causing some confusing log output, so stop doing that as well.
2025-01-08 00:31:30 -05:00
meeb
b40564ff93 Merge pull request #596 from tcely/patch-8
Reduce image size and keep pycache in a volume
2024-12-26 12:44:42 +11:00
tcely
568698351d Use the N version of ffmpeg 2024-12-25 05:23:53 -05:00
tcely
3cea9270a0 Bump ffmpeg 2024-12-25 05:09:30 -05:00
tcely
7343e39f35 Verbose output is no longer needed
I confirmed that the changes reduced the amount of files being removed.
2024-12-25 00:32:03 -05:00
tcely
b9eb28fd36 There is a /config/cache directory we can safely use 2024-12-22 01:45:16 -05:00
tcely
2c26936035 fixup: remove the --no-cache-dir option 2024-12-21 20:23:47 -05:00
tcely
a2c97d2791 pipenv did not run with that option 2024-12-21 20:22:08 -05:00
tcely
f4c070ada7 Reduce image size and keep pycache in a volume
Not only are volumes typically faster to access than the image overlay, the cachee can be reused between containers.
2024-12-21 20:08:36 -05:00
meeb
bd72513d69 bump s6 to v3.2.0.2 2024-12-10 22:36:45 +11:00
meeb
26cb02be07 bump yt-dlp and ffmpeg, resolves #575 2024-12-10 22:30:09 +11:00
tcely
8f9bb782a7 Adjusted awk check
It turned out `exit` doesn't work as I thought it did.
2024-11-25 17:00:31 -05:00
tcely
6c7c1c6510 The response headers weren't useful 2024-11-24 08:34:34 -05:00
tcely
29dfe4570d Used awk to check for correct ffmpeg output 2024-11-24 08:16:34 -05:00
tcely
a921adedc0 Test the output for FFMPEG_VERSION exists
The shell used on the build system doesn't support `pipefail` so test for output instead.

It might be incorrect output, but in combination with running the `ffmpeg` binary earlier, this should be enough.
2024-11-24 07:13:19 -05:00
tcely
f4a88cf7fa Used the long form for all curl options. 2024-11-24 06:34:28 -05:00
tcely
163fcbeb2a Overwrite the specified file when it already exists 2024-11-24 06:10:30 -05:00
tcely
6b807a8654 Log the server response headers 2024-11-24 05:47:40 -05:00
tcely
3c5641b542 Ignore a curl config file that may exist 2024-11-24 05:44:22 -05:00
tcely
599728d38c Had file inspect the binary from the /init script instead. 2024-11-24 05:33:53 -05:00
tcely
10678afca2 Log what file determined about the extracted files 2024-11-24 00:33:45 -05:00
tcely
d4834e427f Failed ffmpeg is now noisier
This should be enough to fail the build when the binary doesn't work.
2024-11-24 00:27:33 -05:00
tcely
908b55c191 Show which directories were created 2024-11-24 00:21:57 -05:00
tcely
401c687725 Adjusted HOME only for pipenv
Nothing later should have been affected, but this is the cleaner way.
2024-11-24 00:18:51 -05:00
tcely
a60f68faf3 Used printf consistently
Specifically turn off flags to printf where none are intended.
There are fewer things to keep in mind this way.
2024-11-24 00:15:28 -05:00
tcely
304c36d648 Remove value from TARGETARCH
This should be set by the build system. I had stuck that value in while testing from the command line.
2024-11-22 12:55:21 -05:00
meeb
429cc66d26 bump yt-dlp and ffmpeg 2024-11-23 03:45:20 +11:00
tcely
83f2831439 More fixes from testing for download_expected_file
- Used download_expected_file for ffmpeg also
- Updated to a ffmpeg version that could be downloaded
- Optimized tar extraction for ffmpeg
- Preserved the original `/root` using a copy in `/tmp` instead
- DRY'd the file name and expected / URL values
2024-11-22 10:43:00 -05:00
tcely
8885571c5a Fixes from testing for download_expected_file 2024-11-22 06:39:35 -05:00
tcely
e654eca107 Used download_expected_file for s6 2024-11-22 05:48:08 -05:00
tcely
17b03e2c69 Moved s6 hashes into build args 2024-11-22 04:24:21 -05:00
tcely
23cf332d02 Record version values in the container
I'm tempted to use a .environment file to set the build argument values so that there is less to change for new versions.

Perhaps later 

Also, I am unsure why we don't just use `ARCH="${TARGET ARCH}"` since we are only using `ARCH` in things we control, as far as I can tell.
2024-11-22 03:31:54 -05:00
meeb
cca45e06d1 bump ffmpeg and yt-dlp 2024-10-31 20:15:46 +11:00
meeb
65229c3e9f bump s6 to 3.2.0.0, bump ffmpeg, bump yt-dlp 2024-10-05 19:32:28 +10:00
meeb
5af3d116bd bump ffmpeg and yt-dlp 2024-08-07 15:53:27 +10:00
meeb
7d9f2005e4 bump ffmpeg and yt-dlp 2024-08-03 19:50:47 +10:00
meeb
9b2300d8f6 bump ffmpeg 2024-07-28 18:10:39 +10:00
Tim
b0c09ded47 Sort install lists so we can easily uninstall the build deps 2024-07-13 16:16:35 +08:00
Tim
14429fd478 Improve docker build to make use of caching more 2024-07-13 07:46:54 +08:00
meeb
65b5643705 bump yt-dlp, ffmpeg and libs 2024-07-11 01:34:44 +10:00
meeb
7ad54c1ecc bump ffmpeg 2024-04-29 02:03:04 +10:00
meeb
00af9db864 bump ffmpeg to 2024-02-25-15-18 2024-03-13 15:06:48 +11:00
meeb
688517069a bump ffmpeg to autobuild-2024-02-25-15-18 2024-02-26 17:33:27 +11:00
meeb
adf26cb4e3 bump ffmpeg to autobuild-2023-11-29-14-19 2023-11-30 18:49:50 +11:00