Mobile Shell

Related tags

mosh
Overview

Build Status

Mosh: the mobile shell

Mosh is a remote terminal application that supports intermittent connectivity, allows roaming, and provides speculative local echo and line editing of user keystrokes.

It aims to support the typical interactive uses of SSH, plus:

  • Mosh keeps the session alive if the client goes to sleep and wakes up later, or temporarily loses its Internet connection.

  • Mosh allows the client and server to "roam" and change IP addresses, while keeping the connection alive. Unlike SSH, Mosh can be used while switching between Wi-Fi networks or from Wi-Fi to cellular data to wired Ethernet.

  • The Mosh client runs a predictive model of the server's behavior in the background and tries to guess intelligently how each keystroke will affect the screen state. When it is confident in its predictions, it will show them to the user while waiting for confirmation from the server. Most typing and uses of the left- and right-arrow keys can be echoed immediately.

    As a result, Mosh is usable on high-latency links, e.g. on a cellular data connection or spotty Wi-Fi. In distinction from previous attempts at local echo modes in other protocols, Mosh works properly with full-screen applications such as emacs, vi, alpine, and irssi, and automatically recovers from occasional prediction errors within an RTT. On high-latency links, Mosh underlines its predictions while they are outstanding and removes the underline when they are confirmed by the server.

Mosh does not support X forwarding or the non-interactive uses of SSH, including port forwarding.

Other features

  • Mosh adjusts its frame rate so as not to fill up network queues on slow links, so "Control-C" always works within an RTT to halt a runaway process.

  • Mosh warns the user when it has not heard from the server in a while.

  • Mosh supports lossy links that lose a significant fraction of their packets.

  • Mosh handles some Unicode edge cases better than SSH and existing terminal emulators by themselves, but requires a UTF-8 environment to run.

  • Mosh leverages SSH to set up the connection and authenticate users. Mosh does not contain any privileged (root) code.

Getting Mosh

The Mosh web site has information about packages for many operating systems, as well as instructions for building from source.

Note that mosh-client receives an AES session key as an environment variable. If you are porting Mosh to a new operating system, please make sure that a running process's environment variables are not readable by other users. We have confirmed that this is the case on GNU/Linux, OS X, and FreeBSD.

Usage

The mosh-client binary must exist on the user's machine, and the mosh-server binary on the remote host.

The user runs:

$ mosh [[email protected]]host

If the mosh-client or mosh-server binaries live outside the user's $PATH, mosh accepts the arguments --client=PATH and --server=PATH to select alternate locations. More options are documented in the mosh(1) manual page.

There are more examples and a FAQ on the Mosh web site.

How it works

The mosh program will SSH to [email protected] to establish the connection. SSH may prompt the user for a password or use public-key authentication to log in.

From this point, mosh runs the mosh-server process (as the user) on the server machine. The server process listens on a high UDP port and sends its port number and an AES-128 secret key back to the client over SSH. The SSH connection is then shut down and the terminal session begins over UDP.

If the client changes IP addresses, the server will begin sending to the client on the new IP address within a few seconds.

To function, Mosh requires UDP datagrams to be passed between client and server. By default, mosh uses a port number between 60000 and 61000, but the user can select a particular port with the -p option. Please note that the -p option has no effect on the port used by SSH.

Advice to distributors

A note on compiler flags: Mosh is security-sensitive code. When making automated builds for a binary package, we recommend passing the option --enable-compile-warnings=error to ./configure. On GNU/Linux with g++ or clang++, the package should compile cleanly with -Werror. Please report a bug if it doesn't.

Where available, Mosh builds with a variety of binary hardening flags such as -fstack-protector-all, -D_FORTIFY_SOURCE=2, etc. These provide proactive security against the possibility of a memory corruption bug in Mosh or one of the libraries it uses. For a full list of flags, search for HARDEN in configure.ac. The configure script detects which flags are supported by your compiler, and enables them automatically. To disable this detection, pass --disable-hardening to ./configure. Please report a bug if you have trouble with the default settings; we would like as many users as possible to be running a configuration as secure as possible.

Mosh ships with a default optimization setting of -O2. Some distributors have asked about changing this to -Os (which causes a compiler to prefer space optimizations to time optimizations). We have benchmarked with the included src/examples/benchmark program to test this. The results are that -O2 is 40% faster than -Os with g++ 4.6 on GNU/Linux, and 16% faster than -Os with clang++ 3.1 on Mac OS X. In both cases, -Os did produce a smaller binary (by up to 40%, saving almost 200 kilobytes on disk). While Mosh is not especially CPU intensive and mostly sits idle when the user is not typing, we think the results suggest that -O2 (the default) is preferable.

Our Debian and Fedora packaging presents Mosh as a single package. Mosh has a Perl dependency that is only required for client use. For some platforms, it may make sense to have separate mosh-server and mosh-client packages to allow mosh-server usage without Perl.

More info

