75 Commits

Author SHA1 Message Date
F
e2e43c8bf2 Add experimental status warning to pgp.py
Added a warning about the plugin's experimental status.
2025-12-20 14:08:11 +01:00
F
37512a189b Update PGP key generation and display capabilities 2025-12-20 14:03:14 +01:00
F
b86c81ff6c Implement trust level command for PGP keys
Add trust level setting for PGP keys with fallback methods.
2025-12-20 13:58:48 +01:00
F
5c36f41e56 Enhance encryption message handling and key display 2025-12-20 13:50:28 +01:00
F
db4976438e Implement passphrase support for PGP keys
Added passphrase handling for PGP key management.
2025-12-20 13:40:51 +01:00
F
88a4eb0d22 Refactor trust and send commands for better usage 2025-12-20 13:35:00 +01:00
F
e8ccde91f6 Implement automatic PGP key exchange
Added automatic key exchange feature to handle PGP key requests and responses.
2025-12-20 13:27:53 +01:00
F
fb2569f8cf Add automatic key exchange guide 2025-12-20 13:27:04 +01:00
F
1ffe076641 Termux keygen fix update 2025-12-20 13:18:30 +01:00
F
546a1a78f7 Fix termux keygen 2025-12-20 13:13:53 +01:00
F
e21618b995 fix termux keygen 2025-12-20 13:10:12 +01:00
F
6286dab887 Add readme and termux install script 2025-12-20 13:00:50 +01:00
F
874eb477d3 PGP Plugin Termux usage fix
Added keygen and diagnose commands to generate pgp keys if skipped on termux and verify pgp is working properly
2025-12-20 12:59:40 +01:00
F
e5787f5ef8 Add PGP plugin
PGP plugin for added security layer in messaging, included readme and easy installation script.
Automatically generate PGP signature keys on first load and auto encrypt / decript messages using PGP.
 
After install usage:

──────────────────────────────────────────────────────────────────────
PGP PLUGIN - COMMANDS
──────────────────────────────────────────────────────────────────────

📊 Status & Info:
  pgp status              - Show PGP status and settings
  pgp list                - List all keys in keyring

🔑 Key Management:
  pgp keygen              - Generate new PGP key pair
  pgp export              - Export your public key
  pgp import <contact>    - Request public key from contact
  pgp trust <contact> <key> - Import and trust a public key

📨 Messaging:
  pgp send <contact> <msg> - Send encrypted message

⚙️  Settings:
  pgp set auto_encrypt on/off    - Auto-encrypt outgoing
  pgp set auto_sign on/off        - Auto-sign outgoing
  pgp set auto_decrypt on/off     - Auto-decrypt incoming
  pgp set auto_verify on/off      - Auto-verify signatures
  pgp set reject_unsigned on/off  - Reject unsigned messages
  pgp set reject_unencrypted on/off - Reject unencrypted

──────────────────────────────────────────────────────────────────────
2025-12-20 12:46:02 +01:00
F
3a0f5d6ea9 Fix 32 hex chars hash error
Fix 32 hex chars hash error bug in edit contact and clean target functions
2025-12-15 19:14:57 +01:00
F
16d4b2e8b2 Add bme680 sensor telemetry plugin bot
Telemetry plugin for bme680 Temp / Hum / Gas sensor, connected to i2c address 0x76 or 0x77 on Raspberry pi zero.

Supports sensor warmup on plugin load, gas sensor baseline calibration, AQI and AQ scores, Temp and Humidity readings. 

Local and remote sensor reading!

Commands usage:
bme           - Show help
bme read      - Full telemetry with AQI
bme simple    - Telemetry without AQI (faster)
bme raw       - JSON output
bme calibrate - Calibrate baseline
bme baseline  - Show baseline values
bme reinit    - Reinitialize sensor  

From a remote lxmf client, send message: bme

Originally Made by: Cascafico , edited by F
2025-12-07 22:19:40 +01:00
F
b64276aafc Add prop_node plugin
Add propagation nodes management plugin.

Configurable propagation nodes discovery from announces, enable or disable PN function, set your favorite address manually or from the PN announce list, auto send to PN on failed delivery, auto or manual sync to retrieve queued messages from PN.

============================================================
PROPAGATION NODE PLUGIN
============================================================

