Compare commits

..

No commits in common. "00e5347d5530360971aabd27d8ec8ceb24599f48" and "40bac1987a866d8bcda94c85fcb11c2022816480" have entirely different histories.

6 changed files with 341 additions and 1257 deletions

View file

@ -8,7 +8,7 @@ on:
jobs: jobs:
build: build:
runs-on: [host-amd] runs-on: [docker]
env: env:
BRANCH: ${{ github.ref_name }} BRANCH: ${{ github.ref_name }}
COMMIT: ${{ github.sha }} COMMIT: ${{ github.sha }}
@ -20,9 +20,7 @@ jobs:
- name: Compile tux-dock - name: Compile tux-dock
run: | run: |
cmake -S . -B build g++ -std=c++17 main.cpp -o tux-dock
cmake --build build -j
cp build/tux-dock ./tux-dock
chmod +x tux-dock chmod +x tux-dock
echo "🎉 tux-dock compiled and marked executable!" echo "🎉 tux-dock compiled and marked executable!"
@ -44,3 +42,4 @@ jobs:
name: tux-dock-linux-x86_64-${{ env.BRANCH }}-${{ env.COMMIT }} name: tux-dock-linux-x86_64-${{ env.BRANCH }}-${{ env.COMMIT }}
path: tux-dock-linux-x86_64-${{ env.BRANCH }}-*.tar.gz path: tux-dock-linux-x86_64-${{ env.BRANCH }}-*.tar.gz

1
.gitignore vendored
View file

@ -1 +0,0 @@
build/

View file

@ -1,30 +0,0 @@
cmake_minimum_required(VERSION 3.16)
project(tux-dock LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
include(FetchContent)
set(FTXUI_BUILD_DOCS OFF CACHE BOOL "" FORCE)
set(FTXUI_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
set(FTXUI_BUILD_TESTS OFF CACHE BOOL "" FORCE)
FetchContent_Declare(
ftxui
GIT_REPOSITORY https://github.com/ArthurSonzogni/FTXUI.git
GIT_TAG v5.0.0
)
FetchContent_MakeAvailable(ftxui)
add_executable(tux-dock main.cpp)
target_link_libraries(tux-dock
PRIVATE
ftxui::screen
ftxui::dom
ftxui::component
)

View file

@ -24,7 +24,6 @@ It offers a clean, interactive menu for common Docker operations like pulling im
- **C++17 or newer** compiler - **C++17 or newer** compiler
(e.g., `g++`, `clang++`) (e.g., `g++`, `clang++`)
- **CMake 3.16+**
- **Docker Engine** installed and running - **Docker Engine** installed and running
(tested on Debian 12/13, Alpine Linux, and Arch Linux) (tested on Debian 12/13, Alpine Linux, and Arch Linux)
@ -37,13 +36,12 @@ It offers a clean, interactive menu for common Docker operations like pulling im
git clone https://mentalnet.xyz/forgejo/markmental/tuxdock.git git clone https://mentalnet.xyz/forgejo/markmental/tuxdock.git
cd tuxdock cd tuxdock
# Configure & build (FTXUI is fetched automatically) # Build the binary
cmake -S . -B build g++ -std=c++17 main.cpp -o tux-dock
cmake --build build -j
# Run it (requires Docker permissions) # Run it (requires Docker permissions)
sudo ./build/tux-dock sudo ./tux-dock
``` ````
Prefer a prebuilt binary? The CI runner publishes build artifacts for the latest commits at: Prefer a prebuilt binary? The CI runner publishes build artifacts for the latest commits at:
https://mentalnet.xyz/forgejo/markmental/tuxdock/actions https://mentalnet.xyz/forgejo/markmental/tuxdock/actions

View file

@ -1,3 +1,3 @@
#!/bin/sh #!/bin/sh
cmake -S . -B build && cmake --build build -j && echo "tux-dock successfully compiled!" g++ -std=c++17 main.cpp -o tux-dock && echo "tux-dock successfully compiled!"

1548
main.cpp

File diff suppressed because it is too large Load diff