LINUX.ORG.RU
ФорумTalks

В полку X серверов прибыло

 , , , ,


0

3

Phoenix это новый X сервер, написанный с нуля на Zig. Этот X сервер спроектирован для того, чтобы быть современной альтернативой серверу Xorg.

Тут.

Пока для практического применения не готов, но можно поглядывать на прогресс проекта.

★★★★★

Последнее исправление: vbr (всего исправлений: 2)

Ты автор, или просто наткнулся?

Я так понима, один человек разрабатывает, судя по логу?

P.S. может тег zig добавить?

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от mord0d

Вначале надо сделать что можно показать, а потом показать. А сейчас это заявление о намерениях.

Это же опенсорс, если бы Торвальдс так делал, то линукса вообще могло бы и не получиться.

Tark ★★
()
Ответ на: комментарий от unclestephen

но потом-то перепишут?

Всенепременно! Сначала на rust, а потом на rust++.

u-235
()

Это не сервер, это nested server. Расходимся.

lenin386 ★★★★
()

Only relatively modern hardware (made in the last ~15 years) which support linux drm and mesa gbm will be supported, and no server driver interface like the Xorg server. Just like how Wayland compositors work.

Большая прослойка некроблобопользователей отпадает.

Merionet
()
Ответ на: комментарий от unclestephen

нет наплыва молодых идиотов купившихся на: «очень надёжно». Пишущих естественно (идиоты) кривой код. А так по делу: и руст неплох и зиг тоже.

s-warus ★★★★
()

Жертвуя ZSF, вы финансируете развитие языка программирования Zig и его экосистемы

Взято отседа

Они не против, чтобы их отдали в жертву.

PunkPerson
()

Phoenix это новый X сервер, написанный с нуля на Zig. Этот X сервер спроектирован для того, чтобы быть современной альтернативой серверу Xorg.

Людям делать нечего? На завод!

PunkPerson
()
Ответ на: комментарий от mord0d

В современном мире победившего agile, раннего доступа и прочих продаж роадмапов, а не продукта это называется MVP.

kma21 ★★★★★
()
Ответ на: комментарий от Tark

Вначале надо сделать что можно показать, а потом показать. А сейчас это заявление о намерениях.

Это же опенсорс, если бы Торвальдс так делал, то линукса вообще могло бы и не получиться.

Торвальдс вначале написал рабочий прототип и портировал туда какое-то количество софта, и уже с этим заявился в os.unix. А сабж «Ну мы, пук-среньк, написали какое-то количества кода на никому не нужном язычке, ололо, который ничего не может, но вы там держитесь!»

mord0d ★★★★★
()
Ответ на: комментарий от kma21

И в жопу пусть себе его засунут.

Нет рабочего прототипа — нет ничего. Пусть идут лесом и возвращаются, когда будет.

mord0d ★★★★★
()

Наконец-то я нашел время и место написать новый икс-сервер.

thesis ★★★★★
()
Ответ на: комментарий от unclestephen

Zig

чем оно лучше rust?

https://git.dec05eba.com/phoenix/tree/src/protocol/x11.zig:

const std = @import("std");
pub const native_endian = @import("builtin").target.cpu.arch.endian();

pub const Card8 = u8;
pub const Card16 = u16;
pub const Card32 = u32;
pub const Card64 = u64;

pub const ListOfLengthType = enum {
    integer,
    bitmask, // The length is specified by the number of bits set
    request_remainder, // The size is calculated by the request length field minus the size of all items before this item
};

pub const ListOfOptions = struct {
    length_field: ?[]const u8,
    length_field_type: ListOfLengthType = .integer,
};

// TODO: Use a different type in replies. In replies the items is never modified so it can be const
pub fn ListOf(comptime T: type, comptime options: ListOfOptions) type {
    return struct {
        items: []T = &.{},

        pub fn get_options() ListOfOptions {
            return options;
        }

        pub fn get_element_type() type {
            return T;
        }

        pub fn is_list_of() bool {
            return true;
        }
    };
}

pub const UnionOptions = struct {
    type_field: []const u8,
    length_field: []const u8,
};

pub fn UnionList(comptime UnionType: type, comptime options: UnionOptions) type {
    std.debug.assert(std.meta.activeTag(@typeInfo(UnionType)) == .@"union");
    return struct {
        data: UnionType,

        pub fn get_options() UnionOptions {
            return options;
        }

        pub fn is_union_list() bool {
            return true;
        }

        pub fn get_type() type {
            return UnionType;
        }
    };
}
...
dataman ★★★★★
()

X12 поддерживает?

cetjs2 ★★★★★
()
Ответ на: комментарий от Bfgeshka

Проект не готов, потому что не готов zig. Всё понятно, пора выкладывать на ЛОР.

maristo
()
Ответ на: комментарий от mord0d

Вначале надо сделать что можно показать, а потом показать. А сейчас это заявление о намерениях.

Вейленд уже внедряют, а пока его лучше не показывать пользователям. Так что несчитово %)

skiminok1986 ★★★★★
()
Ответ на: комментарий от PunkPerson

Людям делать нечего? На завод!

Заводы ща только в китае, приходится вяленого пилить.

ya-betmen ★★★★★
()
Ответ на: комментарий от einhander

А вейленд в своем самом первом коммите был готов для практического применение?

