This can be installed with a 15kb install script that compiles all resources and hosts the server right in your pocket.

    • hereforawhile@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      19 minutes ago

      Ok,

      Here is a more polished version with MIT license.

      Improvements

      -User counts

      -Connection Status Indicator

      -Ability to turn on persistent rooms. By default, the server only relays in real time. /persist turns on chat logs. The server then stores encrypted messages and users can chat asynchronously.

      -Rotating onion address and keeping existing onion now work correctly. If you rotate a onion address, since encryption keys are partially derived from the onion address, the client will be unable to decrypt messages even if the same password is used.

      -filter command can be used to bootstrap private rooms in a scenario where multiple people want to use the same server, yet chat privately. All it does is filter out messages that it can’t decrypt because it has the wrong password.

      -Got rid of ncurses set up menus to slim down the script a bit.

      -Removed redundant server manager commands and now only list two. Quit and Quit and Flush (this deletes everything in the server directory except persistent chat logs if they were turned on)

      New UI

      Example of Encrypted Chat Logs on Server Side

      I noticed some of my devices during testing wouldn’t connect without hosting a server in a seperate instance. I’m not sure why this is happening but if you can’t connect, try to host a server and then connect to another host. This seemed to fix the issue.

  • solrize@lemmy.ml
    link
    fedilink
    English
    arrow-up
    4
    ·
    3 days ago

    I don’t get it, how to other clients connect and do they use the same program? It does look cool though the tmux keyboard is bare bones.

    • hereforawhile@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      3 days ago

      The install script contains all the pieces needed to be the host server or just a client. Because termux allows you to run multiple sessions, if you are the host, you have to run the server in one session and then connect in a different session.

      What’s not shown in the screen shot is that if you choose to host, a onion address is generated. This is how other clients connect.

      • solrize@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        3 days ago

        I did see some onion code in the script, but didn’t figure out that it was listening on an onion port. Cool. I’m not sure of the attraction of running it on a phone, but I’ll take your word for it ;). Do you actually use it? Yeah I can see wanting to reorganize it in some ways, and maybe try to use some more standard protocols (irc?) or a subset. Does tor not already provide its own crypto?

        • hereforawhile@lemmy.mlOP
          link
          fedilink
          English
          arrow-up
          5
          ·
          3 days ago

          Yeah, tor is already encrypting between each node and since both clients are connecting to the rendezvous point inside of the Tor network it should already theoretically be encrypted E2E… The other crypto is just in case that’s not true… why not add other layers of encryption if you can.

          No I don’t use it it’s kinda just a lil hobby. Nice to know I can depoly worldwide anonymous coms from my pocket though.

          I have better more usable methods

  • phase@lemmy.8th.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 days ago

    Is Termux still up to date? I thought it wasn’t available on android anymore. Is it on something else?

    • hereforawhile@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 days ago

      I think you can but the developers recommend getting it from GitHub or F-Droid because of google play policy issues.

  • Jayjader@jlai.lu
    link
    fedilink
    English
    arrow-up
    3
    ·
    3 days ago

    Kudos for developing this on your phone! I’ve played around with termux, even have a Bluetooth keyboard, but I’ve never had the courage to actually code through it.