Closed What Would You Like to See FreeBSD Do Differently?

Status
Not open for further replies.
sidetone

My visually impaired friend who is a .NET programmer touch types, and his program allows him to use the commandline on Windows Powershell just fine. He types one character and he can have the computer read it back to him or he can type entire sentences have them read it back. I think your post is a bit patronizing and demeaning to visually impaired people (I say that instead of blind because it then includes people who have some sight but not enough to do everything normally) but it appears this was unintentional. I'll not speak for them myself, but I'd be careful with telling someone with a disability what they do and do not need. That's something I find that can be annoying to them.
 
No, it's not patronizing. I just can't understand how anyone can do that much, because for me, it can be complex enough setting up FreeBSD. Its an enjoyable operating system, but for me, the learning curve was high, and setting up again is not something I want to do when I feel lazy. I'm just trying to understand.

For instance setting up wpa_access was difficult enough for me, and for other programs, the documentation is outdated or insufficient.
 
I have no idea how the visually impaired use a command-line based OS

I ran DOS up until the mid 90's and there was a large number of blind people in that community. I think the guiding concept here is that a blind person can type anything, but cannot use a mouse.

Edit: I should add that I feel the same way myself. I can go to any directory I want and edit a configuration file or whatever. The fact that I can see is not relevant because I know where I went and I know what I typed. I would say the most important thing is that configuration files not move or be renamed - under any circumstances. For developers to sometimes do that is just wrong, and dare I say rude and unthinking.
 
I was thinking in terms of comparison to the Sapir-Whor hypothesis. Ray Charles can play a piano, Stevie Wonder can play instruments. There are blind people who can locksmith, etc. It's a different comparison, but in the end, it's terms of communicating with a computer.
 
fwiw, I had blind friends for 20 years, used to date a girl whose whole family was blind, and used to do work with the Missouri School for the Blind. I was always amazed at what blind people could do on their own and what devices were available to them to aid them.

I recall going to McDonald's with them and have the counter person ask me what their order was but some of the best "blind man" jokes I ever heard were from my blind friends so I don't think anyone would feel patronized.
 
We would like to see FreeBSD on a system standard by default on graphical desktop.

... What? You mean "FreeBSD ship with a GUI by default?" Well you need a few things for that:

First you'd need to create a new image class so it wouldn't be that people intending to use it as a server or do their own desktop had to download something they don't need.

Then you need to convince them to ship X by default, something I do argue they should do with one or two minimal WMs, like OpenBSD does.

Then you need to talk which desktop environment to include by default. CDE is classic but it's relatively light on dependencies. GNOME, KDE, MATE, Cinnamon, XFCE, LXDE and so-on all require loads of dependencies. Lumina would work but still requires dbus and compton and Consolekit, the latter of which is unsupported.

Really if you want KDE or GNOME or Cinnamon etc. on FreeBSD you're best off using TrueOS or GhostBSD or some other derivative.
 
Really if you want KDE or GNOME or Cinnamon etc. on FreeBSD you're best off using TrueOS or GhostBSD or some other derivative.
Too much effort. I'm a seriously lazy guy so I just type pkg install kde4.

Unless you were already a user of those, I'm not sure why you'd go to the trouble of dealing with new vocabulary or burning yet another ISO for no perceivable gain.
 
The only extra thing I would like to have, leaving alone very complex things like improved graphic stack, is a more advanced way to search ports.

Basically, Portsnap (sync) plus those capabilities:
  • ports Index and search;
  • search output with information of the ports - options, knobs, etc.
If there is already something like that I didn't found it yet. I am aware of make search=name but it is not so practical when you use poudriere or synth.
 
The only extra thing I would like to have, leaving alone very complex things like improved graphic stack, is a more advanced way to search ports.

Basically, Portsnap (sync) plus those capabilities:
  • ports Index and search;
  • search output with information of the ports - options, knobs, etc.
If there is already something like that I didn't found it yet. I am aware of make search=name but it is not so practical when you use poudriere or synth.

Can you please elaborate a bit?
 
lme@

In practice would be something like this:

#portsnap fetch update

will update the ports tree, but also index the ports (sqlite?) and create/update its (portsnap) database.

