Nyxt User Survey 0

I’d like to use Nyxt for it is compleletely writen using Common Lisp as I’m a clisper.But I haven’t cerrectly installed Nyxt until now,for my opinions ,it’s better automatic configure and batch operate for Install and support Windows platform.I am willing to devote myself to Common Lisp,I‘m a newbee at current step,I‘m looking forward to learn from you all。

I am using different systems based on Arch and OSx. I want Nyxt to be installed easily on these systems with package manager and without further manual change. File base configuration and bookmarks are awesome and I love them. I am using proxy and I want to enable / disable it based on the domain names.

Temporary containers would be very cool indeed!
Nyxt has all the building blocks to make this per-domain. Only a few steps remain, if I’m not mistaken:

  • Sandboxing: now that we have a new GI-based renderer, we can enable per-domain sandboxing, but really we should just enable sandboxing everywhere, I don’t believe there would be any drawback :slight_smile:

  • Containers: we can already run Nyxt in a container (there are some examples using Guix or Firejail in the documentation). The easiest next step would be to run a window in a container, which would start a new Nyxt process in this container. A bit like Firefox “private windows”. The drawback is that we would obviously have multiple processes which would not share their state (like the buffer list).

We can already edit HTML fields in an external editor (such as emacsclient) with the fill-input-from-external-editor command. It’s a bit primitive at the moment, but it wouldn’t be hard to polish this feature :slight_smile:

Arch Linux has 2 AUR recipes:
https://aur.archlinux.org/packages/nyxt/
https://aur.archlinux.org/packages/nyxt-browser-git/

They should work out of the box, if they don’t please report it on the AUR.
Ideally, an Arch Linux Trusted user would pick up the recipe and release an official package :slight_smile:

1 Like

Thanks for the kind words!
And yup, per-buffer settings is one of my favorite feature too! :wink:

I’ve actually seen the context menu text bug before, when running in a container.
@nikaoto Are you running Nyxt in a container by any chance?
If so, try without see if you can reproduce the bug.
I believe that fonts need to be added to the container to fix the issue. Might be the same bug as 1.

So far none of the main developers or contributors use Windows, so we would need someone to chime in :stuck_out_tongue: Some Windows users have reported they got Nyxt to work on their system, but for sure it’s not completely out-of-the-box yet. Contributions are welcome!

That is awesome, let me try them. Thanks for your answer.

Thanks for sharing, @kabouik, this is very insightful! :slight_smile:

  1. Yes, it is steep, but we hope to provide more and more graphical configuration tools / helpers in the future. What could also help is a (better) integrated REPL, so that the use could experiment straight from the browser!

  2. What is your distribution? We can also provide build scripts for specific distributions, no worries. Contributions are welcome!

  3. Smooth-scrolling: yes, this has been reported before, hopefully we can fix it (maybe with upstream), otherwise you may be able to use WebEngine (Blink) in the future, we are working on it!

  4. Coming very soon!

  5. Minibuffer delay: is it for all commands or just specific ones? If the latter, which ones? That said, this issue should disappear with the overhauled minibuffer coming soon! (This is what will allow us to fix 4.)

  6. We’ve been contemplating WebExtension support for a while… Hopefully it will come soon, which should allow us to support uBlock Origin!

  7. By vertical “toolbar”, you mean a vertical status area with the buttons, the “tabs”, the modes, etc.? We don’t have a plan for it at the moment, but it’s not hard to implement.
    We would like to have general-purpose window management at some point, which will allow us fully customize the disposition of every element (minibuffer, status area, message area).

  8. See 7.

  9. I believe there are many almost-religious sentiments when it comes to web renderers. My take here is that we should avoid a browser monopoly, since this could be detrimental to the quality of the world wide web and users freedom. That said, Nyxt has always been implemented with renderer-agnosticity in mind, and we’re working on a WebEngine renderer at the moment!

    About Dark-mode: it can be done both with JS injection and CSS, up to you! :slight_smile:

  10. You can actually theme the minibuffer too! See Nyxt.

  11. Could you compare with another WebKit based browser like GNOME Web (Epiphany)?

  12. Ah, terminals! There is so much to say about them! Well, my belief is that terminals are rusty tools that are in high need for a big overhaul! :stuck_out_tongue: So integrating a terminal in Nyxt wouldn’t just be mimicking the existing, but rather offer a whole new paradigm. A bit like Nyxt already does it with regard to other browsers :wink:

    I’m actually giving a talk on this terminal / shell paradigm for FOSDEM in about a week.

  13. We’ll see where this gets us :wink:

