Skip to content

Rebase to Selkies swap to appimage ingestion#8

Merged
thelamer merged 5 commits into
masterfrom
selkies
Jul 3, 2025
Merged

Rebase to Selkies swap to appimage ingestion#8
thelamer merged 5 commits into
masterfrom
selkies

Conversation

@thelamer

@thelamer thelamer commented Jul 3, 2025

Copy link
Copy Markdown
Member

So one downside to the appimage is size, it really is a kitchen sink. On the other hand though this is the functionality and packages the developers of the application want to be bundled with it, so that really should be honored and they know best. We can do it leaner from repos, but I think this is worth it for now.

This also rebases to Selkies, this image was at the end of the list as it is 3D accelerated and we do not have DRI3 yet in the stack, but given it is so out of date best to do it all at once.

Referencing all issues/PR I just closed:
#4
#2
#7
#6

We need to confirm that this is all setup how users can use it I am specifically now looking for information on freecadcmd, the binary is in the appimage at /opt/freecad/usr/bin but it will only work in that internal environment so it has to be launched like:

freecad freecadcmd

In this image, is that a known thing or does it need to be documented ?

The image can be tested with ghcr.io/linuxserver/lsiodev-freecad:1.0.1-selkies

min run command:

docker run --rm -it -p 3001:3001 --shm-size=1gb ghcr.io/linuxserver/lsiodev-freecad:1.0.1-selkies bash

Land on https://host:3001/
you can use nvidia with:

docker run --rm -it -p 3001:3001 --runtime nvidia --gpus all --shm-size=1gb ghcr.io/linuxserver/lsiodev-freecad:1.0.1-selkies bash

@tinuva

tinuva commented Jul 3, 2025

Copy link
Copy Markdown

So you are seeing that because you are mounting in the old home directory, that is a good testing point, the menu and autostart file are the old launchers. From a clean context it just works.

I will add logic to overwrite those files if they are not updated.

I'll also make the symlink no harm in that.

Correct. I was indeed mounting an old directory based on the previous image, however it contains my freecad configs with the toolbars set up the way I like.

ok @tinuva I updated the image to have a binary link, it is the cleanest solution you are correct there.

Please pull ghcr.io/linuxserver/lsiodev-freecad:1.0.1-selkies again and test.

If there are things missing here that users need now is the time.

The only thing I can say with certainty that will be fixed is the ugly cursor, that is going to be done in the base image though.

I just want to know about stuff like this plugin does not work or , like what users normally plug into this, if they need a taskbar for window management? I am asking this because I do not use FreeCAD I just package up desktop apps so I need that unique point of view to know what is a pain point or what is needed.

Ok I deleted the image and repulled it.

Testing confirms, it works 100% for me now as I expect. I am however a fairly basic user of freecad I would say.

For me, using only an intel gpu for acceleration, it is enough to get freecad to render fast enough for me. Without it, I have to say it was too slow using cpu rendering.

Here is a simplified version of my docker-compose config

  freecad:
    #image: lscr.io/linuxserver/freecad:latest
    image: ghcr.io/linuxserver/lsiodev-freecad:1.0.1-selkies
    container_name: freecad
    security_opt:
      - seccomp:unconfined #optional
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
      - DRINODE=/dev/dri/renderD128  # Specify the Intel GPU rendering device
    volumes:
      - /mnt/tank/docker/apps/freecad:/config
      - /mnt/tank/docker/apps/nextcloud/html/data/tinuva/files:/Files
    devices:
      - /dev/dri:/dev/dri  # Mount the DRI devices into the container
    #ports:
    #  - 3000:3000
    #  - 3001:3001
    restart: unless-stopped
    labels:
      - "traefik.http.routers.freecad-secure.middlewares=basic-auth@file" #basic-auth@file #oauth@file
      - "traefik.enable=true"
      - "traefik.http.routers.freecad-secure.tls=true"
      - "traefik.http.services.freecad.loadbalancer.server.port=3000"
      #- com.centurylinklabs.watchtower.enable=true

@LinuxServer-CI

Copy link
Copy Markdown
Collaborator

I am a bot, here are the test results for this PR:
https://ci-tests.linuxserver.io/lspipepr/freecad/1.0.1-pkg-049f4c24-dev-cf3958e313bfd9daf232ad345af61c41ddb0d2fe-pr-8/index.html
https://ci-tests.linuxserver.io/lspipepr/freecad/1.0.1-pkg-049f4c24-dev-cf3958e313bfd9daf232ad345af61c41ddb0d2fe-pr-8/shellcheck-result.xml

Tag Passed
amd64-1.0.1-pkg-049f4c24-dev-cf3958e313bfd9daf232ad345af61c41ddb0d2fe-pr-8
arm64v8-1.0.1-pkg-049f4c24-dev-cf3958e313bfd9daf232ad345af61c41ddb0d2fe-pr-8