Later:

#portsnap [I]-s|search[/I] nginx

would display all packages called nginx, with the relevant information about each one.

There is a Gentoo specific tool called eix that work on this way. Eix is very handy when you are using Gentoo.

EDIT: as example, the eix output is something like this:

Code:
* app-vim/nginx-syntax
     Available versions:  0.3.3
     Homepage:            http://www.vim.org/scripts/script.php?script_id=1886
     Description:         vim plugin: Nginx configuration files syntax

* sec-policy/selinux-nginx
     Available versions:  2.20151208-r4 2.20151208-r6 2.20161023-r1 2.20161023-r3 **9999
     Homepage:            https://wiki.gentoo.org/wiki/Project:SELinux
     Description:         SELinux policy for nginx

* www-servers/nginx
     Available versions: 
     (0)    1.10.2-r3^t
     (mainline) (~)1.11.6-r1^t (~)1.11.8^t
       {aio debug +http +http-cache +http2 (+)ipv6 libatomic libressl luajit +pcre pcre-jit rtmp selinux ssl threads vim-syntax 
NGINX_MODULES_HTTP="+access addition +auth_basic auth_ldap auth_pam auth_request +autoindex +browser 
cache_purge +charset dav dav_ext degradation echo +empty_gif fancyindex +fastcgi flv +geo geoip gunzip +gzip 
gzip_static headers_more image_filter +limit_conn +limit_req lua +map memc +memcached metrics mogilefs mp4 naxsi 
perl +proxy push_stream random_index realip +referer +rewrite +scgi secure_link security slice slowfs_cache spdy 
+split_clients +ssi sticky stub_status sub upload_progress upstream_check +upstream_hash +upstream_ip_hash 
+upstream_keepalive +upstream_least_conn +upstream_zone +userid +uwsgi xslt" NGINX_MODULES_MAIL="imap pop3 
smtp" NGINX_MODULES_STREAM="access geo geoip limit_conn map realip return split_clients ssl_preread upstream 
upstream_hash upstream_least_conn upstream_zone" USERLAND="GNU"}
     Homepage:            http://nginx.org
     Description:         Robust, small and high performance http and reverse proxy server
 
lebarondemerde Have you tried ports-mgmt/psearch?

Code:
% psearch -l nginx
www/nginx                 Robust and small WWW server
    NGINX is a high performance edge web server with the lowest memory footprint
    and the key features to build modern and efficient web infrastructure.

    NGINX functionality includes HTTP server, HTTP and mail reverse proxy, caching,
    load balancing, compression, request throttling, connection multiplexing and
    reuse, SSL offload and HTTP media streaming.

    WWW: http://nginx.org/
    WWW: http://nginx.com/
 
Doing differently? Not much. Just do not play catch up with Linux and their kindergarten development model. What we want is a secure, stable OS which can be understood. I for one do not need the latest bells and whistles. I own a computer, not a fisher price candy box.

What I would like to see is stuff like HAMMER2. But we have one problem with the other BSDs - while we say we do not make changes without good reason, we did changes which harm interoperability with these other BSDs. Maybe they were needed, maybe not. Those which were not really needed, we might try to roll back, on each camp. And please do not simply drop MIPS or POWER. Diversity is good, and we do not want to go the way of windows, where only one architecture is available for us to really work on. Getting an arch back up, or new support for it, is much harder than keeping things around while not deliberately breaking them. DragonFly, for example, may never work on POWER8 or a 128 core MIPS64 - and then it can have features like crazy if it can not run on your hardware and never get support for it. That may be why Linux is stronger on MIPS.
 
And there is some interest from blind people, I would suggest opening a new thread for discussions and solutions somewhere else, so not necessarily under "off topic" because it is not.
 
What I would like to see is stuff like HAMMER2. But we have one problem with the other BSDs - while we say we do not make changes without good reason, we did changes which harm interoperability with these other BSDs. Maybe they were needed, maybe not. Those which were not really needed, we might try to roll back, on each camp. And please do not simply drop MIPS or POWER. Diversity is good, and we do not want to go the way of windows, where only one architecture is available for us to really work on. Getting an arch back up, or new support for it, is much harder than keeping things around while not deliberately breaking them. DragonFly, for example, may never work on POWER8 or a 128 core MIPS64 - and then it can have features like crazy if it can not run on your hardware and never get support for it. That may be why Linux is stronger on MIPS.

POWER64 I agree we should keep but MIPS has sailed - MIPS Technologies has no intent to provide non-blob drivers and Broadcom has scaled back MIPS greatly. MIPS was awesome back in the days of SGIs, I still have a Fuel and some other SGI gear from their golden age. But POWER is healthy and an alternative to x64 especially considering they have such good performance models on SPEC. I would say we should definitely drop 32-bit support soon entirely - and remove SPARC. We dropped Alpha, we dropped Itanium, why not SPARC since like the other two, they've been abandoned as architectures. We don't support HP-PA or any other architecture that's no longer supported. 32-bit, only player I can see is ARM that does anything and now ARM64 is in full swing.
 
Maybe it is only me and maybe some other folks around who still use some 32 bit hardware - maybe we should do an installation count?

Any when the decision is up to drop support for something, you should not base that decision on the past, but on the future. Several nations are irritated enough with backdoored gear so they start doing their own stuff. Russia is going the SPARC way, china has MIPS licences and is doing well there. It would be foolish not to look at those players in the hardware sector.

And usually, when you drop support for an arch, you may get some benefits but you also get more unclean code. Just look at the mess that comes from some people who drop POSIX.

But back on topic, I would also like some suspend/resume that works without drawing a pentacle on the mouse pad and ... never mind.
 
What I would like to see is stuff like HAMMER2.

We might have a chance at getting HAMMER2 within our lifetimes if we help spread the word about the Google Summer of Code Project ideas around HAMMER2. Specifically the ones that target the copies feature and the block encryption feature. Then their developers can focus on the core components of the filesystem.

https://www.dragonflybsd.org/docs/developer/gsocprojectspage/

HAMMER2 - Add block encryption feature
Add physical block encryption to HAMMER2.

Add a hammer2 utility command and associated ioctl to set the encryption mode on a directory, to be inherited by any new files or subdirectories created therein. Implement one encryption method. Encryption meta-data space is available in the blockref, usually around 192 bits, which can be used to specify e.g. a public key, salt, IV, and/or encryption chaining through the filesystem topology. Actual physical blocks must be encrypted in-place (1:1).


HAMMER2 - Add copies feature
Add block redundancy to HAMMER2

hammer2 implements a fully set-associative indirect block table with dynamic radix, which means that the entries in an indirect block table have a lot of flexibility, including the ability to have redundant entries representing the same block. Implement hammer2's copies feature which allows one to configure multiple volumes and to specify that more than one copy of the filesystem topology be maintained. This requires both a realtime piece to handle filesystem modifications in progress, and a batch piece to tie-up loose ends. for a GSOC the batch piece is the easiest to implement for writing purposes, with a realtime piece for reading (but not writing, which would be much more difficult). The batch piece would simply traverse the filesystem looking for missing copies and construct the missing copies in batch or semi-real-time. Such an implementation would allow HAMMER2 to operate with redundant hard drives and for hard drives to be ejected and added (within reason) on a live system.
 
What's the point in using 32bit hardware, when it's slow compared to what's available? At least switch out the CPU. Maybe it's not so easy to upgrade a 32bit CPU to a 64bit CPU in different geographical markets? I guess someone has to cross-build source-code for others.
Any when the decision is up to drop support for something, you should not base that decision on the past, but on the future. Several nations are irritated enough with backdoored gear so they start doing their own stuff. Russia is going the SPARC way, china has MIPS licences and is doing well there. It would be foolish not to look at those players in the hardware sector.
The idea of supporting various architectures is good, and that's interesting information.
 
If you have 10 or 50 or 100 servers, switching out the CPU isn't so easy. And I don't think you can only swap the CPU with today's hardware. You need to swap the motherboard which might entail replacing the power supply and, possibly, any plugin boards. We're ignoring cost, too.

64-bit hardware is not faster because it's 64 bits and it's very possible for a 32-bit processor to be just as fast and maybe faster but that's getting off topic.
 
Status
Not open for further replies.
Back
Top