Thanks again for your feedback!

Looking forward to further improvement of Nyxt。Such as support translation plugin as Chrome,and play multiple video formats,

Thanks for the answers, It’s great to be part of a community that is still small enough to allow developers to listen to users’ feedbacks and answer them. It is greatly appreciated.

  1. I don’t dislike text configuration at all, the opposite in fact. But sure it’ll take some base knowledge before I can understand how to get around in my Lisp config. Experimenting without relaunching Nyxt will help a lot, and so would graphical tools directly appending/editing code blocks to the config file.

  2. My distribution is Solus. They have a rather restrictive view as to what they include in their repository because they aim at having a very curated and stable software offer. I cannot tell if Nyxt would be accepted for inclusion, but I assume it could if there was someone stepping forward to maintain the package, since we don’t currently have many full-featured keyboard-driven browsers (no vimb, vieb, or even surf; we have Qutebrowser though), and Nyxt is under BSD licence. Compiling from sources is fine for me as long as dependencies are not too much of a rabbit hole. Here I just needed to compile libfixposix too because that one is not in the Solus repository either. But upgrades can be the culprit, especially as using outdated browsers is not safe.

  3. Good to hear!

  4. Nice.

  5. It’s a small delay when opening the buffer, not particularly tied to a given command. Typically C-space will show the minibuffer in a little more than 0.5 s, perhaps slightly more sometimes. From there if I type “slot” and then hit Return to open the slot list, the minibuffer will briefly hide and show up again, with a short delay there too. Fuzzy searches through commands is perfectly smooth. There can be a similar delay (even a bit longer) when pasting an URL in M-l or C-l too.

  6. Looking forward, but I know it’s a popular request already. It should also allow using features that would be hard to implement directly in Nyxt (like some things better used with mouse, such as Simple Drag and Drop Search, ImTranslator, and bundreds of others), but I’m not sure how this would work with Nyxt modal system.

  7. That would need some more thinking if it was deemed relevant for development, as my experience with vertical toolbars is with browsers using tabs and no fuzzy search. As an example, this is what I use in Firefox with a lot of dirty CSS hacks: tab bar collapsed with just favicons [1], tab bar extended when favicons are hovered [2], toolbar shown only upon hitting C-l [3]. I guess vertical layout makes sense mostly for tabs (buffers), not for the toolbar, that was bad wording from me indeed, but in Nyxt both are the same bar anyway so it may be a little complicated to implement that. Again, a vertical layout is useful for many tabs, but with the minibuffer and fuzzy search, it’s not critical except for users who want to keep all their buffer names visible permanently.

  8. Great to hear. I consider the statusbar very useful to limit phishing risks for instance, but having to show the toolbar with it or keep a while line at the bottom is a bit inconvenient.

  9. That’s awesome. That would be amazing if Nyxt could be used with any renderer the user prefers. I’ve read about this topic in the articles, but so far my understanding is it is still theoretical and would need some extra work. Still great anyway that the base bricks for this are there.

  10. Oh I forgot about that, indeed. I just need to make it togglable and associate it with the dark/light modes.

  11. I tried Free online browser speed test - SPEED BATTLE and it didn’t go well. Firefox obtained 54.61 (calculate), 81.92 (store), 40.96 (render), 177.49 (overall), Nyxt obtained 297.89, 655.36, 56.89, 1010.14, and Epiphany obtained 315.08, 431.16, 56.11 and 802.35. Surely there is something horribly wrong for Webkit in this test, but that is not necessarily a good depiction of real world situations. I also tried https://browserbench.org/Speedometer2.0/, which resulted in Infinity for Firefox, 58.4 ± 1.2 for Nyxt, and 57.1 ± 1.5 for Epiphany. No idea what those tests are worth. Probably not much, but from real use I also had the impression that some normal websites (not necessarily cluttered ones like NY Times’) load faster in Firefox currently.

  12. I love terminals. They’re not rusty tools! I started using TUI applications for pretty much everything I can (mail, calendar, editor, file manager, IRC, podcasts, music) some years ago and would never go back, I think my workflow has been vastly improved and can be replicated on other machines more easily. I really love having those applications so fast and responsive compared to their graphical alternatives, frugal on resources use, looking the same depending on my terminal theme, often inter-operating, with similar keybindings, and Tmux-compatible. Off-topic, sorry, just shouting how much I like terminals. :open_mouth: I will definitely listen to your talk!

  13. Looking forward, $EDITOR support is often great for consistency across all applications and it allows users to keep using the workflow (and visuals) they feel comfortable with across applications.

