kbz_8 c7c60c240a Bump actions/first-interaction from 1 to 2 (#146)
Bumps
[actions/first-interaction](https://github.com/actions/first-interaction)
from 1 to 2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/first-interaction/releases">actions/first-interaction's
releases</a>.</em></p>
<blockquote>
<h2>v2.0.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Installed <code>@​actions/core</code> by <a
href="https://github.com/TheGuptaEmpire"><code>@​TheGuptaEmpire</code></a>
in <a
href="https://redirect.github.com/actions/first-interaction/pull/274">actions/first-interaction#274</a></li>
<li>Update README.md by <a
href="https://github.com/Alirezaaraby"><code>@​Alirezaaraby</code></a>
in <a
href="https://redirect.github.com/actions/first-interaction/pull/75">actions/first-interaction#75</a></li>
<li>DOC: adjust the example to show a full yaml file by <a
href="https://github.com/tacaswell"><code>@​tacaswell</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/36">actions/first-interaction#36</a></li>
<li>Demonstrate |- multiline YAML string in README by <a
href="https://github.com/simonw"><code>@​simonw</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/16">actions/first-interaction#16</a></li>
<li>Update README.md by <a
href="https://github.com/nebuk89"><code>@​nebuk89</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/317">actions/first-interaction#317</a></li>
<li>Convert from Container to TypeScript Action by <a
href="https://github.com/ncalteen"><code>@​ncalteen</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/311">actions/first-interaction#311</a></li>
<li>Bump <code>@​octokit/types</code> from 13.8.0 to 14.1.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/323">actions/first-interaction#323</a></li>
<li>Bump undici from 5.28.5 to 5.29.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/319">actions/first-interaction#319</a></li>
<li>Bump the npm-development group with 16 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/320">actions/first-interaction#320</a></li>
<li>Bump <code>@​actions/github</code> from 6.0.0 to 6.0.1 in the
npm-production group by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/321">actions/first-interaction#321</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/TheGuptaEmpire"><code>@​TheGuptaEmpire</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/274">actions/first-interaction#274</a></li>
<li><a
href="https://github.com/Alirezaaraby"><code>@​Alirezaaraby</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/75">actions/first-interaction#75</a></li>
<li><a href="https://github.com/tacaswell"><code>@​tacaswell</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/36">actions/first-interaction#36</a></li>
<li><a href="https://github.com/simonw"><code>@​simonw</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/16">actions/first-interaction#16</a></li>
<li><a href="https://github.com/nebuk89"><code>@​nebuk89</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/317">actions/first-interaction#317</a></li>
<li><a href="https://github.com/ncalteen"><code>@​ncalteen</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/311">actions/first-interaction#311</a></li>
<li><a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/323">actions/first-interaction#323</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/first-interaction/compare/v1.3.0...v2.0.0">https://github.com/actions/first-interaction/compare/v1.3.0...v2.0.0</a></p>
<h2>v1.3.0</h2>
<h1>Upgrade our base image from node v14 -&gt; v20</h1>
<p>Add dependency on <code>@octokit/rest</code> and
<code>@actions/http-client</code>.</p>
<p>👉 See the PR for details: <a
href="https://redirect.github.com/actions/first-interaction/pull/287">actions/first-interaction#287</a></p>
<h2>v1.2.0</h2>
<h1>Upgrade our codeql actions from v1 -&gt; v2</h1>
<p>Updates <code>github/codeql-action/init</code>,
<code>github/codeql-action/autobuild</code>, and
<code>github/codeql-action/analyze</code> to <code>v2</code>.</p>
<p>👉 See the PR for details: <a
href="https://redirect.github.com/actions/first-interaction/pull/275">actions/first-interaction#275</a></p>
<h2>v1.1.1</h2>
<p>Update bundled <code>@actions/toolkit</code> packages to fix <a
href="https://redirect.github.com/actions/first-interaction/issues/101">actions/first-interaction#101</a></p>
<h2>v1.1.0</h2>
<p>No release notes provided.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="2d4393e6bc"><code>2d4393e</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/first-interaction/issues/321">#321</a>
from actions/dependabot/npm_and_yarn/npm-production-b...</li>
<li><a
href="4dbde70384"><code>4dbde70</code></a>
Rebuild dist</li>
<li><a
href="329f5ebce9"><code>329f5eb</code></a>
Bump <code>@​actions/github</code> from 6.0.0 to 6.0.1 in the
npm-production group</li>
<li><a
href="a7b6951cb1"><code>a7b6951</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/first-interaction/issues/320">#320</a>
from actions/dependabot/npm_and_yarn/npm-development-...</li>
<li><a
href="15ecaf52fe"><code>15ecaf5</code></a>
Rebuild dist</li>
<li><a
href="12e4e8b26d"><code>12e4e8b</code></a>
Bump the npm-development group with 16 updates</li>
<li><a
href="cf67d10ea1"><code>cf67d10</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/first-interaction/issues/319">#319</a>
from actions/dependabot/npm_and_yarn/undici-5.29.0</li>
<li><a
href="b2d4b15c5a"><code>b2d4b15</code></a>
Licensed cache</li>
<li><a
href="27d1ab5737"><code>27d1ab5</code></a>
Rebuild</li>
<li><a
href="6418932147"><code>6418932</code></a>
Bump undici from 5.28.5 to 5.29.0</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/first-interaction/compare/v1...v2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/first-interaction&package-manager=github_actions&previous-version=1&new-version=2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
2025-07-28 13:01:36 +02:00
2025-01-07 01:20:26 +01:00
2025-03-12 22:57:29 +01:00
2025-03-12 22:57:29 +01:00
2025-06-23 20:40:42 +02:00
2024-09-02 09:44:42 +02:00
2025-06-23 20:40:42 +02:00
2025-01-07 01:20:26 +01:00
2023-12-22 01:24:55 +01:00
2025-01-11 22:47:26 +01:00
2025-01-11 23:44:59 +01:00
2025-03-19 08:33:20 +01:00
2025-01-07 01:20:26 +01:00

drawing
MacroLibX, a rewrite of 42 School's MiniLibX using SDL2 and Vulkan.

The goal of this version is to provide a light, fast, and modern graphical tool.

🌟 Features

🚀 Performances

Built on top of Vulkan, the MacroLibX takes advantage of its very low-level nature to achieve high performance with great control over available resources.

💻 Cross-Platform

Designed to be totally cross-platform, it can run on any SDL2-supported platform that supports Vulkan (even the Nintendo Switch ! theoretically... ).

📖 It's all FOSS

Everything in this repo is entirely free and open source, all available under the MIT license (even the third-party libraries used).

🔍 Valgrind suppressions file

Experimental for now, a suppressions file for valgrind is given to remove potential leaks comming from Xorg, Nvidia drivers, SDL2, or any other tool which the user has no control. It is far from perfect at the moment and may allow some leaks but it will block the majority.

Error system

Strong error handling informing the user of problems with their code and even capable of informing them of graphics memory leaks that tools like Valgrind cannot detect.

🖥️ Installation

Dependencies

You first need to install the proper dependencies for your operating-system.

🐧 Linux

Here are a few common cases for different Linux distributions:

For Ubuntu/Debian-based distros:
sudo apt update
sudo apt install libsdl2-2.0-0 libsdl2-dev build-essential
For ArchLinux-based distros:
sudo pacman -S sdl2

Note that you need to have up do date video drivers with libvulkan.so installed.

🍎 macOS

MacroLibX on macOS requires SDL2 and MoltenVK. You can install both using the Homebrew package manager:

brew install molten-vk
brew install SDL2

🪟 Windows

To build on Windows you may need to use the xmake build. Here's how you can use it.

Clone and Build

Finally, you can clone the Git repository. When inside it, run the GNU make command to compile MacroLibX.

git clone https://github.com/seekrs/MacroLibX.git
cd MacroLibX
make

🔨 Compile your project

To compile your project with MacroLibX, you just provide the shared library path in your compilation/linking command:

clang myApp.c /path/to/MacroLibX/libmlx.so -lSDL2

And you can enjoy your project

drawing

⚙️ Some compilation configurations

📦 Compile mode

By default the mlx is built in release mode but you can switch to debug by using make DEBUG=true.

🦺 Safety

MacroLibX has a strong safety support, mainly by checking every pointer that you pass to it. But this safety has a cost that can be avoided by enabling DISABLE_ALL_SAFETIES=true before compiling but don't be afraid to recieve segmentation faults from the mlx.

🛠️ Set the toolchain

If you want to use GCC to build the mlx you can use make TOOLCHAIN=gcc

⚠️⚠️⚠️ 🖼️ Image optimisations ⚠️⚠️⚠️

If you run into glitches when writing or reading pixels from images you can turn off images optimisations by using make IMAGES_OPTIMIZED=false.

You can force the mlx to use your integrated GPU by using make FORCE_INTEGRATED_GPU=true. Note that there are a lot of chances that your application crashes by using that.

💽 Dump the graphics memory

The mlx can dump it's graphics memory use to json files every two seconds by enabling this option make GRAPHICS_MEMORY_DUMP=true.

License

This project and all its files, even the third_party directory or unless otherwise mentionned, are licenced under the MIT license.

Description
Rewritten version of the minilibx graphics API used at 42school, using SDL2 & Vulkan.
https://macrolibx.kbz8.me/ Readme MIT 23 MiB
Languages
C++ 94.1%
C 4.6%
Makefile 0.5%
Meson 0.4%
Shell 0.2%
Other 0.2%