Mucous
Home Soulseek Links Nicotine Museek Code Graphics & Others
Museek+   Mucous   Murmur   Museek+ Wiki / Trac   Museek FAQ   Museek Guide
First, a bit of history.

Mucous started out as museekchat, which was written by Hyriand. Hyriand also created the Python bindings for museek. Therefore, I only needed to do half the work I'd otherwise have had to do... just create the UI and fill in the missing bits of protocol handling. Easy, eh? :)

Hint: museekchat was 7KB and Mucous is now past 200KB

Anyway, having never did anything in Ncurses before, I had to learn everything as I went along.. and there is still a lot I need to learn... if you have any tips, feel free to send them my way. There are a lot of cludges in this code, and dare I say it... a lot of features.

So.. maybe you need some help figuring it all out?

About Mucous | Dependencies | Features | Changelog | Old Versions | Gallery | Tips, Instructions


If you have never used a Soulseek client before, maybe you need to read the Soulseek FAQ or perhaps this Introduction to Soulseek I wrote.

Mucous is a Curses client for Museek and because of this, it relies on Museek for all it's protocol features. Any missing Soulseek features, can be attributed to Museek, not Mucous. Conversely, Museek's coolness doesn't immediately mean Mucous is going to be blazingly fast, unicode-compliant or stable.

Setting up Mucous

  • After Museek is up and running, run mucous

    once running, you'll get an error message, and be sent to Help Mode.
    The error message should be "Connection failed, try changing your interface or password "
    Now, you have two options: do it all with /commands, or use Setup Mode for part of it.

    • The commands:
      /interface hostname:port
      /password interface_password
    • Setup mode:

      If you are runng Museekd on a non-default port, or are remotely connecting to Museekd, you'll need to change the interface.

      Click on "Museek Interface", and the input box will change to "Set Interface"

      Type the interface as so: hostname:port (example: localhost:2240) and press Enter

      Do the same for "Interface password"

    Now, type /save & /connect and you should be connected to Museekd (not necessarly to the Soulseek Server)

    If you aren't connected to the Soulseek server, you should re-check Museek's configuration.

Using Mucous for the first time

  • Keys:

    There are a bunch of hotkeys in Mucous, here's a list of hotkeys and their common uses.
    • F1 -> Switch to Chat Rooms
    • F2 -> Switch to Private Chat
    • F3 -> Switch to Transfers
    • F4 -> Switch to Search
    • F5 -> Switch to User Info
    • F6 -> Switch to Browse Shares
    • F7 -> Switch to Users Lists
    • F8 -> Switch to Rooms List
    • F9 -> Switch to Setup Mode
    • F10 -> Switch to Help Mode
    • Tab -> Autocomplete text in the Input box
    • Up & Down arrows & PgUp & PgDn -> Scroll up and down the various logs
    • Alt-Left & Alt-Right & Insert ->
      • Switch between rooms in Chat Rooms
      • Cycle thru Users in the Private Chat, User Info, and Browse Shares modes
      • Switch which transfers to display in Transfer mode
      • Switch searches in Search mode
      • Switch between Mucous and Museek setup in Setup Mode.
    • Alt-Up & Alt-Down & -> Scroll thru Input History
    • Home & End ->
      • Switch between the Chat-Box and the Users-in-Room-box in the Chat Rooms
      • Switch between Uploads and Downloads in Transfers
      • Switch Between Buddy and Global searches in Search mode
  • Commands:

    • There are a downright frightening number of commands in Mucous... or, at least I know I'm frightened... having to list them all
    • Chat Commands

      • /me
      • /join
      • /part & /leave
      • /away
      • /talk
      • /say
      • /list & /users
      • /url & /urlreader & /urlcustom
      • /alias
      • /np & /npset & /npcheck & /npprefix
      • /autojoin & /noauto
      • /roombox
      • /inrooms
      • /clearroom

    • User Management:

      • /ban & /unban
      • /buddy & /unbuddy
      • /ignore & /unignore
      • /nuke & /unnuke (Ignore & Ban)

    • Private Chat:

      • /pm
      • /msg
      • /pmclose
      • /close

    • Tickers

      • /tickroom
      • /tickcycle
      • /settick
      • /listtick
      • /tickers

    • User Info

      • /ip
      • /infoclose
      • /stat
      • /userinfo

    • Transfers

      • /abortup & /abortdown
      • /removeup & /removedown
      • /clearup & /cleardown
      • /retry & /retryall
      • /downuser
      • /downpath
      • /downpathdir

    • Searches

      • /searchfor
      • /searchbuddy
      • /download
      • /downdir
      • /clearsearchs
      • /filter

    • Browse Shares

      • /browseuser
      • /browsesearch & /bsearch
      • /download
      • /close

      • Browsing Shares Filesystem

        • /cd & cd
        • /ls & ls (Minimal Listing)
        • /ls -l & ls -l (Wide Listing)
        • /get & get (Download)
        • /getdir & getdir (Download Directory file is in)

    • Modes

      • /chat
      • /private
      • /transfer
      • /search
      • /info
      • /browse
      • /buddylist
      • /banlist
      • /ignorelist
      • /roomlist
      • /setup
      • /help

    • Setup

      • /quit (Close Mucous)
      • /interface (Set Mucous' Interface Device)
      • /password (Set Mucous' Interface Password)
      • /save (Save Mucous Configuration)
      • /connect (Connect to Museekd)
      • /disconnect (Disconnect from Museekd)
      • /share-mode (Toggle) Active or Passive connections
      • /logging (Toggle) Enable or disable logging of chat messages
      • /rescanshares (Runs muscan)
      • /reloadshares (Runs killall -HUP museekd)
      • /autobuddy (Toggle) Downloads initiated by Mucous will automatically buddy that user
      • /privbuddy (Toggle) Buddies get a higher priority in your upload queue
      • /onlybuddy (Toggle) Only sharing to your buddies, or sharing to everyone
      • /slots <num>
      • /unhide (Toggle Password display)
      • /nick (Change your nick, takes effect next time you start museekd)
      • /roomlistrefresh (Refresh list of rooms)