Он и сейчас не готов и готов не будет, изначально ущербный протокол.

Xenius ★★★★★
()
Ответ на: комментарий от unclestephen

Zig

чем оно лучше rust?

Как по мне, Zig выглядит наиболее перспективным Post-C языком. Rust слишком монструозен, но он скорее Post-C++ язык.

DarkAmateur ★★★★★
()

написанный с нуля на Zig

генеральная проектная ошибка: надо было писать на Rust. Проще продвигать и искать бабло. Ничем технически не лучше, но там своеобразное комьюнити, «рука руку моет» (или про иные части тел).

MKuznetsov ★★★★★
()

...написанный с нуля на Zig.

Что за мода писать на каких-то редких недоязычках? Чтобы быстрее явились те самые пресловутые полтора землекопа со своим инструментом?

sparkie ★★★★★
()
Ответ на: комментарий от MKuznetsov

...рука руку моет...

Круговая порука, проще говоря.

sparkie ★★★★★
()
Ответ на: комментарий от Tark

если бы Торвальдс так делал, то линукса вообще могло бы и не получиться.

Во-первых Торвальдс показал уже нечто более-менее работающее. Во-вторых не очень понятно почему возник такой интерес именно к его поделке которая была на уровне прочих подобных студенческих работ. При том что существовали и до и после куда более проработанные прототипы ОС.

Это не технический,а какой-то социологический феномен.

А так-то да - это опенсорс, кто что хочет тот то и пишет. И это хорошо.

watchcat382
()
Ответ на: комментарий от dataman

https://github.com/ziglang/zig/issues/17723

https://news.ycombinator.com/item?id=24617226

Вроде пишут, что сейчас табы уже принимаются (но автоформаттер по-прежнему их не поддерживает), но видно, что разработчик со странностями (так же как и авторы Wayland выкинувшие трей и позиционирование окон приложением).

KivApple ★★★★★
()
Ответ на: комментарий от sparkie

Что за мода писать на каких-то редких недоязычках?

Лучше уж так, чем ежоуж у Taskwarrior:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Language              Files        Lines         Code     Comments       Blanks
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Autoconf                  6         3875         3015           33          827
 BASH                      3           81           51           14           16
 C Header                104         5656         2165         2779          712
 CMake                    12          766          656           37           73
 C++                     139        36671        23690         7677         5304
 Dockerfile                1           42           26            6           10
 Fish                      1          459          312           87           60
 Perl                      1          223          148           40           35
 Python                  138        22605        13799         4368         4438
 Shell                    57         1264          515          511          238
 Plain Text                1         8510            0         8510            0
 TOML                      2           27           20            1            6
 Vim Script                4          315          273           34            8
 YAML                      1           58           58            0            0
─────────────────────────────────────────────────────────────────────────────────
 Markdown                 25         3311            0         2280         1031
 |- Python                 1            2            2            0            0
 |- Shell                  1            2            2            0            0
 |- TOML                   1            1            1            0            0
 (Total)                             3316            5         2280         1031
─────────────────────────────────────────────────────────────────────────────────
 Rust                      2         1015          799           33          183
 |- Markdown               1          100            0           89           11
 (Total)                             1115          799          122          194
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Total                   497        84983        45532        26499        12952
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
dataman ★★★★★
()
Ответ на: комментарий от KivApple

сейчас табы уже принимаются

Да, я же проверил на «ночной» сборке. :)

но автоформаттер по-прежнему их не поддерживает

Это же не запрет на использование табов.

dataman ★★★★★
()
Ответ на: комментарий от sparkie

Что за мода писать на каких-то редких недоязычках?

Хорошая мода, мне нравится.


Мне вот интересно, каким образом и в какой момент язык должен перейти в разряд частых не-недо-язычков? Ведь по вашему, пока он редкий, на нём писать не надо. А если не писать на нём, он будет оставаться редким.

Выходит, никакие новые языки вообще не нужны? Всем писать на ассемблере и фортране с коболом?

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от Bfgeshka

Можно подумать у раста не ломался и у си нет разброда и шатания в плане поддержки фич компиляторами.

Между патчами ничего не ломают, а то что «минорный» релиз апи может менять, ну так мажорная версия все еще 0, и вообще, stable api is nonsense

timdorohin ★★★★
()
Ответ на: комментарий от qulinxao3

Я бы не спешил с выводами, это в Цэ/Цэ++ так могло бы быть...

Shadow ★★★★★
()
Ответ на: комментарий от Xenius

Протокол в сферическом вакууме даже и не плохой... Но концепция организации и использования ущербна, да.

Shadow ★★★★★
()
Ответ на: комментарий от watchcat382

не очень понятно почему возник такой интерес именно к его поделке

Она появилась в момент самого острого нагибания *BSD копирастами. Особо тревожные люди посмотрели и обрадовались. Когда BSD от копирастов отбились, уже был linux. Ну и его ядро сильно проще пилить разным анестезиологам, адвокатам и прочим гикам - ибо некоторые части *BSD страшны и загадочны. И с кучами define.

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)
Ответ на: комментарий от timdorohin

и у си нет разброда и шатания в плане поддержки фич компиляторами.

Давно хотел спросить - а C89 вроде ещё поддерживается везде? Или так халтурно уже не попишешь, ворнингами завалит?

Shadow ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)