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

xorgwizard is not needed #583

Closed
dimkr opened this issue Oct 3, 2015 · 13 comments
Closed

xorgwizard is not needed #583

dimkr opened this issue Oct 3, 2015 · 13 comments

Comments

@dimkr
Copy link
Contributor

dimkr commented Oct 3, 2015

I say, let's kick this awful thing! Puppy needs to be modernized. Inefficient and legacy code out, new solutions in.

I've started work on an experimental ARMv7 port and recalled how irrelevant xorgwizard really is (i.e 915resolution can be used on ARM, but you don't have the relevant GPU anyway).

@01micko
Copy link
Contributor

01micko commented Oct 3, 2015

Yep, big job though. It should have died in 2008. There is spaghetti all over the place related to xorgwizard!

This was referenced Oct 26, 2015
@01micko
Copy link
Contributor

01micko commented Dec 1, 2015

I just created a new branch to facilitate this: "xorg"

Roadmap:

  • remove current implementation of xorgwizard
  • remove dependency on /etc/X11/xorg.conf
  • rewrite /usr/bin/xwin
  • move /root/.xinitrc to /etc/X11/
  • write a new xorgwizard in case a chip refuses to boot to desktop.
  • move keyboard (including language supported layouts), synaptics and others to own config files in /etc/X11/xorg.conf.d
  • adjust all scripts that depend on /etc/X11/xorg.conf accordingly (mainly quicksetup; there are probably others).

I think we start by getting the thing to boot to desktop without xorg.conf on a desktop computer then add synaptics/alps/elantech support, then keyboard-layout, then whatever else.

@01micko
Copy link
Contributor

01micko commented Dec 2, 2015

Dot point 1 is partially implemented.
2 is done.
3 is partially done
4 is done.
5 & 6 are not touched yet.
Building an iso now and if it boots to desktop I'll upload it and update xorg branch.

@01micko
Copy link
Contributor

01micko commented Dec 2, 2015

iso is uploading. Everything is pretty much working ootb in a few quick tests.

screenshot

@01micko
Copy link
Contributor

01micko commented Dec 3, 2015

Point 3 has progressed
Point 6 has been partially implemented. Keyboard is done. I'm not sure its a good idea to play with touchpads and mouse as xorg does a pretty good job on its own.
Re point 7: quicksetup calls keymap-set so I adjusted keymap set and put a new function in functions4puppy4 which is called from keymap-set and xwin. input-wizard now calls quicksetup for keyboard so no need to touch it.
I'm thinking to conditionally avoid all mouse and touchpad stuffs, at least for now.

@dimkr
Copy link
Contributor Author

dimkr commented Dec 4, 2015

Looks good. I'm more than willing to test this on Librepup as well, once I sort out the pTheme mess.

@wdlkmpx
Copy link
Contributor

wdlkmpx commented Dec 7, 2015

xorgwizard-automatic does a good job, the xorg.conf template needs some more tweaks to be more "generic"

@01micko
Copy link
Contributor

01micko commented Dec 7, 2015

The problem with the xorg.conf is that devices aren't added automatically with udev. If you enable it in that xorg.conf template it messes things up. It really is an ancient set up and has to go.

@mavrothal
Copy link
Contributor

The issue is if there is anything that can be done when X fails.
Maybe implement a module backlist or driver selection UI?

@KarlGodt
Copy link
Contributor

KarlGodt commented Dec 8, 2015

About this UDEV thing :
This is the message I got from Lupu Xorg-1.7.6 :
## Lupu-528 ubuntu-xorg-1.7.6
## () Option "AutoAddDevices" "false"
## (
) Not automatically adding devices

 ##(WW) AllowEmptyInput is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
 ##(WW) Disabling Mouse0
 ##(WW) Disabling Keyboard0

And this fixed it in the xorg.conf0 template :
Option "AllowEmptyInput" "off"
Option "AllowMouseOpenFail" "off"

And this is older Slacko :

Slacko-5571

 ## (**) Option "AutoAddDevices" "false"
 ## (**) Not automatically adding devices
 ## (==) Automatically enabling devices

 ## (==) Automatically adding devices
 ## (==) Automatically enabling devices
 ## (II) The server relies on udev to provide the list of input devices.
 ## If no devices become available, reconfigure udev or disable AutoAddDevices.

And this fixes it:
Option "AutoAddDevices" "off"
Option "AutoEnableDevices" "off"

All the main distros configure Xorg with udev/hald and probably other like dbus etc.
It is possible to configure Xorg without these dependencies.
But Xorg is a huge code to compile with a lot of different components.
I can understand that getting it precompiled is "more fun" .
I have no knowledge about how Xorg would work with udev and hal et all
in regards of everything and especially input devices.

No Keyboard and No Mouse is a very annoying state :)

@KarlGodt
Copy link
Contributor

KarlGodt commented Dec 8, 2015

My self compiled Xorg-1.10.6 finds
2 modesetting cards as Card0 and Card1
then the functioning intel driver as Card2
then one fbdev as Card3
then one vesa as Card4

Xorg-1.8.2 and 1.9.5 -configure
crashes after finding the two modesetting drivers
with my kernels 3.5 and 3.9 configurations.
Older kernel 2.6 configurations work with these Xorg versions to return 0 from Xorg -configure .
Xorg -configure seems to delete /etc/X11/xorg.conf now .
It needs to copy the template xorg.conf0 again to xorg.conf after Xorg -configure
before processing the /root/xorg.conf.new file with dougal's here-document loop .

Xorg is very annoying to work with !
Probably the most annoying program in GNU/Linux .
Users that like GNU/Linux may not know how it is under the hood ..

@dimkr
Copy link
Contributor Author

dimkr commented Dec 9, 2015

Xorg-1.8.2 and 1.9.5 -configure
crashes after finding the two modesetting drivers
with my kernels 3.5 and 3.9 configurations.

This could happen because you're mixing old versions of X/kernel/libdrm/Mesa.

@mavrothal mavrothal added this to the Puppy 7 milestone Dec 16, 2015
@01micko
Copy link
Contributor

01micko commented Sep 27, 2019

For now closing this. Anyone feel free to reopen.

@01micko 01micko closed this as completed Sep 27, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants