Skip to content

Outdated Dockerfile.plasm5 #38

@afreyer

Description

@afreyer

Hi,

This is more of a question than an issue. I'm curious about best practices for using PyPlasm within a personalized Docker container. The current Dockerfile points to an invalid URL and uses binary files. I'd be interested in seeing alternative approaches.

For our project, we use PyPlasm with some adjustments in fenvs.py. We currently create the image as follows:

RUN wget https://github.com/afreyer/pyplasm/archive/refs/heads/DEV-5216-upgrade-fenvs.zip && \
    unzip DEV-5216-upgrade-fenvs.zip && \
    cd pyplasm-DEV-5216-upgrade-fenvs && \
    mkdir -p build && \
    cd build && \
    cmake -DPython_EXECUTABLE=/usr/local/bin/python3 ../ && \
    make -j && \
    make install && \
    cd Release/pyplasm && \
    python3 setup.py install && \
    cd ../../../ && \
    rm -rf DEV-5216-upgrade-fenvs.zip pyplasm-DEV-5216-upgrade-fenvs

Since the CMake file tries to initialize a JUCE GUI, I've modified xge.cpp to simply return nothing during initialization:

void XgeModule::init()
{
    return;
//  if (app) return;
//  juce::JUCEApplicationBase::createInstance = (juce::JUCEApplicationBase::CreateInstanceFunction)-1;//to avoid a juce assert
//
//  #if PYPLASM_APPLE
//  juce::initialiseNSApplication();
//  new juce::ScopedAutoReleasePool();
//  #endif
//  juce::initialiseJuce_GUI();
//  app=new XgeApplication();
//  app->initialiseApp();
}

//////////////////////////////////////////////////////////////////
void XgeModule::shutdown()
{
    return;
//  if (!app) return;
//  app->shutdownApp();
//  juce::shutdownJuce_GUI();
}

I'm not very familiar with C++. Is our current approach reasonable? We're particularly excited about the performance optimization - are there any best practices for ensuring we get the latest performance features within this setup?

Thank you in advance!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions