Modified script Debian Friendly
1 Attachment(s)
Hi all,
I'm using Debian Jessie 8.1 with External HP EliteDisplay S140u. I had to modify the installer to correctly use it due to bad detection of kernel headers and system init daemon. If it can help someone, you should find the updated installer in attachment. You must unzip the file Code:
saian@n5110:displaylink$ unzip dl_installer_debian.zip Code:
root@n5110:displaylink-driver-1.0.68# ./displaylink-installer.sh install Code:
root@n5110:displaylink-driver-1.0.68# xrandr --listproviders Code:
root@n5110:displaylink-driver-1.0.68# xrandr --setprovideroutputsource 1 0 Thanks to DisplayLink Members to this driver ;-) EDIT : The script should be more efficient to detect the system init daemon. Thanks to @runejuhl for his patch. It seems that many users have problem to download the file. It could be useful that some admin talk about it. Waiting for that, I share the file with Drive. The link for the current version is : https://drive.google.com/file/d/0B5q...ew?usp=sharing |
can't download - insufficient permissions.
Edit1: I found a work around for the kernel headers problem without modifying the installer. However, it won't install and start the dlm service. Is that issue related to the system init daemon you mentioned? Edit2: It is. You created some work around to plug in the displaylink.service in the /lib/system.d/system/ Care to share what it is? I have a debian 8.1 install thread and I would like to have a full procedure created without having to modify any downloads. CLI progressions only. |
Quote:
I don't know why you can't download this file. I wil upload it to another server and post the link tomorrow. The problem with the system init deamon is thay the installer create the service only on ubuntu system. I modified the test that where it is checked and initialized, but you can simply specify "systemd" to the value of SYSTEMINITDAEMON. Currently I have a problem with the udev rules because it doesnt match with my EliteDisplay and the displaylink services doesnt start automatically. I had to run (as root) systemctl start displaylink.service before to set the new provider with xrandr. Tell me if that help you ;-) |
dlm installed...but
That certainly installed DLM, and crashed the PC. I rebooted and did as you said, the service failed to start because it is masked.
Code:
# systemctl start displaylink.service Code:
# systemctl -a |
Quote:
Does the installer has terminated correctly before thé PC crashed ? I don't know what the message "service is masked" mean... I will search about it and reply to you asap. Does anyone has this problem too ? Thx all |
Quote:
|
re-install
I uninstalled, rebooted, and reinstalled. I seem to be getting errors now with the modified script.
Code:
displaylink-driver-1.0.68# ./displaylink-installer.sh install |
Quote:
Code:
# ./displaylink-driver-1.0.68.run --keep --noexec Code:
# cd DisplayLink-Ubuntu-1.0.68/ Code:
# updatedb To reinstall, you can use my installer (I updated the archive few minutes ago). Tell us what the result is ;-) |
some left overs
I uninstalled as you said, I still have some left overs:
Code:
/lib/systemd/system/displaylink.service |
Quote:
The tmp files are not important. You can leave them... After that, can you use my installer and give us the results ? Thx |
I still can't download your installer. It states I do not have sufficient permissions. However, I was able to remodify the SYSTEMINITDAEMON=unknown entry on the refreshed --keep --noexec of the .run package, to SYSTEMINITDAEMON=systemd. This time when I installed, it successfully completes the install. However, after reboot, I still do not see my providers. I did start the displaylink service, however. This is a first.
|
systemctl -a
This may have something to do with it.
Code:
# systemctl -a |
Quote:
Code:
# systemctl status displaylink.service PS : I place my installer into drive folder : https://drive.google.com/file/d/0B5q...ew?usp=sharing EDIT : Quote:
Thx |
KDE, I deleted it thinking it was displaylink stuff. damn. I will reinstall my KDE.
|
failed
I resolved my desktop issue, there wasn't one. It was still in default build. So uninstalled the displaylink stuff, verified, rebooted. I downloaded your installer from the google drive, followed instructions. Everything seemed to install fine. Rebooted. The system came up fine, but the displaylink.service wasn't started. I had to start it manually. It failed. This is the output.
Code:
# systemctl status displaylink.service |
Quote:
The Displaylink Manager has been killed... The question is : why ? Do you have log file in /var/log concerning Displaylink ? Code:
# updatedb Code:
# dmesg |
some stats
http://stuartanderson.info/dmesg.txt
http://stuartanderson.info/lsmod.txt http://stuartanderson.info/lsusb.txt http://stuartanderson.info/dmesggrepusb.txt Code:
#lsmod | grep udl Code:
/var/log/displaylink# ls |
Quote:
Code:
[ 9.553262] systemd[1]: Cannot add dependency job for unit display-manager.service, ignoring: Unit display-manager.service failed to load: No such file or directory. You can try to use lighDM or another DM to test before resolve your KDE problem... What have you fond to reinstall KDE ? |
I did delete the service file as root. I completely uninstalled and rebooted and reinstalled many times. The result is always:
Code:
# systemctl status displaylink.service |
Quote:
In KDE it should be KDM... You can maybe run Code:
# dpkg-reconfigure kdm Code:
# dpkg -l | grep -i KDM |
fresh PC
completely reloaded Debian with lxdm instead of kdm this time. Fresh system, absolutely nothing installed other than base packages, GUI, and SSH. downloaded you scripts. unzipped. installed:
Code:
displaylink-driver-1.0.68# ./displaylink-installer.sh install Edit: I installed DKMS, of course. |
Drum Roll.......
Drum Roll.............
Had to start the displaymanager.service manually. Code:
# systemctl start displaylink.service |
Quote:
Just a question : have you 2 displaylink connected ? I work around a best detection method to start automatically the displaylink service. I will post when I found it. If someone have any informations about it, it could be useful for me ;-) Thx |
Thanks
Thank you for the help. I do, however, want to identify the changes in your script in the Debian driver install that makes this process work in the Debian 8.1 driver install thread. I worked through a lot of steps, but I always hit a challenge at the next level. First it was the kernel header problem, Debian uses Makefile instead of Zbuild, that was easy enough, a simple symbolic link fixed that. Then there was the problem with the systeminitdaemon, which you found that there needed to be a systemd entry in the script because DisplayLink only supports Ubuntu setup at the moment. Then there was a problem with the blacklist, my system looked like it was doing everything correctly, but your configuration does it differently. I guess the overall process I did myself just wouldn't work for me. I just want to be sure, for the record, that everyone who reads this or my thread, they understand the overall process and what needs to be accomplished to get the driver working just in case they can't download a simple script.
|
Quote:
I have modified the check_distro method to set correctly the init daemon on debian. I have added the blacklist udlfb module too. At this time, the driver is correctly installed and is usable. The configuration must be done manually by xrandr and the screen configuration in settings panel... So the next steps are to load dynamically the displaylink service and set the new provider automatically (and maybe activate the screen at the left of current screen...) |
Quote:
|
thanks for your work, really appreciate
|
Minor fix for init system detection + thanks
Hi guerrierk,
Thanks for the script. Worked beautifully on Debian stretch. I noticed it didn't detect my init system, so I made a small patch for you. Any reason why you haven't used BitBucket/GitHub/own git/etc. for it? :) Anyway, thanks again. Now to figure out how to get my brand new ASUS MB168+ to fully work under Linux -- missing autorotate and brightness settings... Hm. For some reason the forum software chokes on the patch, so I'm unable to submit it in cleartext. I've base64-encoded the patch instead... Code:
ZGlmZiAtLWdpdCBhL2Rpc3BsYXlsaW5rLWluc3RhbGxlci5zaCBiL2Rpc3BsYXlsaW5rLWluc3Rh |
Quote:
Thanks for your patch. I have updated my script and re-uploaded it. I'm still working on other features. |
Has anyone worked out the permission problem on the download? Do you have to post before downloading?
|
Quote:
Maybe an admin will answer you to some rules / rights you must have to download... Bye |
automation
guerrierk, you may want to check out my Debian 8.1 install thread again. I'm making great headway on auto-detection and plug and play support.
|
Quote:
I follow your thread but I'm not really agree with your process... I don't consider that automatically starting the script on rc is a solution. If the USB screen is not connected, the module is started but it will not be used... I still work on a better detection of the plug and start the script at this time. More over, i don't think that setting systematically provider 1 and 2 to provider 0 is a good idea... It can cause some problem on a computer which have an integrated and a dedicated video card, so the USB screen will be on provider 3 (by exemple)... I think we can be more efficient and work in this way. ;-) |
Process
What you see is just the beginnings of the project. I need a small library of functions that will allow me to collect data on the status of the driver, status of the USB connection, and status of the display providers. I also need to be able to automatically turn on the driver, set the output sources, and preferably, turn on and position my monitors based on some sort of preset file. This rc.d instruction set isn't final. My aim is to have USB detection handled in the RC.d first that will be the primary condition to control whether the display link driver is even allowed to run, then drive my displaylink libraries after the fact. I am just trying to get the monitor setup automated first, because that is what is important at the moment. I can easily create a thread that runs on a while loop that runs on a lsusb | grep displaylink condition. It seems that debian and CentOS both report my dock as a Displaylink device, so this may actually be a plausible condition to design. Just keep watching ;) If you know how to adjust monitor size and position with CLI commands, this will be a HUGE help.
Edit: emphasis on additional monitor setup using cli or config files. |
a little useful script
Hi stuguy909,
Currently, I made a little script that I launch manually as root after connecting my device. filename : connect_screen.sh Code:
#!/bin/sh Code:
# ./connect_screen.sh -s So, to place the screen DVI-1-0 on the right of LVSD1, you have to use the script like : Code:
# ./connect_screen.sh -n DVI-1-0 -p right -r LVDS1 I will add it into my installer and copy it to /sbin to be used by root. You should found some helpful command into this script. I hope that this can help you ;-) To the automation, I think that UDEV could do what we need but I have not found the correct rule yet... |
That code example does help, thank you. I have been on holiday this weekend, I will resume coding tomorrow. You saved me a bit of time from having to read up on the xrandr man pages. I would like to borrow some of your switch statement code for beefing up the usability of the displaylink script I'm working on, if you don't mind? A status of what I have achieved and hope to accomplish:
Code:
1) script package launches default behaviors when Displaylink USB device is plugged in -TODO |
One more thought. I would like to borrow your installer scripting services when I have my displaylink init.d package working. I am using init.d so the software loads on RC5. Like I stated earlier, I want to make the USB detection the parent condition for all other services or threads. I would like to add a code segment to your install script when I have the auto detection working. The idea is adding a bit of code that lists your connected monitors after the driver is started. I would like for a text prompt to load up all of your monitors and ask you to enter which provider is the reference, and which are the positioned monitors. This would then create a permanent config file that would be loaded every time the script package is started. I think this is a good idea because random internet people will have something that just works and they won't have to do a lot of tweaking. If we make the scripts detailed enough, then other distros can borrow the ideas / code base for their project.
|
Hi all,
I have installed the drivers but after enabling extra screen in Gnome Screens management, it crashes X server and I need to log in again. Using Debian 8.2. Output of dmesg can be found on pastebin: http://pastebin.com/ugVgQ5Vk The DisplayLink logs can be found under that url: https://drive.google.com/file/d/0B3_...ew?usp=sharing Any thoughs why this is happening? Thanks, Marek |
Hi Marek,
I don't found anything that could explain why your X crashes un your dmesg... The DL logs may help but I can't read them. Some people of DL team will certainly talk about it. Could you post your Xserver's error log please ? Thx |
Hi Guerrierk,
Thanks for the reply. I pasted my Xorg logs here http://pastebin.com/y56ekUR9 Thanks, Marek |
All times are GMT. The time now is 07:55 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.