If you:
flycheck
not working properly over TRAMPThen consider using <code>sshfs</code> to mount your remote filesystem to local. This way, flycheck
will regard your files just as a local one, and works properly. Neat trick discovered today with my colleague (are you reading? :P)
You can also use sshfs on any server that supports sftp and on any client with FUSE.
It's not idiot proof in that permissions can be wonky depending on your destination system.
Technically you can use sshfs to mount a remote folder locally - but it is not great for constantly editing files, and it can lock up if you lose connection.
You can install/use nano on the remote which you might find nicer. Or install and use full vim which is a huge improvement over vi - but still takes a while to learn (well worth the time to invest in learning it).
You don't mention what OS(s) you're trying to support, so I'll have to assume Linux. If that's the case - you can do a simple setup with KeePass2 and sshfs.
Host your own database file on your server - use certificate and sshfs to mount the share to your local device - KeePass2 reads it after you enter Master Pass.
You can configure ssh to not allow user/pass and restrict to one user (yours). Anyone trying to get to your database file via SSH will simply be thwarted. Use big keys for good times.
Check out sshfs on github and a good tutorial by digitalocean it uses the ssh protocol to mount a folder from the pi on your local machine.
It is in the default repository so a simple
sudo apt-get install sshfs
will get you started.
for a basic setup with a linux desktop, install sshfs on both the pi and your linux computer. For other platforms consult the digital ocean page.
Then on you local machine
mkdir /path/to/mount/point
sshfs pi@(pi's ip address):/var/www/html /path/to/mount/point
Sublime is a good text editor and to each their own (personally I have started to use vim) I experimented with brackets for a bit and it is a pretty neat text editor designed for web developers with a live preview option.
edited to fix some formatting and legibility.
One solution would be to mount the relevant directory of the server locally with sshfs on your normal computer. Then you can access it normally with Sublime Text (or another tool).
It means it launched, and that's the PID. What it's doing though I have no idea. I've never used sublime.
However as an alternative, I might recommend something like sshfs instead. It'll allow you to use all your heavy weight development tools locally, without having to install all the bloat onto the server. It'll also run a lot smoother without having to do X11 forwarding.
I use sshfs if I want "casual" access to stuff on a remote server.
-Edit; I misread the context of the question, probably completely useless for what you want, but definitely useful for individual use.
Use sshfs to mount the remote system as a FUSE volume and directly edit the files on the remote system.
Alternatively, if you don't want to edit the files on the server directly, consider putting the files in a fit repository and pulling from the server when you want to update. Added bonus of you have all your files under version control.
Instead of keeping your whole workflow in Emacs for its remote editing, you can also use SSHFS. That way, you can mount a remote location over SSH so that it appears as a local directory, and any editor, image viewer, or any other application can access the remote files.
To me, that seems like a more reasonable choice than embedding an operating system in a text editor.
sshfs might help you here. it allows you to mount a remote file system as if it were a local folder <-- you can then just interact with the remote codebase using your own local apps
​
it's obviously a little bit slower then interacting with local files, but if all you're doing is editing scripts, then it's not really an issue.
​
Beyond that, I think your only other option is something like VNC
https://github.com/libfuse/sshfs
I probably wouldn't recommend using it permanently, but... it's so convenient.
sshfs [user@]hostname:[directory] /mountpoint
and it just works. performance is on par with other network filesystems too.
if you really want to use it permanently it can be added to fstab very easily too :
sshfs#:/ /mountpoint
if Digital Ocean recommends it, how bad can it be ? ;)
You can mount the remote device's filesystem and use it just like it was a normal drive with sshfs
You can also use SSH to remotely develop on a, say, Raspberry Pi with this Visual Studio Code extension
sshfs basically allows you to see the file system on the rM under a directory on a local machine which can reach the tablet via a network. (Such as the one-to-one connection by USB.) You can then interact with the files in any way you'd interact with local files.
To me, sshfs is big because of this generality, and my primary planned use case is to pull
incremental backups of the user data stored in /home/root/.local/share/remarkable/xochitl
from the device. With the two-command setup described in the first post, I have convenient
read access to these data as a plain user and can go about it without invoking sudo
even once.
>In fact, having to download/re-upload the script with each new version/bug-fix makes it seem even more inconvenient? Am I missing something here, or have I over-hyped the value of an IDE?
You are missing SSHFS or any other remote filesystem that allows you to make the files from the HPC available on your local system. With it you can edit files as if they were stored on on your local disk. No more copying needed.
The term IDE is a bit fuzzy, because the range of features that an IDE can have can be very different. I'm still a happy Vim user, but I recognize that some IDEs have refactoring support that allows efficient renaming and restructuring of larger code projects. But there are also some Vim plugins that make this possible. But for typical bioinformatics Python projects it doesn't really seem to be necessary.
But what most IDEs have is a way to run the code that you have written directly inside the IDE. I think this is overrated, because you can have a terminal right next to the editor. This can easily be achieved with tiling window managers or tmux over SSH.
Read documentation, you can run sshfs
command on the command line with whatever parameters you want. E.g., it is possible to run
sshfs root@somewhere:/remote-directory/ /local-mountpoint/
(and much more).
IMO the optimal workflow is for you to pick up version control. If you're totally new Mercurial (hg) is very user friendly, but it doesn't have the market share of git - which is a consideration if you're thinking about salable skills. However I will add that the concepts are almost 100% the same between the two, it's just that git presents as a more complicated user front end.
In the absence of doing that, another approach is to skip the implementation in Nautilus and use SSHFS directly. It's not that hard, and it probably won't be as flaky as using a GUI file manager to handle it.
I used to a mix of these solutions to do development on my Digital Ocean droplet before I got more familiar with CLI tools.
sshfs works pretty well for mounting a remote location via SSH, though you will be dealing with network latency and it gets annoying fast (IMO).
As for an IDE I think Eclipse has plugin support for mounting via SSH and other protocols. I've never used any of them though so I'm not sure how well they work.
Linux Deploy is great to have access to a bunch of command line tools, programming and scripting stuff. I have a lot of pet projects I'm working on which uses a wide range of tools (python, C and go primarily). Normally I'd use Termux but it's missing many packages like a lot of development libraries and stuff. On the other hand, my Linux install is Arch Linux (ARM) which is fairly lightweight but full-fledged so it's really handy.
As for ssh, I use it for accessing my phone from the PC wirelessly, mainly for file transfers and backups. For backups, I've got a Tasker script which runs rsync to sync my photos, Titanium Backup and some other folders.
On the PC I use sshfs, which mounts my phone like a local drive, which is super convenient as I can use a normal file manager and other tools to access my phone - it's a heck lot more reliable and convenient than MTP or other file transfer apps (at least for me)!
I recently discovered sshfs ( https://github.com/libfuse/sshfs ). It's most likely available in your linux distro repository. I find it both cleaner and more robust remote editing solution than netrw. ( but use some of these tips to speed it up http://www.admin-magazine.com/HPC/Articles/Sharing-Data-with-SSHFS )
I had a workflow like this at a previous job. I used fuse ssh filesystem (something like this) to mount the remote directory locally over ssh, and edit them with my local client (which I actually think was eclipse at the time). It might be a viable workaround if you can't run vim remotely like others have mentioned
It sounds like you are trying to setup your Pi to act as a home gateway. Do you not already have a home gateway with WiFi capability?
Anyway, once you have your NAS on your local WiFi network, whether it be by a home gateway or by a Raspberry Pi, you can just connect to the device via a Samba client (I assume your NAS runs Samba, that is the most common setup for consumer NAS devices).
If you want you can Samba-mount the NAS to a Raspberry Pi and re-share the files over SFTP or SSHFS or whatever you like, since the Pi can serve pretty much any protocol you like. But the easiest way to do this is just connect to the NAS directly using whatever protocol it uses natively.
The current size of the Litecoin blockchain is about 8gb, not 20.
If you want to store the blockchain on another server, you could try something like a network filesystem (like sshfs), but I don't think this is an ideal solution.
With a Raspberry Pi a 16Gb SD card should be enough for now.
> GUI SCP (like winscp)
You can mount remote filesystems via SSHFS: https://github.com/libfuse/sshfs
Then any file manager will do.
I'm pretty sure all modern file managers actually support SSH mounting via a GUI anyway. At least dolphin and nautilus do as far as I know.
I tend to mount by command line with sshfs and then use it via CLI or GUI.
If you want a split screen window, dolphin and midnight commander support it.
Say you name your project nc *wink, wink*.
You can start vim do %!nc -l 8901
which should open a TCP listener on port 8901, and then read all the output into your active buffer.
On the remote end you would type/open a file and then send it to your listener with :w !nc 127.0.0.1 8901
.
Et Voilà!
That said, I doubt this is what you are looking for. Or at least I wouldn't do it that way — seems counterproductive.
A better option would be to use something like sshfs or create your own file system with (libfuse)[https://github.com/libfuse/libfuse]. That way you could connect a folder to another server and use the editor of your choice.
And yes, there is a Python interface for libfuse.