@thelamer

thelamer commented Jul 3, 2025

Copy link
Copy Markdown
Member Author

@tinuva are you saying mounting in an intel GPU makes a difference for you in the new image ?
That should be impossible but I am all ears here how is it accelerating it we lack DRI3? Is it some kind of lower level acceleration it cannot have openGL is what I am saying.

@thelamer thelamer requested a review from a team July 3, 2025 14:39
@thelamer thelamer self-assigned this Jul 3, 2025
@thelamer thelamer added the work-in-progress Stale exempt label Jul 3, 2025
@LinuxServer-CI LinuxServer-CI moved this from PRs to PRs Ready For Team Review in Issue & PR Tracker Jul 3, 2025
@LinuxServer-CI

Copy link
Copy Markdown
Collaborator

I am a bot, here are the test results for this PR:
https://ci-tests.linuxserver.io/lspipepr/freecad/1.0.1-pkg-049f4c24-dev-d03e62125a059bec9134eee17955bceb866ebc62-pr-8/index.html
https://ci-tests.linuxserver.io/lspipepr/freecad/1.0.1-pkg-049f4c24-dev-d03e62125a059bec9134eee17955bceb866ebc62-pr-8/shellcheck-result.xml

Tag Passed
amd64-1.0.1-pkg-049f4c24-dev-d03e62125a059bec9134eee17955bceb866ebc62-pr-8
arm64v8-1.0.1-pkg-049f4c24-dev-d03e62125a059bec9134eee17955bceb866ebc62-pr-8

@tinuva

tinuva commented Jul 3, 2025

Copy link
Copy Markdown

@tinuva are you saying mounting in an intel GPU makes a difference for you in the new image ? That should be impossible but I am all ears here how is it accelerating it we lack DRI3? Is it some kind of lower level acceleration it cannot have openGL is what I am saying.

Tested now without in the new image, and seems to be the same. On the old image it definitely made a difference. Looks like I dont understand all the new changes enough to really know if it should make a difference or not, but its seems smooth enough without the dri items.

Then I hope the orca slicer gets rebased soon too in the future, thats the other image I use.

@thelamer

thelamer commented Jul 3, 2025

Copy link
Copy Markdown
Member Author

@tinuva are you saying mounting in an intel GPU makes a difference for you in the new image ? That should be impossible but I am all ears here how is it accelerating it we lack DRI3? Is it some kind of lower level acceleration it cannot have openGL is what I am saying.

Tested now without in the new image, and seems to be the same. On the old image it definitely made a difference. Looks like I dont understand all the new changes enough to really know if it should make a difference or not, but its seems smooth enough without the dri items.

Yeah that is my experience as well FreeCAD can run with just a CPU. As I said DRI3 is not in the new base yet it is a pending feature so just was pointing out that the Intel mount in will no longer have any effect until it is implemented.

Comment thread readme-vars.yml Outdated
@LinuxServer-CI LinuxServer-CI moved this from PRs Ready For Team Review to PRs in Issue & PR Tracker Jul 3, 2025
@LinuxServer-CI

Copy link
Copy Markdown
Collaborator

I am a bot, here are the test results for this PR:
https://ci-tests.linuxserver.io/lspipepr/freecad/1.0.1-pkg-049f4c24-dev-6e4118b832cb4cec4687418837e6751b8a0b532e-pr-8/index.html
https://ci-tests.linuxserver.io/lspipepr/freecad/1.0.1-pkg-049f4c24-dev-6e4118b832cb4cec4687418837e6751b8a0b532e-pr-8/shellcheck-result.xml

Tag Passed
amd64-1.0.1-pkg-049f4c24-dev-6e4118b832cb4cec4687418837e6751b8a0b532e-pr-8
arm64v8-1.0.1-pkg-049f4c24-dev-6e4118b832cb4cec4687418837e6751b8a0b532e-pr-8

@github-project-automation github-project-automation Bot moved this from PRs to PRs Approved in Issue & PR Tracker Jul 3, 2025
@thelamer thelamer merged commit 8e277e7 into master Jul 3, 2025
4 checks passed
@thelamer thelamer deleted the selkies branch July 3, 2025 19:24
@LinuxServer-CI LinuxServer-CI moved this from PRs Approved to Done in Issue & PR Tracker Jul 3, 2025
@thelamer

thelamer commented Jul 3, 2025

Copy link
Copy Markdown
Member Author

Ok @tinuva We are cut over and building now, thanks for the PR, the help, and the testing.

@thelamer

thelamer commented Jul 8, 2025

Copy link
Copy Markdown
Member Author

@tinuva DRI3 has been implemented the image is building now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

work-in-progress Stale exempt

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants