Linux: Установка главного дисплея (Nvidia) из командной строки

Действительно ли это возможно?

Обычно я использую disper для включения моего внешнего монитора но я не думаю, что могу вынудить 2-й монитор быть основным. http://willem.engen.nl/projects/disper/

Я играл вокруг с nv-control-dpy включенный в источник управления Nvidia, но я не выяснил, как сделать это все же. Как добраться: http://ubuntuforums.org/showthread.php?t=922956

Править

Это - ноутбук, с которым я подключаю внешний дисплей HDMI, когда я взялся за работу. dipser -e расширяет рабочий стол для меня, но ноутбук остается основным рабочим столом (содержание панелей и т.д.). nvidia-settings может установить основной монитор для меня, но я хочу использовать cli.

6
задан 31.03.2016, 09:55

4 ответа

Я успешно выполняюсь, чтобы точно сделать то, что Вы имеете в виду, возможно, потому что у меня есть 2,3 версии на человечности 10.04 с установкой Nvidia v 1.0


После за исправлением ошибки:

это было перечислено как большое однажды:

https://bugs.launchpad.net/disper / + ошибка/321288

версией 2.1 должен работать, как Вы попросили относительно телефона 20010-04, и 'исправление ошибки' было подтверждено 16.02.2009

Что я имел

при помощи:

disper -l

там я видел, что мои устройства были:

  • DFP 0: LGD (дисплей портативного компьютера)
  • CRT 0: Samsung SyncMaster (внешний монитор)

(внешнее устройство не обнаруживается путем запросов с xrandr),

Что я требуемый и как

Ноутбук справа, и монитор слева, я хотел, чтобы ноутбук был расширен от Samsung, таким образом, имея ноутбук, физически лучший выровненный, я хотел, чтобы они были также логически главные выровненный и имели их собственное максимальное разрешение:

disper -d CRT-0,DFP-0 -r auto -e -t right

это должно быть считано как: (-d) opertate сначала на SyncMaster затем на ЖК-мониторе ноутбука, (-r) полагают, что автоматическое разрешение, (-e) расширяются, вторая дисигра [второй вот ноутбук, потому что-d упорядочивание дисплея аппарата], (-t) расширяют второй дисплей [ноутбук] направо от первого.

Google правильно и попытка сначала

Очень Простой никакое взламывание Nvidia не необходимо. Надежда это помогает.


Удачи

Splinux

3
ответ дан 07.12.2019, 16:21

Может быть слишком очевидным и опция, которую Вы предпочитаете не использовать, но, что относительно того, чтобы измениться, который является основным в BIOS?

0
ответ дан 07.12.2019, 16:21

Можно попытаться смешать с xrandr. commandlinefu имеют большой набор находящихся в xrandr сценариев.

0
ответ дан 07.12.2019, 16:21

Я взломал источник настроек Nvidia и получил рабочее решение:

Это сделано в Ubuntu, но портирование ее не должно быть трудным.

Выполните эти команды:

sudo apt-get build-dep nvidia-settings
apt-get source nvidia-settings
cd nvidia-settings-195.36.08/src

Отредактируйте "nvidia-settings.c" и замените основной () с этим:

int main(int argc, char **argv)
{


    ConfigProperties conf;
    ParsedAttribute *p; 
    CtrlHandles *h; 
    char * target;

    /* initialize the parsed attribute list */

    p = nv_parsed_attribute_init();

    /* initialize the ConfigProperties */

    init_config_properties(&conf);

    /* allocate the CtrlHandles for this X screen */

    h = nv_alloc_ctrl_handles(":0.0");

    if (!h || !h->dpy) {
        return 1;
    }   

    /* Get target from command line */
    if(argc != 2){ 
            printf("Usage: %s PRIMARY_DISPLAY\n", argv[0]);
        printf("Example: %s  DFP-1\n");
        return 1;
    }   

    target = argv[1];

    int i;
    for (i = 0; i < h->targets[X_SCREEN_TARGET].n; i++) {
        if (h->targets[X_SCREEN_TARGET].t[i].h) {

            printf("Setting primary display: %s\n", target);

            NvCtrlSetStringAttribute(h->targets[X_SCREEN_TARGET].t[i].h, NV_CTRL_STRING_TWINVIEW_XINERAMA_INFO_ORDER, target, NULL);

            break;
        }   
    }   

    return 0;

} /* main() */

компиляция:

cd ..
make

поместите двоичный файл в путь:

sudo cp nvidia-settings /usr/local/bin/setPrimaryDisplay

используйте его:

setPrimaryDisplay DFP-1
gnome-panel --replace 2>/dev/null &

Где DFP-1 является названием желаемого дисплея diaplay. Панель Gnome не не отстает от времени и должна быть перезапущена.

Можно загрузить мой двоичный файл, скомпилированный для amd64 здесь: http://while1.no/files/setPrimaryDisplay

1
ответ дан 07.12.2019, 16:21

Теги

Похожие вопросы