kost / mikrotik-npk

Python tools for manipulating Mikrotik NPK format
Other
77 stars 48 forks source link

createnpk.py for 6.x packages #7

Open caiot5 opened 5 years ago

caiot5 commented 5 years ago

Hi,

I noticed that createnpk.py was made only to create 2.9.x packages and it lacks support for 6.x. Digging into it a little more, I modified the header's hexadecimal values (with a hex editor, comparing the apropriated values with an actual 6.43.4 package) in order to "fake" a 6.43.4 package, however I noticed that the package made with createnpk.py has an old header format and the 6.x has a larger header and it has even a small footer. Whenever I try to install the package with RouterOS it looks for a package called system-6.43.4 which is already installed however the new package name is just plain "system" and it has a version argument containing its version number. The specific error is something like "Cannot install dude-6.43.4. Requires system-6.43.4 which is not installed"

That said, do you think would it be possible to write a new tool to encapsulate the 6.42+ squashfs package with npk?

I'm asking this because the oposite is true, we can unpack the npks with unnpk.

Thank you