Commands:
  prop status          - Show detailed status
  prop on/off          - Enable/disable plugin
  prop list            - List propagation nodes
  prop set <#|hash>    - Set active node by index or hash
  prop unset           - Deactivate node
  prop sync            - Sync messages now
  prop send <#|hash> <message>  - Send via prop node
  prop autosync on/off - Toggle auto-sync
  prop interval <s>    - Set sync interval
  prop retry on/off    - Auto-retry failed
  prop discover on/off - Toggle alerts
============================================================
2025-11-23 16:22:24 +01:00
F
bd42a87f67 Add meteo plugin
Add meteo plugin for local or remote weather requests

# Local commands
> meteo                    # Show weather for default city (Rome)
> meteo London            # Show weather for London
> meteo New York          # Show weather for New York
> meteo set Paris         # Set Paris as default city
> meteo default           # Show current default city

# Remote commands (via LXMF message)
/meteo                    # Default city weather
/meteo Tokyo             # Tokyo weather
/weather Berlin          # Berlin weather (alias)
```

**Sample Output:**
```
==================================================
🌍 WEATHER FORECAST
==================================================

📍 Rome, Lazio, Italy

☀️ CURRENT CONDITIONS
--------------------------------------------------
Condition: Clear sky
Temperature: 18.5°C (feels like 17.2°C)
Humidity: 65%
Wind: → 12.3 km/h

📅 3-DAY FORECAST
--------------------------------------------------

Mon 2024-01-15:  Partly cloudy
  Temp: 12.0°C - 19.0°C
  Wind: 15.2 km/h

Tue 2024-01-16: 🌧️ Moderate rain
  Temp: 10.5°C - 15.0°C
  Rain: 8.5 mm
  Wind: 18.5 km/h

Wed 2024-01-17: 🌤️ Mainly clear
  Temp: 11.0°C - 17.5°C
  Wind: 12.0 km/h

==================================================
Data: Open-Meteo.com
2025-11-22 10:55:29 +01:00
F
a886bb528f Add c_info plugin contact info
Contact info plugin to search and show, and  easily copy contact hash address.

💡 Usage: show <contact>

Search by:
  - Contact index: show 1
  - Contact name: show Alice
  - Peer index: show 5
  - Display name: show Bob
  - Hash: show abc123...
  - Partial hash: show abc123

💡 Quick Actions:
   copy - Copy hash to clipboard
   send user <msg> - Send message
   edit user - Edit contact
   messages user 1 - View conversation
2025-11-22 10:30:22 +01:00
F
a6a81faee4 Add remote plugin management rm_man plugin
Add remote plugin management: manage you plugins remotely from another lxmf instance via messages. Only authorized hash can request remote actions.

Usage:

============================================================
Remote Plugin Manager: ENABLED ✓
============================================================

Allows authorized users to manage plugins via LXMF

Remote Commands:
  /plist - List all plugins
  /pcom - List plugin commands
  /pcom <plugin> <cmd> - Execute command
  /penable <name> - Enable plugin
  /pdisable <name> - Disable plugin
  /preload - Reload all plugins

Local Commands:
  rp on/off - Toggle remote management
  rp auth <hash> - Authorize user
  rp deauth <hash> - Deauthorize user
============================================================
2025-11-22 09:18:10 +01:00
F
282f458108 Update echo_bot.py
Fix ansi code output in terminal
2025-11-21 19:52:50 +01:00
F
cfde480ae0 Fix ansi code output in terminal 2025-11-21 19:52:05 +01:00
F
7c430e37d8 Add telegram_bridge plugin
LXMF TO TELEGRAM BRIDGE

Initial release, expect bugs, feel free to improve the plugin!

All received lxmf messages are forwardet to telegram via your custom telegram bot and custom destination (group or private chat id)

The bot could also message the lxmf-cli and send commands to it but its still in experimental phase.

Usage: tg <start|stop|status|config|test>
  tg config <bot_token> <chat_id>
  tg start
  tg stop
  tg status
  tg test      - Test bot connection and get bot info
2025-11-21 18:49:26 +01:00
F
5e3bc00f0b Update telemetry.py
Fix collector continuous sending bug on collector disabled.
2025-11-19 21:22:32 +01:00
F
053ec4b7e8 Add groupchat plugin
A plugin that transforms your lxmf-cli into a group chat that relays all messages between joined users.

