Skip to content

TypeError when attempting to install OS update. #153

Description

@Cienaxle

I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
Success: Connected to device
Failed to get the version number from the filename, please enter it: 3.3.2.1666
Starting fake updater at 10.11.99.6:8085
Checking if device can connect to this machine
Starting update service on device
Updating...
requested: 2.5.0.27
platform: reMarkable
----------------------------------------
Exception occurred during processing of request from ('10.11.99.1', 43672)
Traceback (most recent call last):
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
TypeError: string indices must be integers, not 'str'
----------------------------------------
Updating...
requested: 2.5.0.27
platform: reMarkable
----------------------------------------
Exception occurred during processing of request from ('10.11.99.1', 43674)
Traceback (most recent call last):
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
TypeError: string indices must be integers, not 'str'
----------------------------------------
Updating...
I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
Traceback (most recent call last):
File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
SystemError: There was an error updating :(

The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

status:

Current version: 2.5.0.27
Old update engine: True
Beta active: Release
Version id: 20201127104105

Firmware downloaded using:
codexctl download 3.3.2.1666 --hardware rm1 --out .

codexctl is the 2025-11-08 binary compiled for Ubuntu.

I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      , 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
       blocks
      (function() {
      function addCopyButtons() {
      document.querySelectorAll('pre code').forEach(function(codeBlock) {
      if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
      codeBlock.parentElement.setAttribute('data-copy-added', 'true');
      var btn = document.createElement('button');
      btn.textContent = 'Copy';
      btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
      btn.onmouseover = function() { this.style.opacity = '1'; };
      btn.onmouseout = function() { this.style.opacity = '0.7'; };
      btn.onclick = function() {
      navigator.clipboard.writeText(codeBlock.textContent).then(function() {
      btn.textContent = 'Copied!';
      setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
      });
      };
      codeBlock.parentElement.style.position = 'relative';
      codeBlock.parentElement.appendChild(btn);
      });
      }
      addCopyButtons();
      // Re-run on dynamic content
      var observer = new MutationObserver(addCopyButtons);
      observer.observe(document.body, { childList: true, subtree: true });
      })();
      }
      } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
      })();
      (function(){
      try {
      var __m = "github.com";
      var __re = new RegExp('^' + "github\\.com" + '
      TypeError when attempting to install OS update. · Issue #153 · Jayy001/codexctl · GitHub
      Skip to content

      TypeError when attempting to install OS update. #153

      Description

      @Cienaxle

      I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

      ./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

      Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
      Success: Connected to device
      Failed to get the version number from the filename, please enter it: 3.3.2.1666
      Starting fake updater at 10.11.99.6:8085
      Checking if device can connect to this machine
      Starting update service on device
      Updating...
      requested: 2.5.0.27
      platform: reMarkable
      ----------------------------------------
      Exception occurred during processing of request from ('10.11.99.1', 43672)
      Traceback (most recent call last):
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
      File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
      TypeError: string indices must be integers, not 'str'
      ----------------------------------------
      Updating...
      requested: 2.5.0.27
      platform: reMarkable
      ----------------------------------------
      Exception occurred during processing of request from ('10.11.99.1', 43674)
      Traceback (most recent call last):
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
      File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
      TypeError: string indices must be integers, not 'str'
      ----------------------------------------
      Updating...
      I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
      W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
      I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
      I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
      E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
      Traceback (most recent call last):
      File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
      File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
      File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
      File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
      SystemError: There was an error updating :(
      

      The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

      The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

      status:

      Current version: 2.5.0.27
      Old update engine: True
      Beta active: Release
      Version id: 20201127104105
      

      Firmware downloaded using:
      codexctl download 3.3.2.1666 --hardware rm1 --out .

      codexctl is the 2025-11-08 binary compiled for Ubuntu.

      I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

      Metadata

      Metadata

      Assignees

      No one assigned

        Labels

        No labels
        No labels

        Projects

        No projects

          Milestone

          No milestone

          Relationships

          None yet

          Development

          No branches or pull requests

          Issue actions

          , 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' TypeError when attempting to install OS update. · Issue #153 · Jayy001/codexctl · GitHub
          Skip to content

          TypeError when attempting to install OS update. #153

          Description

          @Cienaxle

          I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

          ./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

          Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
          Success: Connected to device
          Failed to get the version number from the filename, please enter it: 3.3.2.1666
          Starting fake updater at 10.11.99.6:8085
          Checking if device can connect to this machine
          Starting update service on device
          Updating...
          requested: 2.5.0.27
          platform: reMarkable
          ----------------------------------------
          Exception occurred during processing of request from ('10.11.99.1', 43672)
          Traceback (most recent call last):
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
          File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
          TypeError: string indices must be integers, not 'str'
          ----------------------------------------
          Updating...
          requested: 2.5.0.27
          platform: reMarkable
          ----------------------------------------
          Exception occurred during processing of request from ('10.11.99.1', 43674)
          Traceback (most recent call last):
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
          File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
          TypeError: string indices must be integers, not 'str'
          ----------------------------------------
          Updating...
          I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
          W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
          I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
          I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
          E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
          Traceback (most recent call last):
          File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
          File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
          File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
          File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
          SystemError: There was an error updating :(
          

          The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

          The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

          status:

          Current version: 2.5.0.27
          Old update engine: True
          Beta active: Release
          Version id: 20201127104105
          

          Firmware downloaded using:
          codexctl download 3.3.2.1666 --hardware rm1 --out .

          codexctl is the 2025-11-08 binary compiled for Ubuntu.

          I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

          Metadata

          Metadata

          Assignees

          No one assigned

            Labels

            No labels
            No labels

            Projects

            No projects

              Milestone

              No milestone

              Relationships

              None yet

              Development

              No branches or pull requests

              Issue actions

              , 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' TypeError when attempting to install OS update. · Issue #153 · Jayy001/codexctl · GitHub
              Skip to content

              TypeError when attempting to install OS update. #153

              Description

              @Cienaxle

              I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

              ./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

              Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
              Success: Connected to device
              Failed to get the version number from the filename, please enter it: 3.3.2.1666
              Starting fake updater at 10.11.99.6:8085
              Checking if device can connect to this machine
              Starting update service on device
              Updating...
              requested: 2.5.0.27
              platform: reMarkable
              ----------------------------------------
              Exception occurred during processing of request from ('10.11.99.1', 43672)
              Traceback (most recent call last):
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
              File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
              TypeError: string indices must be integers, not 'str'
              ----------------------------------------
              Updating...
              requested: 2.5.0.27
              platform: reMarkable
              ----------------------------------------
              Exception occurred during processing of request from ('10.11.99.1', 43674)
              Traceback (most recent call last):
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
              File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
              TypeError: string indices must be integers, not 'str'
              ----------------------------------------
              Updating...
              I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
              W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
              I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
              I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
              E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
              Traceback (most recent call last):
              File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
              File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
              File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
              File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
              SystemError: There was an error updating :(
              

              The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

              The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

              status:

              Current version: 2.5.0.27
              Old update engine: True
              Beta active: Release
              Version id: 20201127104105
              

              Firmware downloaded using:
              codexctl download 3.3.2.1666 --hardware rm1 --out .

              codexctl is the 2025-11-08 binary compiled for Ubuntu.

              I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

              Metadata

              Metadata

              Assignees

              No one assigned

                Labels

                No labels
                No labels

                Projects

                No projects

                  Milestone

                  No milestone

                  Relationships

                  None yet

                  Development

                  No branches or pull requests

                  Issue actions

                  , 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' TypeError when attempting to install OS update. · Issue #153 · Jayy001/codexctl · GitHub
                  Skip to content

                  TypeError when attempting to install OS update. #153

                  Description

                  @Cienaxle

                  I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

                  ./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

                  Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
                  Success: Connected to device
                  Failed to get the version number from the filename, please enter it: 3.3.2.1666
                  Starting fake updater at 10.11.99.6:8085
                  Checking if device can connect to this machine
                  Starting update service on device
                  Updating...
                  requested: 2.5.0.27
                  platform: reMarkable
                  ----------------------------------------
                  Exception occurred during processing of request from ('10.11.99.1', 43672)
                  Traceback (most recent call last):
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                  File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                  File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                  File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                  File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                  TypeError: string indices must be integers, not 'str'
                  ----------------------------------------
                  Updating...
                  requested: 2.5.0.27
                  platform: reMarkable
                  ----------------------------------------
                  Exception occurred during processing of request from ('10.11.99.1', 43674)
                  Traceback (most recent call last):
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                  File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                  File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                  File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                  File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                  File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                  TypeError: string indices must be integers, not 'str'
                  ----------------------------------------
                  Updating...
                  I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
                  W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
                  I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
                  I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
                  E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
                  Traceback (most recent call last):
                  File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
                  File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
                  File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
                  File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
                  SystemError: There was an error updating :(
                  

                  The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

                  The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

                  status:

                  Current version: 2.5.0.27
                  Old update engine: True
                  Beta active: Release
                  Version id: 20201127104105
                  

                  Firmware downloaded using:
                  codexctl download 3.3.2.1666 --hardware rm1 --out .

                  codexctl is the 2025-11-08 binary compiled for Ubuntu.

                  I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

                  Metadata

                  Metadata

                  Assignees

                  No one assigned

                    Labels

                    No labels
                    No labels

                    Projects

                    No projects

                      Milestone

                      No milestone

                      Relationships

                      None yet

                      Development

                      No branches or pull requests

                      Issue actions

                      , 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' TypeError when attempting to install OS update. · Issue #153 · Jayy001/codexctl · GitHub
                      Skip to content

                      TypeError when attempting to install OS update. #153

                      Description

                      @Cienaxle

                      I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

                      ./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

                      Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
                      Success: Connected to device
                      Failed to get the version number from the filename, please enter it: 3.3.2.1666
                      Starting fake updater at 10.11.99.6:8085
                      Checking if device can connect to this machine
                      Starting update service on device
                      Updating...
                      requested: 2.5.0.27
                      platform: reMarkable
                      ----------------------------------------
                      Exception occurred during processing of request from ('10.11.99.1', 43672)
                      Traceback (most recent call last):
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                      File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                      TypeError: string indices must be integers, not 'str'
                      ----------------------------------------
                      Updating...
                      requested: 2.5.0.27
                      platform: reMarkable
                      ----------------------------------------
                      Exception occurred during processing of request from ('10.11.99.1', 43674)
                      Traceback (most recent call last):
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                      File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                      File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                      File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                      TypeError: string indices must be integers, not 'str'
                      ----------------------------------------
                      Updating...
                      I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
                      W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
                      I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
                      I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
                      E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
                      Traceback (most recent call last):
                      File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
                      File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
                      File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
                      File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
                      SystemError: There was an error updating :(
                      

                      The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

                      The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

                      status:

                      Current version: 2.5.0.27
                      Old update engine: True
                      Beta active: Release
                      Version id: 20201127104105
                      

                      Firmware downloaded using:
                      codexctl download 3.3.2.1666 --hardware rm1 --out .

                      codexctl is the 2025-11-08 binary compiled for Ubuntu.

                      I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

                      Metadata

                      Metadata

                      Assignees

                      No one assigned

                        Labels

                        No labels
                        No labels

                        Projects

                        No projects

                          Milestone

                          No milestone

                          Relationships

                          None yet

                          Development

                          No branches or pull requests

                          Issue actions

                          , 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' TypeError when attempting to install OS update. · Issue #153 · Jayy001/codexctl · GitHub
                          Skip to content

                          TypeError when attempting to install OS update. #153

                          Description

                          @Cienaxle

                          I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

                          ./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

                          Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
                          Success: Connected to device
                          Failed to get the version number from the filename, please enter it: 3.3.2.1666
                          Starting fake updater at 10.11.99.6:8085
                          Checking if device can connect to this machine
                          Starting update service on device
                          Updating...
                          requested: 2.5.0.27
                          platform: reMarkable
                          ----------------------------------------
                          Exception occurred during processing of request from ('10.11.99.1', 43672)
                          Traceback (most recent call last):
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                          File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                          TypeError: string indices must be integers, not 'str'
                          ----------------------------------------
                          Updating...
                          requested: 2.5.0.27
                          platform: reMarkable
                          ----------------------------------------
                          Exception occurred during processing of request from ('10.11.99.1', 43674)
                          Traceback (most recent call last):
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                          File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                          File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                          File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                          TypeError: string indices must be integers, not 'str'
                          ----------------------------------------
                          Updating...
                          I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
                          W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
                          I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
                          I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
                          E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
                          Traceback (most recent call last):
                          File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
                          File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
                          File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
                          File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
                          SystemError: There was an error updating :(
                          

                          The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

                          The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

                          status:

                          Current version: 2.5.0.27
                          Old update engine: True
                          Beta active: Release
                          Version id: 20201127104105
                          

                          Firmware downloaded using:
                          codexctl download 3.3.2.1666 --hardware rm1 --out .

                          codexctl is the 2025-11-08 binary compiled for Ubuntu.

                          I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

                          Metadata

                          Metadata

                          Assignees

                          No one assigned

                            Labels

                            No labels
                            No labels

                            Projects

                            No projects

                              Milestone

                              No milestone

                              Relationships

                              None yet

                              Development

                              No branches or pull requests

                              Issue actions

                              , 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); TypeError when attempting to install OS update. · Issue #153 · Jayy001/codexctl · GitHub
                              Skip to content

                              TypeError when attempting to install OS update. #153

                              Description

                              @Cienaxle

                              I am running into trouble when trying to run 'codexctl install' on my reMarkable RM100.

                              ./codexctl install updates/3.3.2.1666_reMarkable-Ak1sdSSGWD-.signed

                              Would you like to use a password to connect? (Y/n): Enter RM SSH password: **********
                              Success: Connected to device
                              Failed to get the version number from the filename, please enter it: 3.3.2.1666
                              Starting fake updater at 10.11.99.6:8085
                              Checking if device can connect to this machine
                              Starting update service on device
                              Updating...
                              requested: 2.5.0.27
                              platform: reMarkable
                              ----------------------------------------
                              Exception occurred during processing of request from ('10.11.99.1', 43672)
                              Traceback (most recent call last):
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                              File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                              TypeError: string indices must be integers, not 'str'
                              ----------------------------------------
                              Updating...
                              requested: 2.5.0.27
                              platform: reMarkable
                              ----------------------------------------
                              Exception occurred during processing of request from ('10.11.99.1', 43674)
                              Traceback (most recent call last):
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 318, in _handle_request_noblock
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 349, in process_request
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 362, in finish_request
                              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 672, in __init__
                              File "/tmp/onefile_9755_1763390312_587915/socketserver.py", line 766, in __init__
                              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 436, in handle
                              File "/tmp/onefile_9755_1763390312_587915/http/server.py", line 424, in handle_one_request
                              File "/tmp/onefile_9755_1763390312_587915/codexctl/server.py", line 112, in do_POST
                              TypeError: string indices must be integers, not 'str'
                              ----------------------------------------
                              Updating...
                              I1117 14:38:55.801147 406 update_engine_client.cc:271] Initiating update check and install.
                              W1117 14:38:55.818012 406 update_engine_client.cc:64] Error getting dbus proxy for no.remarkable.update1: GError(3): Could not get owner of name 'no.remarkable.update1': no such name
                              I1117 14:38:55.818154 406 update_engine_client.cc:54] Retrying to get dbus proxy. Try 2/4
                              I1117 14:39:05.849915 406 update_engine_client.cc:276] Waiting for update to complete.
                              E1117 14:39:20.964996 406 update_engine_client.cc:207] Update failed.
                              Traceback (most recent call last):
                              File "/tmp/onefile_9755_1763390312_587915/main.py", line 13, in <module>
                              File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 523, in main
                              File "/tmp/onefile_9755_1763390312_587915/codexctl/__init__.py", line 323, in call_func
                              File "/tmp/onefile_9755_1763390312_587915/codexctl/device.py", line 661, in install_ohma_update
                              SystemError: There was an error updating :(
                              

                              The "TypeError' makes me think that it might be my fault. In response to "Failed to get version number from the filename..." I entered the full version number 3.3.2.1666. Could it be that python is interpreting this as a str? Should I be entering version 3.3, or perhaps the version ID instead of version number?

                              The file ~/.config/codexctl/version-ids.json exists and shows an entry for version 3.3.2.1666.

                              status:

                              Current version: 2.5.0.27
                              Old update engine: True
                              Beta active: Release
                              Version id: 20201127104105
                              

                              Firmware downloaded using:
                              codexctl download 3.3.2.1666 --hardware rm1 --out .

                              codexctl is the 2025-11-08 binary compiled for Ubuntu.

                              I acquired this device used, from a thrift store. I used 'journalctl -a' first thing to grab as much of the history of the device as I could. It appears from this output that the previous owner attempted to update to firmware 3.11.2.5, but that this attempt failed. It seems that it was updated, then shut down without rebooting into 3.11.2.5 until finally it was donated to the thrift store months later. When I powered it up it booted into 2.5.0.27. The 3.11 firmware may still be sitting on the fallback partition. Possibly the device was left in an unstable state. I perfromed a factory reset prior to using codexctl.

                              Metadata

                              Metadata

                              Assignees

                              No one assigned

                                Labels

                                No labels
                                No labels

                                Projects

                                No projects

                                  Milestone

                                  No milestone

                                  Relationships

                                  None yet

                                  Development

                                  No branches or pull requests

                                  Issue actions