rfm - RepRapFirmware FileManager [duetbackup successor]
-
I would like the express my interest in this awesome project. The RPi that accompanies my printer is perfect to make scheduled backups.
-
I'm sorry but you don't have enough "R"s or "F"s in there. Should be "rrffm"
-
@dougal1957 No, it's for the same platforms as
duetbackup
was, i.e. Windows, Linux and Macamd64
as well as Linuxarm
(e.g. Raspberry Pi) andarm64
(some other SBC boards). -
@gtj0 Believe me, you don't want that. It was the working title while development. It's a PITA to type and typo guarantee.
P.S.: a friend of mine asked if I can somehow get a "t" in there and some letter swapping to get
rtfm
. -
@nxt-1 I also use a RPi to perform the backups. In case you have Arch Linux running on your Pi: I plan to make an AUR package as well.
-
@wilriker said in rfm - RepRapFirmware FileManager [duetbackup successor]:
@gtj0 Believe me, you don't want that. It was the working title while development. It's a PITA to type and typo guarantee.
P.S.: a friend of mine asked if I can someone get a "t" in there and some letter swapping to get
rtfm
.That was going to be my next suggestion.
-
@gtj0 said in rfm - RepRapFirmware FileManager [duetbackup successor]:
That was going to be my next suggestion.
Feel free to fork and rename it.
-
Hi @wilriker,
Found a small "issue".
If rfm is called with no arguments (I know it should not called with no args), the program exit with panic because of an invalid array access (function args). Better would be to show a proper message.Further tests are outstanding. I had not the time to test it yet.
Regards,
Martin -
@mloidl Thanks! I fixed it in the source code and it will be in the next release.
Probably also in the next release will be a couple of changes
- Parameters relevant for connection (i.e.
domain
,port
andpassword
) can be put into a file in the user's home directory so they don't have to be provided on the command line everytime - Some parameters that are currently given as
-parametername value
will be shortened to justvalue
but then have to follow a strict ordering in case there is more than one (this resembles more common CLI tools) - Adding
help
pages similar to the mainhelp
output for sub-commands
- Parameters relevant for connection (i.e.
-
@wilriker thanks for the quick fix.
Regarding config file for connection parameter:
For users having multiple duet-based printers it would be cool to to store all these connections settingsdomain
,port
andpassword
in a kind of connection group.
e.g.[printer1] domain=<printer1-ip> port=<printer1-port> password=<printer1-pw> [printer2] ....
Usage then could be
rfm -device printer1 <cmd>
I did something similar in a python-based backup script for my daily backups and found this very useful.
What's your opinion about this?
-
@mloidl I like that and will implement something like this. But even though I listed it first it's currently last in priority.
-
@wilriker My vote goes for RepRapFirmware Total File Manager
-
@t3p3tony said in rfm - RepRapFirmware FileManager [duetbackup successor]:
@wilriker My vote goes for RepRapFirmware Total File Manager
Yeah, that's what I thought of, too.
Also another good idea might be
"[File-]Resource Manager for RepRapFirmware-based Filesystems" ->rm-rf
(Windows user's probably won't get this one) -
You are evil! I wonder if anyone would even dare to use the tool in Linux then.
-
@wilriker said in rfm - RepRapFirmware FileManager [duetbackup successor]:
@t3p3tony said in rfm - RepRapFirmware FileManager [duetbackup successor]:
@wilriker My vote goes for RepRapFirmware Total File Manager
Yeah, that's what I thought of, too.
Also another good idea might be
"[File-]Resource Manager for RepRapFirmware-based Filesystems" ->rm-rf
(Windows user's probably won't get this one)I "googled" that and came up with "force deletion of everything in the root directory". That's the equivalent of a "nuke" button isn't it?
-
@obeliks said in rfm - RepRapFirmware FileManager [duetbackup successor]:
You are evil! I wonder if anyone would even dare to use the tool in Linux then.
I was trying hard to find any reason to also add a
/
at the end to make it even more evil. And top class would be to getsudo
prepended.sudo-rm-rf/
. Perfect name for any tool on Linux. -
@deckingman said in rfm - RepRapFirmware FileManager [duetbackup successor]:
I "googled" that and came up with "force deletion of everything in the root directory". That's the equivalent of a "nuke" button isn't it?
More or less. There are some protections in place but if you run
rm -rf / [note the spaces]
either as
root
user (admin user with full privileges in Linux) or prepend it withsudo
(which will provide a regular user with root-rights) it will do exactly that. It will erase all contents of your hard-drive and depending on the configuration also of all mounted external drives. Not as fast as a giant hammer but fast enough to have made probably unrecoverable damage until you notice. -
@wilriker said in rfm - RepRapFirmware FileManager [duetbackup successor]:
@obeliks said in rfm - RepRapFirmware FileManager [duetbackup successor]:
You are evil! I wonder if anyone would even dare to use the tool in Linux then.
I was trying hard to find any reason to also add a
/
at the end to make it even more evil. And top class would be to getsudo
prepended.sudo-rm-rf/
. Perfect name for any tool on Linux.That is a lot of nonoes in one sentence
-
Back to business:
Release v1.0.0-RC2
I have just release v1.0.0-RC2.
Changes
Help
This second release candidate has help texts for every sub-command now that are accessible via
rfm help <command>
Command Structure
The second major change is the structure of the parameters and options. This now resembles better the style of common CLI tools. Please see the appropriate help pages to see the format.
rfm backup
ChangesMost notably also the format for
rfm backup
changed. This now isrfm backup <common-options> [-removeLocal] [-exclude <excludepattern>]* [<local/path> [<remote/path>]]
where
-outDir
has been reduced to<local/path>
with a default of the current directory if omitted and-dirToBackup
is shortened to<remote/path>
. The default is still0:/sys
. In case this needs to be changed the local directory also has to be provided.rfm ls
rfm ls
now accepts multiple remote paths to list.Fixes
- panic when no sub-command is provided is replaced with default help text
- Uploading single files was broken
-
Release v1.0.0
And here comes the first official release v1.0.0.
Release Notes
This release implements all functions listed in README.md, i.e. it can
- download files
- upload files and folder
- backup (like
duetbackup
did before but slightly different and simplified syntax) - list directory contents
- move or rename files and directories
- create directories
- delete files and directories
This covers all functions of the HTTP interface.
Also it is capable of handling multiple devices via an automatically managed configuration file.
As usual there are releases for Linux x86_64, Windows x86_64, MacOS X x86_64, Linux ARM and Linux ARM64.