Issues
  • SSH Agent Forwarding

    SSH Agent Forwarding

    Would be great to be able to forward local SSH agents. Seems to ignore ForwardAgent yes in ~/.ssh/config

    feature 
    opened by dt 206
  • iOS client (iPad, iPhone)

    iOS client (iPad, iPhone)

    Hello thanks for awesome product,

    It would be insanely great to have iOS client so we can connect from iPad.

    iOS 
    opened by a-b 90
  • Doesn't pass along mouse actions

    Doesn't pass along mouse actions

    When using an xterm-compatible terminal, one can use the mouse in some applications (e.g. tmux, vim). Mosh does not pass this along, but ssh does. This is a blocking issue for me, and I won't be switching from pure ssh to mosh until/if this is resolved.

    feature 
    opened by kergoth 84
  • Scrollback and alternate screen (was: Use alternate screen on smcup/rmcup )

    Scrollback and alternate screen (was: Use alternate screen on smcup/rmcup )

    When the remote application uses smcup to enter the alternate screen, the client should put the real terminal in alternate screen mode too, so that for example the mouse wheel lets you scroll in less and emacs and barnowl.

    feature 
    opened by andersk 81
  • Cannot connect (MacOSX client, Debian server)

    Cannot connect (MacOSX client, Debian server)

    Hi,

    I just wanted to say that this is a long awaited feature... a client that is robust to roaming around, as many of us do.

    I compiled the recent version from git for the server (a Debian Squeeze/sid machine) and am using the MacPorts version of mosh.

    When running It I get the following error:

    mosh [email protected]

    mosh requires a UTF-8 locale. Connection to server4 closed. /opt/local/bin/mosh: Did not find mosh server startup message.

    I fiddled around with my client's /etc/ssh_config but this didn't help. What can I do to resolve this and start using mosh?

    support 
    opened by ErikDeBruijn 72
  • reattach to detached mosh sessions

    reattach to detached mosh sessions

    Sometimes after a crash/reboot of my client machine, I see "Mosh: You have a detached Mosh session on this server (mosh [12726])." when I log back into the server. It would be nice to be able to reattach to that session.

    feature 
    opened by ghazel 61
  • /usr/local/bin/mosh: Did not find mosh server startup message.

    /usr/local/bin/mosh: Did not find mosh server startup message.

    I installed via Homebrew, but I can't seem to log into any servers.

    $ mosh [email protected] (user and host are different) [email protected]'s password: (i entered the correct password) bash: mosh-server: command not found Connection to host closed /usr/local/bin/mosh: Did not find mosh server startup message.

    Any help would be appreciated. Thanks! :-)

    opened by kacy 47
  • High CPU Usage on FreeBSD 9/amd64

    High CPU Usage on FreeBSD 9/amd64

    Installed via ports, mosh 1.1.3 exhibited low (under 1%) cpu usage of both the client and the server, however upon updating to mosh 1.2.2 cpu usage skyrocketed to a point where typing commands and viewing the output of say 'ls' was noticeably delayed, top reports cpu usage as 25% or so for both the client and server (on a core2 duo) and as high as 5% usage when idle.

    This is most noticeable on lower-spec machines like Intel Atoms, but it was still quite noticeable on a Core2 Duo when you were looking for it.

    Unfortunately I haven't tested any versions in-between 1.2.2 and 1.1.3 so I'm not sure where exactly it occurred. To compare, running "while true ; do ; ls ; done" in the same directory over ssh instead of mosh, sshd sits on around 7% cpu and you can't notice it updating where mosh peaks to 25%+ doing just a single ls. Directory in question has ~1000 files in it and colours are enabled for certain filetypes in case this has anything to do with it (ansi colour code processing mabe?).

    FreeBSD bug 
    opened by nvx 45
  • ctrl-^ escape not ideal

    ctrl-^ escape not ideal

    This is issue 187 reformulated as a feature request. There are two problems with the current escape mechanism:

    • ctrl-^ is a commonly-used command in vi.
    • Sending a literal ctrl-^ is awkward.

    I would suggest using the same escape mechanism as ssh (newline tilde). It has the following good properties:

    • It is already familiar to users.
    • The begin-escape sequence is two characters, thus rarely entered unintentionally.
    • The first character (newline) of the escape gets sent immediately, so the user rarely sees his input swallowed. (The necessity of sending a newline when you want the escape sequence is practically never an issue.)
    • In the rare case that you enter the begin-escape sequence unintentionally, you just hint tilde again to send a literal tilde. If the user is confused because his tilde didn't work, he is likely to do that anyway.

    If you are wedded to preserving ctrl-^ . as the quit sequence, I would suggest at least making the behavior a little saner:

    • ctrl-^ ctrl-^ should send a literal ctrl-^ (not two).
    • ctrl-^ should send literal ctrl-^ , except for a fixed set of s. They may as well follow ssh, and you may as well reserve them now even if they are not implemented.

    Making the escape key configurable may be considered.

    feature 
    opened by pimlott 45
  •   Performance improvements for Terminal::Framebuffer and Terminal::Display

    Performance improvements for Terminal::Framebuffer and Terminal::Display

    This replaces pull request #527. This pull request has had some extraneous stuff weeded out, some pushed to other branches, bugs fixed, and (most important) a bunch of time spent in 'git merge -i' to its benefit. But the discussion on that pull request is still background for this one. I've fixed all the bugs I know of, the pull request is comprehensible now, and I think it's ready for Mosh.

    To summarize what this does:

    • It improves the containers in Terminal::Framebuffer. Terminal::Renditions and Terminal::Cells go on a diet (important when you have 30k of them), Cells use UTF-8 strings instead of vector<wchar_t> because std::string is faster everywhere I've tried it (even with different implementation strategies), and Rows are stored in vectors instead of deques (deques do neatly handle scrolling, but they are costly to index and construct/delete). It also reworks some methods to allow slightly more efficient generation of the diff string.
    • It rips apart^W^Wrefactors Terminal::Display::new_frame() and put_cell() to use a put_row() instead, and carefully optimizes the per-character loop inside to be much more efficient, and more logically organizes the state necessary for tracking the generation of the diff string. It also reworks character output to reduce the amount of characters generated significantly. Another motivating piece for this was to make both Framebuffers passed into new_frame() const references, instead of having to copy one. That in itself improved performance, but it lead to...
    • The last and largest improvement: making the Rows in Framebuffers shared, copy-on-write objects with the help of std::shared_ptr. I knew something like this was possible, but scratched my head for a while on how to do it cleanly. The change ends up being elegant and not very large, though-- thanks to past efforts to ensure const correctness everywhere else in Mosh. This greatly reduces the amount of copying mosh has to do to maintain multiple terminal states (except for one case-- where you cat a large file to your terminal and it's scrolling as fast as it can). This greatly improves Mosh's performance for actual use cases where not much of the display changes from frame to frame, like sitting idle or working in an editor.

    It also has various little algorithmic improvements and fixes for pet peeves, but those are fairly straightforward stuff.

    I think the shared/COW Rows change also has potential to help with other long-standing feature requests and issues in Mosh, such as versioned prediction and scrollback buffering. I haven't really explored that though.

    opened by cgull 44
  • Mosh clears the terminal and adds an empty lines on login

    Mosh clears the terminal and adds an empty lines on login

    server: Debian 10, mosh 1.3.2 [build mosh 1.3.2] "ssh server" gives me this output:

    [[email protected] ~]$ ssh server
    [email protected]:~$
    

    "mosh server" completely clears the screen and adds three additional empty lines:

      
      
    [email protected]:~$
    

    I don't mind clearing the screen, but I would like to get rid of the empty lines.

    sshd_config: Port redacted PermitRootLogin no PubkeyAuthentication yes PasswordAuthentication no PermitEmptyPasswords no ChallengeResponseAuthentication no UsePAM no PrintMotd no PrintLastLog no

    file /etc/motd /etc/motd: empty

    server: echo $TERM rxvt-unicode-256color

    client: echo $TERM rxvt-unicode-256color

    terminal used: rxvt-unicode with 256 color patch applied

    other terminal tested - xterm, same behaviour

    opened by souew 1
  • Fatal assertion when exit on macos big sur

    Fatal assertion when exit on macos big sur

    When exiting mosh from remote server, a fatal error occur, although it seems having no bad effect:

    Fatal assertion failure in function ~Socket at network.cc:650
    Failed test: close( _fd ) == 0
    [1]    7654 abort      mosh --ssh="ssh -i ~/.ssh/xxx" [email protected]
    

    Mosh version:

    > mosh -version
    mosh 1.3.2 [build mosh 1.3.2]
    Copyright 2012 Keith Winstein <[email protected]>
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    

    OS version: Big Sur 11.3.1

    opened by knightdf 0
  • Mosh leaves SSH_TTY set in environment, confuses clipetty

    Mosh leaves SSH_TTY set in environment, confuses clipetty

    Clipetty is an Emacs mode that sends Emacs cuts via OSC 52 commands. It attempts to support double nested tmux (in a chain of tmux -> ssh -> tmux -> emacs) in a hackish way: it writes the OSC 52 to the tty named in SSH_TTY. (It's actually a little smarter than that because it queries tmux for the tmux client SSH_TTY).

    This fails in Mosh, because Mosh uses a tty on the SSH connection (which I've never liked), then double-forks, opens its own pty, and lets the parent ssh session exit-- but it never unsets the now-bogus SSH_TTY.

    This is mentioned in issue #738. https://github.com/spudlyo/clipetty/issues/20 discusses the behavior/problems from their side.

    opened by cgull 0
  • Add tmux and alacritty to title_term_types

    Add tmux and alacritty to title_term_types

    https://github.com/mobile-shell/mosh/blob/03087e7a761df300c2d8cd6e072890f8e1059dfa/src/terminal/terminaldisplayinit.cc#L113-L119

    This list should be extended to include alacritty, which supports OSC 0 and 2, and tmux which is another possible TERM value for tmux.

    This should solve the issue mentioned in this comment.

    Also, couldn't mosh make use of terminfo's {has,from,to}_status_line capabilities, perhaps in addition to that list (because e.g. the xterm entry doesn't have has_status_line despite supporting OSC 0-2), so that we don't have to keep extending the list?

    opened by ncfavier 0
  • Strange artifacts on some unicode chars under tmux+vim+mosh

    Strange artifacts on some unicode chars under tmux+vim+mosh

    When using SSH, everything is displayed properly:

    image

    Under mosh, some time, but not all of time, I get (for the same tmux session, same location):

    image

    Has anyone else seen this? As a workaround, should I just try to disable fancy unicode chars used to show warnings in coc.nvim?

    opened by cheshire 2
  • .gitignore: add autogenerated files

    .gitignore: add autogenerated files

    After a build: git show Untracked files below src/include/config.h src/include/config.h.in src/include/stamp-h1 src/include/version.h

    opened by black-desk 0
  • Use CLOCK_MONOTONIC_RAW when available

    Use CLOCK_MONOTONIC_RAW when available

    Use CLOCK_MONOTONIC_RAW (when available) which isn't affected by system time adjustments (such as NTP or adjtime). Overall I think this is a better fix for #1014 since this is a generic solution (this issue might also affect other platforms, not just Mac OS).

    I think the reason CLOCK_MONOTONIC manifests this behaviour is due to Apple's libc clock_gettime() CLOCK_MONOTONIC implementation here: https://opensource.apple.com/source/Libc/Libc-1353.41.1/gen/clock_gettime.c.auto.html

    clock_gettime() CLOCK_MONOTONIC code path uses _mach_boottime_usec() which and ends up using gettimeofday() - boottime. gettimeofday() is affected by system time changes. Thus the time returned may suddenly jump backwards.

    CLOCK_MONOTONIC_RAW on the other hand uses mach_continuous_time() directly, which doesn't get adjusted by system time changes.

    In my personal opinion this behaviour of CLOCK_MONOTONIC is wrong, and CLOCK_MONOTONIC should rather be made to behave identical to CLOCK_MONOTONIC_RAW instead. But I digress.

    opened by piru 1
  • mosh causes emacs remote directory tracking to fail (needs OSC 51 support)

    mosh causes emacs remote directory tracking to fail (needs OSC 51 support)

    I use libvterm inside emacs to run terminals. As described here, libvterm-emacs relies on various escape sequences in the shell prrompt to track the curernt directory. The tracking works with ssh but does not work with mosh.

    I have filed a companion issue against libvterm-emacs. I do not know for certain what is going on but I suspect maybe mosh is neglecting to send some of the escape sequences through.

    opened by greened 2
  • Integrate secure agent forwarding / Guardian Agent

    Integrate secure agent forwarding / Guardian Agent

    How are we going to give you positive feedback to integrate this very useful feature if there's no ticket?

    Although it might be more useful to integrate it to the ssh-agent itself.

    https://github.com/StanfordSNR/guardian-agent

    opened by siilike 0
  • README.md updates

    README.md updates

    Hey team, I have recently being trying to use mosh but I must stay I found it difficult. I found mosh on github and I felt that the lack of a how to get started help on the repository pushed me away from using it at first. I hope this commit will help new users with getting started.

    opened by ray3du 0
Releases(mosh-1.3.2)
  • mosh-1.3.2(Jul 22, 2017)

    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA256
    
    Hello Mosh users and developers,
    
    mosh 1.3.2 has been released. This is primarily a maintenance
    release. (We skipped version 1.3.1 because of a glitch in Debian
    packaging. The previous release was mosh 1.3.0.)
    
    The source code is at: https://mosh.org/mosh-1.3.2.tar.gz
    (SHA-256: da600573dfa827d88ce114e0fed30210689381bbdcff543c931e4d6a2e851216)
    
    John Hood was the primary developer and release coordinator and
    deserves all our thanks.
    
    Compatibility: mosh 1.3.2 is backwards-compatible with mosh-clients
    back to 0.96 and mosh-servers back to 1.0.9.
    
    macOS binary package: We are releasing a macOS binary package.
    
    https://mosh.org/mosh-1.3.2.pkg is an x86_64 build for 10.10 and later.
    (SHA-256: 7b00838e04e954e19d6bd5a63ff9729084bd55e21d894994916b73e996a9c42f)
    
    However, we encourage macOS users to install via MacPorts or Homebrew,
    instead of using the binary package, in order to receive automatic upgrades.
    
    Bugs: Please let us know of any problems at the GitHub issue tracker,
    at https://github.com/mobile-shell/mosh/issues. The developers can
    also be found on IRC at <irc://irc.freenode.net/mosh>.
    
    The full change log for this release:
    
    ===
    
    * Platform support:
        * Explicitly enable binding to both IPv4 and IPv6 addresses.
          (Giel van Schijndel)
        * Restore perl 5.8.8 support for RHEL5.  (Alexander Chernyakhovsky)
        * Make tests detect UTF-8 locale with a helper executable.  (John Hood)
        * Don't print /etc/motd on IllumOS.  (John Hood)
        * Print {,/var}/run/motd.dynamic on Ubuntu.  (John Hood)
        * Fix build on Haiku. (Adrien Destugues)
        * Disable unicode-later-combining.test for tmux 2.4.
          This fixes build failures.  (John Hood)
    
      * Bug fixes:
        * In tests, explicitly set 80x24 tmux window, for newer versions
          of tmux.  (John Hood)
        * Work around JuiceSSH rendering bug.  (John Hood)
        * Do not move cursor for SCROLL UP and SCROLL DOWN--
          fixes an issue with tmux 2.4.  (John Hood)
    
    ===
    
    Best regards on behalf of the Mosh team,
    Keith Winstein
    -----BEGIN PGP SIGNATURE-----
    
    iQIcBAEBCAAGBQJZc8lFAAoJECC3KDr+JUxpFJIQAIKI3CwPyIgd6BNyoYdqIz9v
    AjapQEvYERErkjM0R8qNDGajJc5i1n6uHs/QJs+O0BflbTDchXueTG6cLodqhu7v
    i+rMpoYXasuE3DirlvR5R10AHo5WOTv3hRI6xeZW5pi7FcHXfc8UcyVT7AeBcxrj
    epk2F5AAYVnXt60XyakXDyq1SR6XprspX06VSOZeiqn13qIgnVVVA0SPsAHJ32fo
    9Wm6vRJQAaUkdZ/8tIgXNp/NU/EPqSW0JMte3OvvA43CICTltfyAy/Btk4A8Ibbw
    iJ6okgxHFA/+Hnr0Y+HmRlqIQgArlxSfg3fMA6VaqOb1H5H7x8Wno2rpV/OY4Rf2
    86jw2TVVKxuWXvdzF1oXiTpLtbX985T/FWPZj+31jp438uiupMhrxDS7P1/El9ZF
    v8x+/syFwo+Ht4UjZdynCtQgw5MM2aUIltJIUXmGP1N/QHYS94VSNMjj15WbeIGJ
    OmhIahUtHyELNuWiTwV+I60pZdTGtilhVun6r6jxAwKufCnQ2sM6D+z1QJiO4qgZ
    tCZUkE3CRmSIDQRXO0MKBiuk8qcfpJX0f+0P1LH7Qm5s1j/5Jn48Atd9UaozDVpK
    +GO6AOySZ+2BNgSu3EC3hj6ezu7UnNqJ9/SUZ/1NsS+YT15YYWFexjggJ1t/0SlI
    hZuMTcTCXD5n8jn++dYr
    =fjFO
    -----END PGP SIGNATURE-----
    
    Source code(tar.gz)
    Source code(zip)
    mosh-1.3.2-osx-build-report.tbz(153.42 KB)
    mosh-1.3.2.pkg(505.19 KB)
    mosh-1.3.2.tar.gz(351.14 KB)
  • mosh-1.3.0(Mar 25, 2017)

    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA256
    
    Hello Mosh users and developers,
    
    mosh 1.3.0 has been released. (This is a corrected release announcement
    that fixes a typo in the previous email.)
    
    The source code is at: https://mosh.org/mosh-1.3.0.tar.gz
    (SHA-256: 320e12f461e55d71566597976bd9440ba6c5265fa68fbf614c6f1c8401f93376)
    
    John Hood was the primary developer and release coordinator and
    deserves all our thanks.
    
    Change in version numbering: We have switched our version numbering to
    follow the semver.org recommendations. Mosh will increment the minor
    version number any time we add new functionality. (In our previous
    practice, this release would probably have been called "1.2.7".)
    
    Compatibility: mosh 1.3.0 is backwards-compatible with mosh-clients
    back to 0.96 and mosh-servers back to 1.0.9.
    
    macOS binary package: We are releasing a macOS binary package.
    
    https://mosh.org/mosh-1.3.0.pkg is an amd64 build for 10.10 and later.
    (SHA-256: a423fcb5aab7079e20b03cfa5e8623bb89391087dd5492d68947c89a39eee80c)
    
    However, we encourage macOS users to install via MacPorts or Homebrew,
    instead of using the binary package, in order to receive automatic upgrades.
    
    Bugs: Please let us know of any problems at the GitHub issue tracker,
    at https://github.com/mobile-shell/mosh/issues. The developers can
    also be found on IRC at <irc://irc.freenode.net/mosh>.
    
    The full change log for this release:
    
    ===
    
    * New features:
      * Change website URLs from http://mosh.mit.edu to https://mosh.org.
        (Keith Winstein)
      * Add --no-ssh-pty option for Dropbear compatibility and other issues.
      * Switch to semantic versioning, making this version 1.3.0 instead
        of 1.2.7.
    
    * Platform support:
      * Added nonce-incrementing test.  (Keith Winstein)
      * Add build-source-package.sh for Debian.  (Keith Winstein)
      * Fix CPPFLAGS handling possibly causing curses detection failure.
        (John Hood)
      * Add an Appveyor/Cygwin CI build.
      * Improve warning-flags detection for 'make distcheck'.  (John Hood)
      * Improve robustness of regression tests.  (John Hood)
      * Support OpenBSD pledge() sandboxing.  (John Hood)
      * Use backward-compatible name for AES in AppleCommonCrypto, fixing
        builds with older OS X SDKs.  (John Hood)
      * Detect clock_gettime() and CLOCK_MONOTONIC carefully, fixing
        OS X 10.12 + Xcode 7.3 builds.  (John Hood)
      * Support older versions of Perl, back to 5.10, fixing RHEL 5 builds.
        (Anders Kaseorg)
      * Add a Travis OS X CI and release build.  (John Hood)
      * Add --help and --version, enabling Automake's 'std-options' checks.
        (Anders Kaseorg)
      * Add a simple smoke test not requiring tmux, to help validate builds
        on older platforms including RHEL 5. (Anders Kaseorg)
      * Check for presence of clock_gettime() for OS X, where the symbol
        may not be resolved on older OS X versions.  (John Hood)
      * Fix a memory alignment issue in OCB with ARM/Neon. (Carlos Cabanero)
      * Mosh now runs correctly on Bash for Windows with Windows 10 Insider
        builds 15002 and higher. (No change in Mosh)
      * Other minor platform compatibility fixes for Mosh sources and tests.
        (John Hood)
    
    * Bug fixes:
      * Work around a pty buffering issue causing failed connections on
        FreeBSD 11, or with Dropbear.  (John Hood)
      * Restore '-p 0' option for OS-selected UDP port bindings.  (John Hood)
      * Shell hygiene fixes, including better quoting of pathnames.
        (Anders Kaseorg)
      * Fix typos in project docs.  (Jakub Wilk)
      * Fix excess newlines on mosh client startup/shutdown.  (John Hood)
      * Exit gracefully, closing session, on pty write or ioctl failure.
        (John Hood)
      * Fix two bugs that caused mosh-server to consume excessive CPU in
        certain circumstances.  (John Hood)
      * Fix bug that caused text copied from mosh-client to paste as long
        lines joined by spaces.  (John Hood)
      * Documentation improvements. (chenxiaoqino, Ashish Gupta)
      * Use getuid(), not geteuid(), for correct getpw* lookups.  (John Hood)
    
    ===
    
    Best regards on behalf of the Mosh team,
    Keith Winstein
    -----BEGIN PGP SIGNATURE-----
    
    iQIcBAEBCAAGBQJY2BwOAAoJECC3KDr+JUxpsV8P/3Wd7fEzxNpxXJN7QaeFpGrS
    70KtHzXuxXg50tn9E+UQVTkg4rXVh72q6vElsVWCmsWlpzquCDRCpEZeWySmQxjQ
    MnN2tzrMYZBOEaPTV2xeLKPgRTLcDSMpw/bJEdyDs33LSpFk05fZIQHZOtL/0REq
    NjHYuvzmcNGP7aydWmkQyu1Vtpjk4urORnwsYdQ5JLt21AcJsD+GpdjPdQfaEJIU
    ZZ/haXZ9bvJBUzS2h0ZvJSpwHsZ1dIK4RZR5sSrtOmiIK7oEgK1KsidOriRyNEhX
    ORhc+kQspuncDsGDNTUPtI8PrqvrnVNSq6nvi0I1JVGqfUbwxpK+2j7t8rDFkYx/
    y9s9VkcE+cvm0JaJOhnVVZQn8BK5ztDsUVYkHrg48l3DmMQDaEujaNzASAx8aJRW
    WRzUowM41R5GG1EQ1tXFLH2igI2VRF9uUyIAHwHInUMHbrQQC3I1SgKod9xwdOVv
    HghszMDFlh8A9+80zzf46vYpMcGuqZWyv+AMAbYP0XF9cDFTZOeOP/t84CddRVda
    A5jJl9gc57Z0hWdBOIDl02yMMCmn3hibDchz3jlJATTGMycIqRcIA3n/9HBtDoa0
    4NOzbJvZxtQxHnulGX53hD9fnr3pvvYxX5POkVaFtKB3wJpUbScTAV8BjivM+EYV
    yaQLE4qz9HGLDv9bU2FZ
    =DJjX
    -----END PGP SIGNATURE-----
    
    Source code(tar.gz)
    Source code(zip)
    mosh-1.3.0-osx-build-report.tbz(155.76 KB)
    mosh-1.3.0.pkg(509.19 KB)
    mosh-1.3.0.tar.gz(347.87 KB)
  • mosh-1.2.6(Aug 12, 2016)

    -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1

    Hello Mosh users and developers,

    mosh 1.2.6 has been released.

    The source code is at: https://mosh.org/mosh-1.2.6.tar.gz (SHA-256: 7e82b7fbfcc698c70f5843bb960dadb8e7bd7ac1d4d2151c9d979372ea850e85)

    John Hood was the release coordinator and deserves all of our thanks. Major new features, all due to John, include:

    • - huge performance improvements, especially on large terminals,
    • - the ability to set a timeout to end dormant sessions automatically, and
    • - support for crypto libraries other than OpenSSL (Nettle and Apple Common Crypto).

    On the developer side, we now have an end-to-end test suite and continuous-integration tests on every pull request. We also worked around a bad interaction with glibc 2.22 that caused mosh-server to crash on startup.

    Compatibility: mosh 1.2.6 is backwards-compatible with mosh-clients back to 0.96 and mosh-servers back to 1.0.9.

    macOS binary package: We are releasing a macOS binary package.

    https://mosh.org/mosh-1.2.6.pkg is an i386+amd64 build for 10.9 and later. (SHA-256: 5eb7797b0c3a5423da1c62f80f8e6268acd55b1b10a850e58fd7bb8f6bdb520d)

    However, we encourage macOS users to install via MacPorts or Homebrew, instead of using the binary package, in order to receive automatic upgrades.

    Bugs: Please let us know of any problems at the GitHub issue tracker, at https://github.com/mobile-shell/mosh/issues. The developers can also be found on IRC at irc://irc.freenode.net/mosh.

    Website moves: Please note that the Mosh repository has moved to https://github.com/mobile-shell/mosh (from https://github.com/keithw/mosh). The Mosh website has moved to https://mosh.org (from https://mosh.mit.edu).

    The full change log for this release:

        * New features:
                * Add Travis CI builds for Linux and Mac.  (Anders
                  Kaseorg, others)
                * Add a --local option to run without ssh.  (John Hood)
                * Mosh now returns exitstatus reflecting connection success.
                  (John Hood)
                * Add a end-to-end test suite and many tests.  (John Hood)
                * Implement timeouts and signals to help address
                  orphaned sessions.  (John Hood)
                * Major rework of Mosh's display
                  differencing/rendering code with much improved
                  performance for slow machines.  (John Hood)
                * Implement ANSI back/forward tab (CSI CBT, CSI CHT).
                  (John Hood)
                * Do not start user shell until network session starts.
                  (John Hood)
                * Add options for more flexible specification of IPv4/IPv6
                  hostname resolution.  (John Hood)
                * Improved bash completion.  (Steve Dignam, HIGUCHI Yuta)
                * Add options for different methods of resolving the
                  remote host address, allowing operation without
                  SshProxyCommand.  (John Hood)
    
        * Platform support:
                * Add configurable support for Apple Common Crypto and
                  Nettle, in place of OpenSSL.  Implement base64 locally.
                  (John Hood)
                * Workaround Cygwin select() bug.  (John Hood)
                * Updates to Debian packaging.  (Anders Kaseorg, Keith
                  Winstein)
                * Workaround a glibc-2.22 issue causing segfaults on
                  Debian Sid.  (John Hood with help from many others)
                * Prefer c++ to g++, for systems like FreeBSD where
                  g++ is not usable.  (John Hood)
                * Fixes for Illumos Hipster 20151003.  (John Hood)
                * Disable -Werror for protobuf code, to resolve a new
                  gcc6 warning.  (John Hood)
                * Link test for -fstack-protector-all on an embedded
                  platform.  (Baruch Siach)
                * Resolve issue with bswap64() on FreeBSD-CURRENT with
                  libc++-3.8.0.  (John Hood)
                * Fix issue with RECVTOS error message on client on FreeBSD.
                  (John Hood)
    
        * Bug fixes:
                * Remove an assertion causing aborts on Unicode
                  fallback found by fuzzing with afl.  (Keith
                  Winstein)
                * Fix a server hang with XON/XOFF on BSD systems.
                  (John Hood)
                * Fix a typeahead-prediction bug that caused display
                  corruption on urxvt.  (John Hood)
    

    Best regards on behalf of the Mosh team, Keith Winstein -----BEGIN PGP SIGNATURE----- Version: GnuPG v1

    iQIcBAEBAgAGBQJXrXMJAAoJECC3KDr+JUxp0TsP/0xLkHq3s1CP9CG68ymA5eb2 zNVnXJTlfwamgRoz39NmOp+9Ixgw4w1zXCKkg1vE0LhoZGXEbMhqxN6YDV2HSlWV y1mTneiSc7FK1t6w71NQNIAHhN+sCM0pdA+eCrCj098Lx9l8zQnRrBXPhYMxcNkT gGlQXOBe0e3to9EXLRINdRLhnsshkTRmeCnCs7LaH5mFzrkLn47gHSegdrCMj0uu NRuII0eMw4ldNgsxaLGUcZp/Pud5HOwqOV18mTCIGP2leMnlkW5l8ViY0G9xdCJ0 JK7w4HdqHqW/cjPTjH6gvne4ZjCe2qFMGs7m0hrPUDfNzH1vatuF1I4FtgopRMsK MaTO0SRMxA7lqJwfJxywXDR3HAew3fnEXMlHMbUCvisDN8ABy9qR1v9PPlgEDbMS x/aCURpTXN3ra+VpJfyRMq9NWd7EWS3LYZ0qbKxQHf+1yOLm7iQScRzS5zkOs8gi n3R5ZuEhDE6Ip5BAOVFv6zeS+uLhtQPlUGUKKHw4Aso0lxTUs9sLXbprcYeY6ogK xKS5IJMVV/5Z3Xn42CJohIM52kVhehbwAw0TAHLHJu1JZEc+S8yfwkd7/Tl4CRNj Et34O6QTBr2Z42t9wf/hlcPeoP2nLYmIRfTeYnnwXKdMEkgeEDVUbGkPjeZ+XmPg D1f9rZQC2XOhVUpx7zMn =OSK1 -----END PGP SIGNATURE-----

    Source code(tar.gz)
    Source code(zip)
    mosh-1.2.6.pkg(873.19 KB)
    mosh-1.2.6.tar.gz(339.04 KB)
  • mosh-1.2.5.95rc1(May 25, 2016)

    Hi all,

    We're happy to announce the upcoming release of Mosh 1.2.6, and are calling for testing on Mosh 1.2.5.95rc1. The release has picked up some minor new features in the year since the last release such as better IPv6 support and tools to handle orphaned sessions. However, it's also seen significant improvements in performance, testing, and portability.

    The Changelog for this release:

    • New features:
      • Add Travis CI builds for Linux and Mac. (Anders Kaseorg, others)
      • Add a --local option to run without ssh. (John Hood)
      • Mosh now returns exitstatus reflecting connection success. (John Hood)
      • Add a end-to-end test suite and many tests. (John Hood)
      • Implement timeouts and signals to help address orphaned sessions. (John Hood)
      • Major rework of Mosh's display differencing/rendering code with much improved performance for slow machines. (John Hood)
      • Implement ANSI back/forward tab (CSI CBT, CSI CHT). (John Hood)
      • Do not start user shell until network session starts. (John Hood)
      • Add options for more flexible specification of IPv4/IPv6 hostname resolution. (John Hood)
      • Improved bash completion. (Steve Dignam, HIGUCHI Yuta)
      • Add options for different methods of resolving the remote host address, allowing operation without SshProxyCommand. (John Hood)
    • Platform support:
      • Add configurable support for Apple Common Crypto and Nettle, in place of OpenSSL. Implement base64 locally. (John Hood)
      • Workaround Cygwin select() bug. (John Hood)
      • Updates to Debian packaging. (Anders Kaseorg, Keith Winstein)
      • Workaround a glibc-2.22 issue causing segfaults on Debian Sid. (John Hood with help from many others)
      • Prefer c++ to g++, for systems like FreeBSD where g++ is not usable. (John Hood)
      • Fixes for Illumos Hipster 20151003. (John Hood)
      • Disable -Werror for protobuf code, to resolve a new gcc6 warning. (John Hood)
      • Link test for -fstack-protector-all on an embedded platform. (Baruch Siach)
      • Resolve issue with bswap64() on FreeBSD-CURRENT with libc++-3.8.0. (John Hood)
      • Fix issue with RECVTOS error message on client on FreeBSD. (John Hood)
    • Bug fixes:
      • Remove an assertion causing aborts on Unicode fallback found by fuzzing with afl. (Keith Winstein)
      • Fix a server hang with XON/XOFF on BSD systems. (John Hood)
      • Fix a typeahead-prediction bug that caused display corruption on urxvt. (John Hood)

    Source code is available as https://github.com/mobile-shell/mosh/releases/download/mosh-1.2.5.95rc1/mosh-1.2.5.95rc1.tar.gz. The SHA256 sum for this file is a2697c41cfc8c92dc7a743dd101849a7a508c6986b24d6f44711d8533d18fcf5

    One standalone OS X package is available:

    • https://github.com/mobile-shell/mosh/releases/download/mosh-1.2.5.95rc1/mosh-1.2.5.95rc1.pkg is an i386/x86_64 build for OS X 10.9 and higher. The SHA256 sum for this file is 48a56d83d0ef655d38e0ea596fd9cac98c0dc433cb5356205d26748350d47e6c

    (If you are using a package system such as MacPorts or Homebrew, I recommend using that, though.)

    As always, Ubuntu PPA builds of the latest source are available at ppa:keithw/mosh.

    Packagers, please note that Mosh has some minor dependency changes: Perl is now required to be >= 5.14, but IO::Socket modules are no longer required. If anybody needs to package for older versions of Perl, talk to me and I'll probably bring something into the release. Also, if anyone needs an OS X package for 10.8 or lower, please contact me.

    Your testing is very unlikely to prove Mosh to be free of bugs, but your testing will help us make 1.2.6 a better release. Please report any issues you find on Github, and we can be found on IRC at irc://irc.freenode.net/mosh.

    Looking ahead, we expect Mosh 1.3 to be a feature release, bringing significant new functionality. SSH agent forwarding is high on the list.

    The Mosh team thanks you for your help.

    --John Hood

    Source code(tar.gz)
    Source code(zip)
    mosh-1.2.5.95rc1.pkg(873.19 KB)
    mosh-1.2.5.95rc1.tar.gz(328.02 KB)
  • mosh-1.2.5(Jul 23, 2015)

    -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256

    Hello Mosh users and developers,

    mosh 1.2.5 has been released.

    The source code is at:

    https://mosh.mit.edu/mosh-1.2.5.tar.gz

    SHA-256: 1af809e5d747c333a852fbf7acdbf4d354dc4bbc2839e3afe5cf798190074be3

    John Hood was the release coordinator for this release and deserves all of our thanks! New features include mouse support, a reconfigurable escape key, and basic support for IPv6. There has also been a focus on making this a stable, reliable release as a base for future features.

    The change log for this release:

    • New features: * Bind to a specific IP address with --bind-server. (Philipp Haselwarter) * MOSH_ESCAPE_KEY configures escape character. (Timo J. Rinne) * Support non-roaming IPv6. (Anders Kaseorg) * Implement XTerm mouse mode. (Barosl LEE, Andrew Chin, Louis Kruger) * Report Git revision along with version if available. (John Hood)
    • Platform support: * Add pselect() emulation. (Jérémie Courrèges-Anglas) * OpenBSD, OS X: Fix be64toh-related issues. (Jérémie Courrèges-Anglas) * ARM Neon: fix gcc4.8 compiling problem(Pasi Sjöholm) * NaCl: Conditionally rename main to mosh_main. (Richard Woodbury) * FreeBSD: Token pasting, forkpty(), ARM fixes. (John Hood) * AIX: Implement CTTY grabbing when TIOCSCTTY is missing (Anton Lundin) * OS X: Broaden build support to cover OS X 10.5 through 10.10. (John Hood) * Debian: Improve bash-completion install and functionality. (Suggested by Gabriel Filion, John Hood)
    • Bug fixes: * Automake/autoconf workarounds. (Anders Kaseorg) * mosh-server: Allow startup without PTY. (Keith Winstein) * network.cc: Properly close old fd on Socket assignment operator. (Thanks to Igor Bukanov) * mosh-server: Allow startup with zero-window-size PTY. (Igor Bukanov) * AddrInfo: Fix error message generation when node == NULL (Anders Kaseorg) * Timestamp: Prevent integer overflow on Darwin PPC 32-bit (Anders Kaseorg) * scripts/mosh: Fix hang when remote closes the connection (Anders Kaseorg) * Fix issues with parsing of 256-color SGR sequences. (John Hood) * Numerous code hygiene, Coverity, and Clang static analyzer fixes. (Anders Kaseorg, Geoffrey Thomas, John Hood)

    Compatibility: mosh 1.2.5 is backwards-compatible with mosh clients back to 0.96 and mosh servers back to 1.0.9.

    OS X binary packages: We are releasing two OS X binary packages:

    https://mosh.mit.edu/mosh-1.2.5.pkg is an i386+amd64 build for OS X 10.9 SHA-256: 8a590ba81edd6f706f2d0afe1cb882bd8ff8860e395b7c6ac7285306f4f12209

    https://mosh.mit.edu/mosh-1.2.5-leopard.pkg is an i386+ppc build for OS X 10.5 SHA-256: 5fd77ce1c2d4b24db79be8daff3140975e53f49c83b48ff57087483133a59155

    However, when possible, we encourage OS X users to install via MacPorts or Homebrew, instead of using the binary package, in order to receive automatic upgrades.

    Packagers, please note that Mosh has picked up some minor new dependencies: for example, Debian/Ubuntu packaging now uses bash-completion at build time, install requires a not-ancient dpkg version, and IO::Socket::IP is recommended for IPv6 support. All of these dependencies are optional.

    Bugs: Please let us know of any problems at the GitHub issue tracker, at https://github.com/keithw/mosh/issues. The developers can also be found on IRC at irc://irc.freenode.net/mosh.

    Best regards on behalf of the Mosh team, Keith Winstein

    -----BEGIN PGP SIGNATURE----- Version: GnuPG v1

    iQIcBAEBCAAGBQJVsLluAAoJECC3KDr+JUxpFfkQAIzJEXg+KT5cJvTG6urxQOce SXgDcK1K15uj8/eyYNa0VrXL7dBuWCHDpWsBpl8O8VVOdPuA4yTo7TKDk8IWi3Jh QjBUfv6XQ4RY8yK3lf9bnZlTiBAnQxP/hpG+I+y4C37thvTc3PVgq3oLYW8/CwaN x1DmSUvNipXAfhDk2CMn7DrxIRnVzt233Qhwyl+YlwUmxxLDDA+fG/Mp4J94aEt7 QWfwNii8zSwIMpZnzYD3nV2XkK1Dve1YNc7fD32URMpvlTboosQjQ7sLqbHVJQFS 53lePMU0UWfzGPsr28n4gQjH9/iac5Kyu6a2aQTAy9ErkQ1oQnwU9njtaTBdJRIJ hGLNg9aTtZCejCNaaoiCc7iKT8XPWZfNLMgdsEQzvQ/bdstLc2TwFgZql+uJpJWw B3lXU4LM1lUpO+0Qp1ixBq4XyAw6Wx9wGcF6oJtNAds0pnAqqq5ASFseN9/gY6Q2 r9BYWGHEOhrdCD6kQrsqT5tKCBLepUa0SlPTz2jsFNe7fwnLyc3pGIU02S+sf5Pf XcjgrcNedKCQpuaSNCIq5bwfUpetX+Kb+HwuuPvRRBwRjXgjAIcUlcKD5Lz9ED0G Eqybni+P2brdNGa2+ivTQITwgvY4vDRNZf+c5YLKA2KwOWKnoCo0Tnfv57mOSNqX 3RFXJyYBv9gKNfAxXYmg =uzIB -----END PGP SIGNATURE-----

    Source code(tar.gz)
    Source code(zip)
    mosh-1.2.5.tar.gz(301.61 KB)
  • mosh-1.2.4(Jun 10, 2013)

    Hello Mosh users and developers,

    mosh 1.2.4 has been released.

    The source code is at: http://mosh.mit.edu/mosh-1.2.4.tar.gz

    SHA-1: b1dffe8562d7b2f4956699849fbe5d18bfd7749e SHA-256: e74d0d323226046e402dd469a176075fc2013b69b0e67cea49762c957175df46

    Compared with Mosh 1.2.3, this maintenance release largely fixes bugs, improves robustness, and adds platform support. The changelog is:

    • New features:
      • Support port ranges with -p LOWPORT:HIGHPORT (Luke Mewburn)
      • Ctrl-^ Ctrl-Z suspends mosh client (Nikolai Zeldovich)
      • mm:ss display of lost-contact times (Kevin Ballard)
      • Show infobar with control chars when Ctrl-^ is typed
      • Put terminal in altscreen mode (Anders Kaseorg)
      • Tell automake/Debian pkg about our checks (Anders Kaseorg)
    • Platform support:
      • OS X: Script to build a universal package (Peter Iannucci)
      • FreeBSD: Fix build problems (Jimmy Olgeni)
      • AIX: port by Anton Lundin
      • Solaris with system curses (Anton Lundin)
      • Cygwin and others: eliminate use of IO::Pty (Anton Lundin)
    • Bug fixes:
      • Fix bug (introduced in 1.2.3) where server stays around if process quits while client is detached
      • Clean up spurious entries from detached sessions warning
      • Fix freeze when connectivity is one-directional for hours (reported by Axel Beckert)
      • Don't wipe title until a new one is set (sqweek)
      • Eliminate memory leaks and cppcheck warnings (Anders Kaseorg)

    mosh 1.2.4 is backwards-compatible with mosh clients back to 0.96 and mosh servers back to 1.0.9. Please let us know of any problems (https://github.com/keithw/mosh/issues).

    Best regards from the Mosh team, Keith

    Source code(tar.gz)
    Source code(zip)
Owner
Mosh (mobile shell)
Mosh (mobile shell)
Mobile Shell

Mosh: the mobile shell Mosh is a remote terminal application that supports intermittent connectivity, allows roaming, and provides speculative local e

Mosh (mobile shell) 10k Jun 4, 2021
:notebook: A simple self-hosted journaling app

About In a nutshell: a private self-hosted journal with sharing capabilities. This project is an attempt to make myself journal more consistently. I f

Isaac Noda 92 May 31, 2021
Flash OS images to SD cards & USB drives, safely and easily.

Etcher Flash OS images to SD cards & USB drives, safely and easily. Etcher is a powerful OS image flasher built with web technologies to ensure flashi

balena 20.6k Jun 6, 2021
Open source API management platform

About Fusio is an open source API management platform which helps to build and manage REST APIs. Fusio provides all tools to quickly build an API from

Apioo 970 Jun 5, 2021
Open source back-end server for web, mobile and IoT. The backend for busy developers. (self-hosted or hosted)

A scalable, multitenant backend for the cloud. Para is a scalable, multitenant backend server/framework for object persistence and retrieval. It helps

Erudika 395 May 26, 2021
A black hole for Internet advertisements

Network-wide ad blocking via your own Linux hardware The Pi-hole® is a DNS sinkhole that protects your devices from unwanted content, without installi

Pi-hole 31.4k Jun 5, 2021
Skygear - an open source serverless platform for modern secure app development

Next is the V2 of Skygear that aim to follow Support multi tenant at core, make cloud deploy scalable at first day. Simplify deployment. Give back app

SkygearIO 387 May 19, 2021
🔥 Open source static (serverless) status page. Uses hyperfast Go & Hugo, minimal HTML/CSS/JS, customizable, outstanding browser support (IE8+), preloaded CMS, read-only API, badges & more.

Über fast, backwards compatible (IE8+), tiny, and simple status page built with Hugo. Completely free with Netlify. Comes with Netlify CMS, read-only

cState 1.3k Jun 5, 2021
Read-only mirror of https://gitlab.gnome.org/GNOME/gparted

GPARTED ======= Gparted is the GNOME Partition Editor for creating, reorganizing, and deleting disk partitions. A hard disk is usually subdivided int

GNOME Github Mirror 169 Jun 6, 2021
Self Hosted Movie, Series and Anime Watch List

Flox Flox is a self hosted Movie, Series and Animes watch list. It's build on top of Laravel and Vue.js and uses The Movie Database API. The rating ba

Viktor Geringer 927 Jun 6, 2021
A simple webfont hosting. Google Fonts alternative for your own fonts.

Web fonts repository A simple webfont hosting inspired by Google Fonts. It runs on your server, stores and distributes webfont files and generates CSS

Surgie Finesse 62 May 14, 2021
Type emoji easily! Virtual keyboard-like emoji palette for Linux with lots of features.

Emoji keyboard Virtual keyboard-like emoji palette for Linux. If you find this software useful, please Emoji support on Linux is shaky at best. Modern

Tomas Ravinskas 236 Jun 2, 2021
Personal CRM. Remember everything about your friends, family and business relationships.

Personal Relationship Manager Monica is a great open source personal relationship management system. Introduction Purpose Features Who is it for? What

Monica 12.9k Jun 6, 2021