Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stable merge for week 29 of 2021 #391

Merged
merged 11 commits into from
Jul 31, 2021
Merged

Stable merge for week 29 of 2021 #391

merged 11 commits into from
Jul 31, 2021

Conversation

matteodelabre
Copy link
Member

@matteodelabre matteodelabre commented Jul 21, 2021

Important notices:

  • When upgrading, users should run opkg update && opkg upgrade twice because of the changes introduced by this merge. (Implement architecture separation #310)
  • Toltec no longer supports OS releases earlier than 2.6. You can check your current OS version in the settings panel. If you’re still running on 2.5 or earlier, please upgrade to 2.6 or newer after upgrading your Toltec install. (Update packages for release 2.6 and onwards #366)

Less important notices:

  • To re-enable Toltec after a system upgrade, run toltecctl reenable instead of the previous entware-reenable script that has been removed with this update.
  • You can now easily uninstall Toltec by running toltec uninstall.
  • This release marks the end of our work towards transitioning to a new repository layout. This means that stable will be updated more frequently from now on. If you switched to the testing branch because stable has been outdated for a few months, and if you prefer to run stable releases, you can go back to the stable branch by running toltecctl switch-branch stable.

Layout change: The repository is now split into architecture subfolders. The rmall subfolder contains packages that can run both on reMarkable 1 and reMarkable 2 without modification. The rm1 and rm2 subfolders contain packages that are specific to each of the two devices. This change requires updating the Opkg configuration to point to the appropriate architectures. The migration is automated by placing an upgrade to the toltec-bootstrap package in the root folder of the repo that contains a migration script.

New packages:

Updated packages:

Website: The source files and scripts used for generating the website have been transferred to a separate repository (https://github.com/toltec-dev/web). A website rebuild is triggered automatically from this repository’s workflow when the stable branch is updated, so that the displayed checksum of the bootstrap script is always accurate.

Important notices:

* When upgrading, users should run `opkg update && opkg upgrade` **twice** because of the changes introduced by this merge. (#310)
* Toltec **no longer supports** OS releases **earlier than 2.6**. You can check your current OS version in the settings panel. Please upgrade to 2.6 or newer after upgrading your Toltec install. (#366)
* To re-enable Toltec, **run `toltecctl reenable`** instead of the previous `entware-reenable` script that has been removed with this update.

Major change: The repository is now split into architecture subfolders. The `rmall` subfolder contains packages that can run both on reMarkable 1 and reMarkable 2 without modification. The `rm1` and `rm2` subfolders contain packages that are specific to each of the two devices. This change requires updating the Opkg configuration to point to the appropriate architectures. The migration is automated by placing an upgrade to the `toltec-bootstrap` package in the root folder of the repo that contains a migration script. (Note that this package is not generated automatically by our build system but will be added manually by the server administrator.)

New packages:

* bash-completion - 2.11-3 (#277, #375)
* display - 1.0.1-7 _(replaces the server part of the old rm2fb package)_ (#310)
* fuse - 1.0.0-2 (#331)
* gocryptfs - 2.0-beta2 (#318)
* innernet - 1.3.1-2 (#350, #358, #361)
* netsurf - 0.4.0-1 (#339)
* puzzles - 0.2.2-2 (#326)
* remarkable-stylus - 0.0.3-1 (#383)
* rm2fb-client - 1.0.1-7 _(replaces the client part of the old rm2fb package)_ (#310)
* tilem - 0.0.7-1 (#352)
* toltec-completion - 0.2.0-1 (#277)
* yaft - 0.0.4-3 (#261, #353)
* zoneinfo-utils - 2021a-2 (#182)

Updated packages:

* appmarkable - 0.0.0-11
* bufshot - 0.1.0-5
* calculator - 0.0.0-15
* chessmarkable - 0.7.1-2 (#362, #373)
* ddvk-hacks - 23.02-1 (#385)
* draft - 0.2.0-20
* evtest - 1.34-3
* fbink fbdepth fbink-doom - 1.23.1-4
* fingerterm - 1.3.5-14
* genie - 0.1.5-3
* harmony - 0.1.3-3
* iago - 0.1.0-4
* keywriter - 0.1.0-3
* koreader - 2021.06-1 (#330, #348, #357, #378)
* lamp - 0.1.0-4
* libdlib libdlib-dev - 19.21-2
* libvncserver libvncclient libvncserver-dev - 0.9.13-2
* mines - 0.1.2-4
* nao - 0.1.3-3
* oxide erode fret rot tarnish decay corrupt anxiety - 2.2-1 (#382)
* plato - 0.9.17-2 (#344)
* quickjs - 2020.11.08-2
* recrossable - 0.0.0-7
* remarkable-splash - 1.0-5
* remux - 0.1.9-3
* restream - 1.1-2
* retris - 0.6.3-3
* rmservewacominput - 0.3.0-2
* simple - 0.1.4-3
* templatectl - 0.1.3-3
* toltec-bootstrap - 0.1.0-1 _(includes toltecctl)_ (#379)
* vnsee - 0.4.0-2 (#355)
* wikipedia - 0.1.0-3
* wireguard - 1.0.20210219-2
* xochitl - 0.0.0-7 (#383, #382, #386)
* zshelf - 0.3.1-3

Website: The source files and scripts used for generating the website have been transferred to a separate repository (<https://github.com/toltec-dev/web>). A website rebuild is triggered automatically from this repository’s workflow when the stable branch is updated, so that the displayed checksum of the bootstrap script is always accurate.
@matteodelabre matteodelabre added the merge Weekly merge of the testing branch into the stable branch label Jul 21, 2021
@matteodelabre
Copy link
Member Author

The build artifacts are hosted at https://toltec-dev.org/stable-next to facilitate testing. Starting from an existing stable install, edit /opt/etc/opkg.conf and replace https://toltec-dev.org/stable with https://toltec-dev.org/stable-next to simulate the roll-out of this merge.

@matteodelabre
Copy link
Member Author

matteodelabre commented Jul 24, 2021

Testing on rM2, version 2.8:

Not tested:

  • innernet (couldn’t make it work, but this is probably because I don’t know enough about innernet itself)
  • remarkable-stylus (I don’t have a Lamy pen)

@Eeems
Copy link
Member

Eeems commented Jul 24, 2021

Some of these issues I would consider blockers. Have you opened issues for any of them yet?

@Eeems
Copy link
Member

Eeems commented Jul 24, 2021

@raisjn any ideas on what's happening with remux?

@matteodelabre
Copy link
Member Author

Some of these issues I would consider blockers. Have you opened issues for any of them yet?

Not yet, but I plan to do it very soon. I’ll add links in my previous comment when they are open.

@matteodelabre
Copy link
Member Author

any ideas on what's happening with remux?

This only happens when running remux directly from the command line instead of as a systemd service. So it’s not a major bug if we expect that most users will use it as a service.

@Eeems
Copy link
Member

Eeems commented Jul 24, 2021

any ideas on what's happening with remux?

This only happens when running remux directly from the command line instead of as a systemd service. So it’s not a major bug if we expect that most users will use it as a service.

Ah, so I'm guessing it's just missing environment variables. If it's working fine as a service, which is the expected use-case, I no longer consider this a blocker.

@raisjn
Copy link
Contributor

raisjn commented Jul 24, 2021

This only happens when running remux directly from the command line instead of as a systemd service. So it’s not a major bug if we expect that most users will use it as a service.

what is the bug? is it something to do with rm2fb or something in remux's env variable setup? i'd prefer not to ship bug if we can avoid it (because down the line will still have to field this request of 'broken remux' but have even less details)

@Eeems
Copy link
Member

Eeems commented Jul 25, 2021

what is the bug? is it something to do with rm2fb or something in remux's env variable setup? i'd prefer not to ship bug if we can avoid it (because down the line will still have to field this request of 'broken remux' but have even less details)

From #391 (comment)

  • remux: I can’t start Xochitl (blank screen) [EDIT: Only when run directly from the command line instead of as a service.]

Since this is likely a pre-existing issue, I'm not as concerned about shipping it, especially since it's better than shipping nothing and having stable remain "broken".

@matteodelabre
Copy link
Member Author

The remux bug proved difficult to consistently reproduce, but in the end it can happen regardless of whether remux is running as a service or not. I opened a bug report with more details: rmkit-dev/rmkit#135

@Eeems
Copy link
Member

Eeems commented Jul 26, 2021

So what is remaining to be tested? I think the primary focus should be for testing the upgrade of apps from existing stable installs to make sure they still work.

@matteodelabre
Copy link
Member Author

I’ve only tested on rM2 so far, we would also need to confirm that everything works on rM1.

@matteodelabre
Copy link
Member Author

Also, shall we take this opportunity to change the rM2 support badge to “supported” on the README? I think rM2 support is pretty much on par with rM1 support now.

@Eeems
Copy link
Member

Eeems commented Jul 26, 2021

Also, shall we take this opportunity to change the rM2 support badge to “supported” on the README? I think rM2 support is pretty much on par with rM1 support now.

I agree

@Eeems
Copy link
Member

Eeems commented Jul 28, 2021

Alright, has anyone done an upgrade from stable with this on a rM1 yet?

@matteodelabre
Copy link
Member Author

Not yet. Just updated https://toltec-dev.org/stable-next with a new build of this branch, by the way.

@matteodelabre
Copy link
Member Author

Completed testing on rM1. The only issue I found is the following: after installing gocryptfs and fuse, I needed to manually run modprobe fuse before gocryptfs path/ would work. Wasn’t the depmod -a command included in the configure script of the fuse package meant to automate this?

@Eeems
Copy link
Member

Eeems commented Jul 30, 2021

Completed testing on rM1. The only issue I found is the following: after installing gocryptfs and fuse, I needed to manually run modprobe fuse before gocryptfs path/ would work. Wasn’t the depmod -a command included in the configure script of the fuse package meant to automate this?

It is meant to automate the module loading. It might not work at updating a module that's already been loaded though.

@matteodelabre
Copy link
Member Author

This happens when first installing the module, without it being loaded first.

@Eeems
Copy link
Member

Eeems commented Jul 30, 2021

This happens when first installing the module, without it being loaded first.

Very odd. I do seem to remember that it was working last I tested.

@matteodelabre
Copy link
Member Author

matteodelabre commented Jul 31, 2021

I think we need to run systemctl restart kmod-static-nodes && systemctl restart systemd-tmpfiles-setup-dev after depmod -a in the configure() script so that /dev/fuse gets created. Once /dev/fuse is present, the kernel module will get automatically loaded whenever a program tries to access that device (see #405).

@Eeems
Copy link
Member

Eeems commented Jul 31, 2021

It probably isn't needed for the stable merge for now. Anything else outstanding? Or should I approve the PR?

@matteodelabre
Copy link
Member Author

Since it’s a rather simple fix that I’ve confirmed to work I’d rather add it to this merge, if you don’t mind. This may save us some user reports that the module doesn’t work.

@matteodelabre
Copy link
Member Author

This being done, I think we’re ready for the merge.

Copy link
Member

@Eeems Eeems left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⛵it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge Weekly merge of the testing branch into the stable branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants