Open lheckemann opened 6 years ago
I don't think we should disable systemd-vconsole-setup
by default -- it's needed to display non-English glyphs. Rather, we definitely want to open a console on a serial port -- if I understand the user's story correctly, they could use it instead without problems. Also, making bootloader text-only sounds good to me.
EDIT: that being said, I don't think we have much of accessibility support in NixOS which would be a nice thing to have (not even sure where to start and how accessibility is done on Linux in general)...
IIRC if you add console=ttyS0 console=tty0
to the bootargs it would work both ways (i.e. serial AND the screen) by default, with the stage-1 output going to the screen (tty0
).
Using the console
parameter works. Note that on Hypervisor consoles (hvc0
) our systemd automatically starts a getty. This behaviour is a little inconsistent.
Since most of our bootloaders (grub2 & syslinux/isolinux tested, systemd-boot probably not?) are also opening a serial console by default it would make sense that we do so too.
Cross-referencing issues
hi there, not sure if this is still open? but heres to what is required to get things in regard to accessibility going, if the iso has a live session that is boots in to a desktop, then having the folowing packages installed would assist greatly. orca, the screen reader speech-dispatcher required espeak required for the next piece of software espeakup enables speech on the consol e.g tty1. note, you would have to enable espeakup.service via systemd. another note, i'm blind myself. there is espeak-ng but it is not compatable with espeakup for some reason, pulseaudio also required. the best desktop for accessibility is the mate-desktop currently, maybe spinning an iso with these changes to see if it would function? what is the installer gtk, qt? I hope this is enough information? how does the text based installer work? is it a menu driven installer? e.g choose desktop enviroment, 1, mate, 2, gnome, 3, lxqt etc? I hope this is of help? Majid
hi again, also to inhance mate's accessibility settings a file must be created named what ever you wish, access.sh, accessibility.sh who cares, but it must have the folowing content in it, i'm currently on debian so ajust to nixos,
if [ "x$DESKTOP_SESSION" = "xmate" ] || [ "x$XDG_SESSION_DESKTOP" = "xmate" ]; then
if [ -z "$GTK_MODULES" ] ; then
GTK_MODULES=gail:atk-bridge
else
GTK_MODULES="$GTK_MODULES:gail:atk-bridge"
fi
export GTK_MODULES
fi
that file needs to be made executable, I hope this also helps, Majid
Hi Majid, thanks for your input! We don't have a menu-driven installer, it's mostly a matter of:
hardware-configuration.nix
file (this is done by running nixos-generate-config
)nixos-install
It's all still a relatively manual procedure and will go at least partly through the terminal, regardless of whether the minimal or graphical iso is used. The main difference I can think of is that the graphical one allows using a graphical partition editor like gparted and graphical text editor like gedit. I think in that respect console-based installation might work better? Of course, we'd need to go beyond just getting the installation working and make sure the installed OS is usable without vision as well. I don't really have any experience with accessibility in general unfortunately, but maybe getting a screenreader on the consoles (and the option in the example configuration for installation) would be a good first step?
arr, indeed! installing espeakup along with it's friend espeak would work i think, speech-dispatcher encluded.
On 16/04/2020, Linus Heckemann notifications@github.com wrote:
Hi Majid, thanks for your input! We don't have a menu-driven installer, it's mostly a matter of:
- Setting up partitions and mounting them manually
- generating a
hardware-configuration.nix
file (this is done by runningnixos-generate-config
)- Adjusting the template configuration file (written in the nix language) to your liking
- Running
nixos-install
It's all still a relatively manual procedure and will go at least partly through the terminal, regardless of whether the minimal or graphical iso is used. The main difference I can think of is that the graphical one allows using a graphical partition editor like gparted and graphical text editor like gedit. I think in that respect console-based installation might work better? Of course, we'd need to go beyond just getting the installation working and make sure the installed OS is usable without vision as well. I don't really have any experience with accessibility in general unfortunately, but maybe getting a screenreader on the consoles (and the option in the example configuration for installation) would be a good first step?
-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/NixOS/nixpkgs/issues/30760#issuecomment-614725423
-- kind regards, Majid Hussain
Hello, I'm a bot and I thank you in the name of the community for opening this issue.
To help our human contributors focus on the most-relevant reports, I check up on old issues to see if they're still relevant. This issue has had no activity for 180 days, and so I marked it as stale, but you can rest assured it will never be closed by a non-human.
The community would appreciate your effort in checking if the issue is still valid. If it isn't, please close it.
If the issue persists, and you'd like to remove the stale label, you simply need to leave a comment. Your comment can be as simple as "still important to me". If you'd like it to get more attention, you can ask for help by searching for maintainers and people that previously touched related code and @ mention them in a comment. You can use Git blame or GitHub's web interface on the relevant files to find them.
Lastly, you can always ask for help at our Discourse Forum or at #nixos' IRC channel.
Still valid
What's the status of this issue? I am also a blind user and would be happy to test/offer feedback on anything that has been implemented.
Total guess: I would assume a chunk of it is now knowing what the problems you will be facing are, already knowing those will help. The follow-up will be: how is that usually handled elsewhere?
So even just stating your expectations, and how it fails for you, is good information.
The most important thing is to begin defining a process. I can’t even begin to test/tinker unless I have a defined way to start speech and or Braille. An interesting thought exercise: assume the installer does not automatically load drivers for your display. You boot to a black screen and you have to perform "x" task to enable the display. What should that process look like? Well for starters, you would need audible confirmation to know that the system was ready on any level, so maybe a beep from the boot loader. After that beep, you now know that the system is ready for input, but you still have no output, so the input needs to be something easy. Maybe something like "d" enter to launch the display? In my opinion, Debian is the gold standard right now when it comes to accessible installs. They've given the process a lot of thought over the years. For reference, documentation on their process can be found here:https://www.debian.org/releases/stable/amd64/ch05s02
Thank you, this is exactly what is needed: knowing what works elsewhere, rather than try and guess at a plausible solution. Additionally, having the input of someone that experienced other options to know what worked well and what didn't.
Hello,
another blind user here. Has there been any progress on this issue recently?
I recognize NixOS to have great a11y potential, since disabled users can ensure presence of the accessibility services via the config files. But the difficult part is installation itself.
I think this can be split to three separate problems:
This is (AFAIK) a console installation environment, similar to the one of Debian or Arch. Both these systems already have very well implemented screen-reading software. Picking up approach used by one of these seems like the most reasonable choice.
The installation media comes with preinstalled working Orca, which can be started and used, what is great. Even the graphical installer works without significant problems, so this is a big plus.
What's a bit troublesome at this point is using the terminal, both xterm and gnome-console are inaccessible. That means I'm unable to pull down my Nix script and install the system based on it (at least I'm not aware there would be a graphical way to do this).
one solution is to blindly install gnome-terminal or mate-terminal by typing nix-env --install
If a new Nix user installs the system through the graphical installer, the resulting installation should have the a11y tech at least present (if not straight activated, say if Orca was on during the installation).
I see Orca is installed by the Gnome variant, but if I select Mate as my desktop environment during the installation, Orca is not installed. Other desktop managers may have a similar problem, didn't test them so far.
I think there are two approaches here, basically.
These are my observations sofar. Nix already does have the necessary tools to build a decently accessible experience, so there is definitely the ground to build on. I would say the main work that needs to be done is making this process intuitive and convenient, ideally working out of the box so anyone could either boot up the media, install via GUI and get an accessible system if they're new, or, if they already have a configuration file, so they could easily boot the minimal version and apply the configuration tailored to their liking.
@RastislavKish I am the creator of quickemu
, if you think you've found a bug please raise an issue on the upstream project and we'll take a look:
Background
We recently had a user on the IRC channel who couldn't get nixos working in qemu because syslinux and later on
systemd-vconsole-setup
insisted on setting graphical modes, which cannot be used with qemu's-display curses
. (log at https://botbot.me/freenode/nixos/msg/92631760/ )I eventually worked out that using
-nographic
for qemu gets grub to run in text mode, which allows editing the command line to addconsole=ttyS0
and using the installer in text mode. I wasn't able to help the user with this because they had already left, however.Suggestions
It would be good to consider accessibility more overall. Some changes I think would be sensible:
systemd-vconsole-setup
, and disable it by default in the installer. Document the option in the generated config, and suggestsystemctl start systemd-vconsole-setup
in the installation instructions in the manual for sighted people.These steps are pretty simple and should make installing nixos a lot easier on vision-impaired users as far as I understand. Any thoughts?