I’ll stop the walls of text now. :>

  1. Note that you can already program Nyxt without restarting it, for instance by editing your init file and calling load-init-file.

  2. Another option (should you like it) would be to install Nix or Guix on top of you distro. They are functional package managers that are well isolated from the rest of your system.

  3. Do you notice the same delay with C-o (load-file)? If so, it looks like GTK is oddly slow on your system. Maybe a graphics driver issue?

  4. Oh, that’s what I thought! :slight_smile: Vertical minibuffer display has been on high on my priority list for while! It’d be trivial to implement if we had window management.

  5. Not so theoretical, we’ve run Nyxt on WebEngine in the past, so the our core design is flexible enough in that sense. We only need to update the backend to match our new API. This takes a bit of time, but we’ll get there! :slight_smile:

  6. Maybe you’ll be interested by this article then: Eshell as a main shell
    (It’s a bit old now, but many ideas still apply I think. My FOSDEM talk is on a whole different level however.)

  1. Thanks. I’m using it now.

  2. I tried that but got an issue (posted on Github) and since then uninstalled Guix because it was taking too much space for me and even though having a distro-agnostic package manager is great, it doesn’t make much sense if I use it only for one piece of software (Nyxt). I’ll remember it when I want to use several applications it offers though.

  3. Yes, I do. So that is not entirely surprising on one of my devices (LXC container without hardware acceleration), but more on the other which is a a laptop with an i5 CPU and all its resources available. Its GPU is not installed, but I’d expect the CPU to be powerful enough for that.

  4. Great.

  5. That too!

  6. Thanks, reading it.

  1. Some commands have a short delay the first time they are run. Does the delay disappear if you run C-o again? If the GPU is not installed, this could be the issue because the minibuffer uses a WebView which relies on GPU acceleration. Maybe software rendering induces a significant delay in the window initialization. If you have time to install the GPU, please report if it makes any difference :slight_smile:

I don’t see much difference between the first try and the following, if any.

I tried Nyxt on another computer with a RX680 installed and, while the delay was shorter than on the laptop with just CPU and Intel chipset, there’s still something that feels a bit funny. Obviously the delay was much less noticeable, but the minibuffer and open dialog still don’t show quite immediately when I hit the last key of their keybind combo.

It’s not a significant issue of course, but it’s there, and I feel it’s a bit frustrating that Nyxt would need a GPU to perform better for such simple (but frequent) UI actions, especially as I assume the target audience for Nyxt would compare it to other keyboard-oriented browsers like Surf, Vimb or Vieb, which are quite light.

Nyxt never claimed to be lightweight :smiley:

It is a modern implementation of a Lisp system as a web browser, it is meant to be stable and powerful, not necessarily bit crushingly light.

1 Like

Yup, I fully understand Nyxt never claimed that, my message was ambiguous on that, sorry. I just meant that a fair proportion of users interested in Nyxt will also check out other keyboard-oriented browsers, which coincidentally are most often browsers that make being light one of their strengths. That’s not one of Nyxt’s goals, and honestly Nyxt is also much more flexible and powerful, but this will be something that those browser comparisons could show and it may discourage some users. I just wished there was not such a visible difference with or without GPU (and even a short delay with GPU), but that may not be possible and I still like what Nyxt has to offer, no worries.

1 Like

I come to Nyxt as a long-time Emacs user. The idea of an Emacs-like experience in a web browser, where buffers are web pages instead of text buffers, the platform is dynamically hackable to its core, self-documenting, and built on a much more capable runtime than Emacs Lisp, is very compelling to me as not just a web browser, but as a general application framework. I would love to build a development environment around something like that. So from that perspective, features such as a built-in editor and terminal emulator are very compelling to me.

Hi Gus, thanks for your feedback. We’re entirely on the same page, which is why I posited the questions about the editor and terminal emulator within the survey :-D. However, it seems we are in the minority!