======================================================================
GROUP CHAT
======================================================================

Manage Groups:
  gc create <name> <member> [member2] ...      - Create new group
  gc list                                      - List all groups
  gc info <name>                               - Show group details
  gc delete <name>                             - Delete group
  gc rename <old> <new>                        - Rename group
  gc relay <name> <on|off>                     - Toggle auto-relay

Manage Members:
  gc add <group> <member> [member2] ...        - Add members
  gc remove <group> <member> [member2] ...     - Remove members

Send Messages:
  gc send <group> <message>                    - Send to group
  gc s <group> <message>                       - Send to group (short)

Member Specification:
  <member> can be:
    - Contact name: alice
    - Contact index: 5  (automatically uses contact #5)
    - Contact flag: -c 5
    - Peer flag: -p 10
    - Direct hash: 4eb4d4d592081a55cac5a479c3701d90

Examples:
  gc create friends alice bob charlie      (by name)
  gc create team 2 5 12                    (contacts #2, #5, #12)
  gc add friends david 7 -p 10             (name, contact #7, peer #10)
  gc relay friends off                     (disable auto-forwarding)
  gc send friends Hey everyone! $wave
  gc s friends Meeting at 3pm $clock

Auto-Relay:
  Messages from group members are automatically forwarded to all
  other members with [Group: name] prefix. Disable with 'gc relay'
======================================================================

To join from a remote client send these command messages:
/grouphelp
/grouplist
/groupjoin
/groupleave
2025-11-19 21:11:41 +01:00
F
0214fdcbf6 Update emoji.py plugin
Improved emojy sending function:
Multiple send, random emoji send, intercept shortcodes in messages to send emojis.

📝 Usage Examples:
# Show all emojis with shortcodes
emo

# List all shortcodes by category
emo list

# Send single emoji
emo 10 alice

# Send multiple emojis
emo 0 5 10 alice
emo 0-9 bob
emo 0,5,10-15 charlie

# Use in normal messages
s alice Meeting at 3pm $clock $ok
s bob Great work today $fire $tu $party
s charlie I $heart pizza $pizza

# Search emojis
emo search thumb
emo search fire
🔤 All Shortcodes:
Faces: happy, lol, love, cool, sad, cry, angry, shock, think, sleep
Gestures: tu, td, ok, peace, shake, wave, pray, strong
Symbols: heart, broken, 100, fire, zap, sparkle, star, dizzy
Animals: dog, cat, bear, fox, penguin, unicorn
Food: pizza, burger, beer, coffee, cake, apple, melon, taco
Activities: soccer, bball, game, music, movie, book
Travel: car, plane, rocket, home, earth, map
Tech: laptop, phone, watch, idea, tool, bat
Nature: sun, moon, rainbow, flower, tree, ocean
Extras: party, gift, money, clock, cal, check The plugin now automatically intercepts all outgoing messages and replaces shortcodes, making it super easy to add emojis to any message! 🚀
2025-11-19 15:16:09 +01:00
F
db78473209 Add plugin installer script
Python script to easily install and manage plugins.

After cloning the repo, launch the script and follow on screen instruction: 
python plugin_installer.py
2025-11-19 14:55:47 +01:00
F
a737ca71c6 Add plugin_manager plugin
Plugin Manager to install, remove or update plugins.

Commands:
  pstore list              - List available plugins
  pstore installed        - List installed plugins
  pstore info <name>      - Show plugin details
  pstore install <name>   - Install a plugin
  pstore uninstall <name> - Remove a plugin
  pstore update <name>    - Update a plugin
  pstore update-all       - Update all plugins
2025-11-19 14:45:21 +01:00
F
292c5d27c7 Add sideband compatible telemetry plugin
Add sideband compatible telemetry plugin to send and request telemetry, trusted peers list, lxmf collector compatible

Usage: telem <set|send|request|show|clear|config|trust|collector>

Data commands:
  telem set location <lat> <lon> [alt]
  telem set battery <percent>
  telem set temp <celsius>
  telem set pressure <hPa>
  telem set humidity <percent>
  telem send <contact>
  telem request <contact>
  telem show [contact]
  telem clear

Configuration:
  telem config                        - Show current settings
  telem config requests <on|off>      - Allow/deny telemetry requests
  telem config trusted <on|off>       - Enable trusted-only mode

Trust management:
  telem trust list                    - List trusted contacts
  telem trust add <contact>           - Add contact to trusted list
  telem trust remove <contact>        - Remove contact from trusted list

Collector:
  telem collector status              - Show collector status
  telem collector set <address>       - Set collector address
  telem collector enable              - Enable collector
  telem collector disable             - Disable collector
  telem collector interval <seconds>  - Set send interval
2025-11-19 14:35:22 +01:00
F
46a9a5209e Add sideband compatible telemetry functions
Added Sideband compatible telemetry field reachable via plugin
2025-11-19 14:32:54 +01:00
F
263e4b9cff Add plugin_status plugin
plugin to check all or single plugin status and available commands per plugin.

usage: pstatus <plugin>
2025-11-19 00:06:55 +01:00
F
41fbae083c Improve contact removal
Improved contact removal with index number, other than contact name like previous version.
2025-11-18 23:57:29 +01:00
F
5349541d1e Add ping plugin
Ping Plugin for LXMF-CLI
Uses Reticulum's Link mechanism to ping destinations and measure response time.

Usage: ping [-c|-p] <target> [count]
Examples:
  ping Alice          (ping contact by name)
  ping -c 5           (ping contact #5)
  ping -c 5 3         (ping contact #5 three times)
  ping -p 30          (ping peer #30)
  ping -p 30 5        (ping peer #30 five times)
  ping abc123def      (ping hash directly)
  ping Alice 3        (ping 3 times)
2025-11-18 23:51:10 +01:00
F
e5ae19228d Add search plugin
Search through: contacts, announced peers and messages

Commands: 
Overall research: search (or short: se) <keyword>
Search in contacts: se -c <name or hash>
Search in announced peers: se -p <name or hash>
Search in messages: se -m <keywords text>
2025-11-18 23:03:10 +01:00
F
6fef668322 Merge pull request #2 from neoemit/feat/fixing-mac-problems
Solve mac-specific problems
2025-11-16 15:38:24 +01:00
Thomas La Mendola
0262015ff3 Solve mac-specific problems 2025-11-16 16:32:28 +02:00
F
28604b7257 Improve quick send msg for known users in announces 2025-11-16 14:28:03 +01:00
F
507b0598a9 Improve contact list ui 2025-11-16 14:22:40 +01:00
F
60cfac07f5 Improve contact list and announced peers list
Improve contact list and announced peers list for termux or mobile screens
2025-11-16 14:20:13 +01:00
F
21a93ec81e Better icon for received announces 2025-11-16 14:00:04 +01:00
F
4f5daf6bdc Improve received announces readability
Improve received announces readability for small screen devices, announce info split in 2 lines.
2025-11-16 13:58:38 +01:00
F
e9a2b483a4 Improve received messages ui
Improve received messages ui: include timestamp in the notification title, remove hash address from the sender (less verbose output for small screens)
2025-11-16 13:50:00 +01:00
F
1495b98821 Hide termux now playing notification.wav
Hide termux "now playing notification.wav" on received messages, verbose and useless!
2025-11-16 13:36:58 +01:00
F
456c08e8ee Add prompt_toolkit to installation instructions
Updated installation instructions to include prompt_toolkit.
2025-11-16 13:29:25 +01:00
F
655dae0aa1 Add prompt_toolkit to requirements 2025-11-16 13:25:12 +01:00
F
4563c378b3 Include .wav notification file
Add .wav notification audio file.
2025-11-16 13:24:18 +01:00
F
edf8b6d7a4 Major rewrite with bug fixes and improvements
Improved user ui, 
fixed prompt line break bug,
implement sound notification
other fixes and adjustements
2025-11-16 13:19:40 +01:00
F
fed16b6b77 Expose Colorama Fore and Style after refactoring
Expose Colorama Fore and Style after refactoring, avoid to include colorama in every plugin
2025-11-15 14:17:39 +01:00
F
0b8ec09b9e Merge pull request #1 from neoemit/feat/mac-specific-notification
Add mac specific notification and requirements.txt , refactoring
2025-11-15 14:12:23 +01:00
F
9ad22fdfdd Add emoji plugin
Add plugin for fast emoji sending to last contact or selected contact from address book
2025-11-14 22:04:35 +01:00