Coder Social home page Coder Social logo

marlin-build's People

Contributors

ctcdnightmare avatar frealmyr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

marlin-build's Issues

problem to compile .env with personalized firmware names

hi
i'm trying to use your awesome script to compile firmware to env: mks_robin_nano35
But i have a trouble:

Cause this env generate a personalized name such mks.robin_nano35.bin to firmware i cannot finish md5 checksuM (file not found)

look at this error:
Copying compiled firmware to output folder..
/home/platformio/build-marlin.sh: line 76: [: ./firmware.bin: unary operator expected
MD5 Checksum Validation: Firmware file with bin file extension not found

Build failed! Check the output above for errors
Error: Process completed with exit code 1.

Does custom repo work?

Hi,

I tried to use a custom repo as was added in #12

however this is my build output in the action:

Status: Downloaded newer image for frealmyr/marlin-build:latest

Override Detected
Switching git repository to: https://github.com/tinuva/B1-SE-SKR2

Cloning into 'B1-SE-SKR2'...
/home/platformio/build-marlin.sh: line 34: cd: Marlin/: No such file or directory
fatal: not a git repository (or any of the parent directories): .git

You are using git tag from docker image: 

cp: cannot create regular file '/home/platformio/Marlin/Marlin/Configuration_adv.h': No such file or directory
cp: cannot create regular file '/home/platformio/Marlin/Marlin/Configuration.h': No such file or directory
sed: can't read /home/platformio/Marlin/platformio.ini: No such file or directory

I do have a Marlin folder inside my repo but I suspect its where the script expect it to be. Eg. its probably at B1-SE-SKR2/Marlin instead of Marin.

Am I doing something wrong or is this not fully tested?

8 bit hex files

First thank you for this great docker image. I think it's an awesome idea for using github actions to keep firmware updated whenever you want. One thing I ran into is that I'm one of the old timers with an 8 bit board still and my mega2560 based firmware compiles into a hex file, not bin. Therefore, when the process gets to where it checks the md5, etc. it fails because the file is not there. Would be great to have an env variable for bin vs hex or something similar or am I missing an existing option?

Request: Multiple builds from different configs

At the moment, we can supply our own configuration file pairs, and they are copied over the originals before a build, and it's working well.

I was thinking, it would be nice to have a way to build two (or more) firmwares at a time, to compare their results. Of course, I could do this manually by just making one then making the other, but it would be nice to only have to press the magic button once ;)

I'm hoping this might be very simple, rather than copying the file pairs before the build, it could look for directories there, and do one build for each directory it finds, with the config files from that directory.

What do you think?

Local branch is not updated

Try to compile the firmware using branch bugfix-2.1.x. The local branch is checked out but not updated to the origin.

Override Detected
From https://github.com/MarlinFirmware/Marlin
   01f96a103b..aaa4e8ecdb  2.0.x        -> origin/2.0.x
   eff60964da..e7c4a86830  2.1.x        -> origin/2.1.x
   d1211b9f90..a6cc7a4f35  bugfix-2.0.x -> origin/bugfix-2.0.x
   bfa5e9b584..3be967bcb4  bugfix-2.1.x -> origin/bugfix-2.1.x
 * [new tag]               2.1.2        -> 2.1.2
Previous HEAD position was 398cae[76](https://github.com/4piu/Marlin-Lazy-Build/actions/runs/4063136776/jobs/6995015648#step:3:77)25 ๐Ÿ”– Version 2.1.1
Switched to branch 'bugfix-2.1.x'
Your branch is behind 'origin/bugfix-2.1.x' by 211 commits, and can be fast-forwarded.
  (use "git pull" to update your local branch)

You are now using the latest commit in branch: bugfix-2.1.x

Advanced configuration within src/

In some cases you might want to change the variables not covered by .h configuration files alone, and you need to make changes inside the MarlinFirmware/Marlin/src folder.

The script currently have no logic for replacing files inside sub-folders.

Add docker image

Planning to add a docker image

  • Use github packages for hosting Looks like they still require login, using docker hub
  • Github Action for building and pushing image
  • GHA cron task for monthly building
  • Flag in script for building image locally

Logic for using branches instead of tags

Some users might want to use a branch, such as bugfix-2.0.x, instead of the latest release tag.

  • Add flag to script for overriding tag/branch
  • Re-use logic for fetching all commits in tag/branch

Failure to upload build for new board

First off, thanks for this, it's really showing off the power of the tools you've used in an elegant way!

I'm fork #1 so I was bound to find some small issue ;) My build failed to push to the repo the first time out, giving me the error:

Untracked files:
  (use "git add <file>..." to include in what will be committed)
	Firmware/Builds/STM32F103RET6_creality/

nothing added to commit but untracked files present (use "git add" to track)
Error: Process completed with exit code 1.

https://github.com/xcasxcursex/Ender3v2Marlin/runs/1503176605?check_suite_focus=true

A quick search led me to simply add a line to the push job:

git add .
https://github.com/xcasxcursex/Ender3v2Marlin/commit/a7f7a2cbc5e2221ba18353286b95a4db7e94cdff

This seems to have fixed things but I'm not proficient enough to know if this is the 'right' way to fix it, so instead of a PR, I've filed this issue.

compile on arm64 issue

Hi,
when compiling w a 64bit OS on my pi,
the docker run throws an error:

"Processing STM32F103RET6_creality (platform: ststm32@~12.1; board: genericSTM32F103RE; framework: arduino)

Platform Manager: Installing ststm32 @ ~12.1
Downloading [####################################] 100%
Unpacking [####################################] 100%
Platform Manager: ststm32 @ 12.1.1 has been installed!
The platform 'ststm32@~12.1' has been successfully installed!
The rest of the packages will be installed later depending on your build environment.
Tool Manager: Installing platformio/toolchain-gccarmnoneeabi @ ~1.90201.0
Error: Could not find the package with 'platformio/toolchain-gccarmnoneeabi @ ~1.90201.0' requirements for your system 'linux_aarch64'

Build failed! Check the output above for errors"

-> I am trying to find why 12.1 is being used...

Request: Use alternative marlin repo

It would be great if we could use environment vars (as with other configuration options) to specify the git repository to clone and build. This way, we could point the build script at a fork.

Thanks :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.