-Поиск по дневнику

Поиск сообщений в lj_yorool_gui

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 07.06.2005
Записей:
Комментариев:
Написано: 0

Yorool-GUI's blog





Yorool-GUI's blog - LiveJournal.com


Добавить любой RSS - источник (включая журнал LiveJournal) в свою ленту друзей вы можете на странице синдикации.

Исходная информация - http://yorool-gui.livejournal.com/.
Данный дневник сформирован из открытого RSS-источника по адресу /data/rss??de0aa7b8, и дополняется в соответствии с дополнением данного источника. Он может не соответствовать содержимому оригинальной страницы. Трансляция создана автоматически по запросу читателей этой RSS ленты.
По всем вопросам о работе данного сервиса обращаться со страницы контактной информации.

[Обновить трансляцию]

обновление по pritunl

Воскресенье, 30 Октября 2022 г. 10:37 + в цитатник

VPN неожиданно сломался. Изучение показало, что не работает mongodb. Попытка переставить монгу ни к чему не привела — при запустке mongodb выдается Illegal instruction. На форумах пишут, что проблема в том, что начиная с 5-й версии (т.е. довольно давно) добавили поддержку AVX инструкций — https://inf.news/en/news/ce3a5224410b4f023f5d20fb9124e859.html. Почему у меня вдруг сломалось, хотя работало раньше — непонятно. Хостинг провайдер говорит, что ничего не менял, но вот факт — с августа работало, а потом раз и не больше не работает.

Интересно, что у x5x.ru есть опция предустановки pritunl. Но оказывается они ставят ее в докер, и там-то сборка конечно с ними совместимая. Поэтому подумав, я тоже пошел по этому пути — просто воспользоваться pritunl от хостинга.

Команды для настройки:

Получить пароль, чтобы зайти первый раз на веб-морду

docker exec -it pritunl sh -c "pritunl default-password"

Пробросить дополнительный порт к pritunl — это нужно потому что порт 443 я хочу использовать для openvpn — он как правило будет открыт, даже еcли другие порты местный админ или провайдер блокирует . Т.е. openvpn у меня работает через tcp/443, а вебморда pritunl — например через 5555.

Можно создавать новый контейнер на базе имеющегося с новыми настройками. Это более правильно, но мне было лень с этим разбираться. Альтернатива — отредактировать конфиги имеющегося контейнера. Они не предназначены для ручного редактирования, но это возможно — там json без пробелов. Все решения здесь: https://stackoverflow.com/questions/19335444/how-do-i-assign-a-port-mapping-to-an-existing-docker-container, я использую вот это:

docker stop pritunl

service docker stop — нужно, иначе он перетрет все изменения

vim /var/lib/docker/containers//config.v2.json — добавить порт

vim /var/lib/docker/containers//hostconfig.json — добавить порт

service docker start

docker run pritunl

https://yorool-gui.livejournal.com/269582.html


установка Pritunl / OpenVPN

Воскресенье, 21 Августа 2022 г. 20:00 + в цитатник

Переставил VPN на виртуальном сервере. Заметки по установке:

Я использую Pritunl с OpenVPN — возможно, есть что то лучше, но я привык.

Памяти на сервере должно быть хотя бы 1Gb. На 512MB вроде бы сначала работает, но потом OOM-киллер убивает то mongodb, то pritunl

Операционку я выбрал debian. На сервере у меня всего 5Gb диска, убунта занимает сразу 4.5Gb а еще для pritunl и mongodb гигабайт нужен. Дебиан же после установки занимает около 2.5Gb.

Последовательность действий:

создать VDS (min 1Gb RAM / 5Gb SSD / Debian). Я использую https://x5x.host/?aff=4972 — сервер в США, 555р/мес

поставить sudo (apt get sudo)

добавить пользователя (adduser username), дать ему sudo права (usermod -aG sudo username), зайти этим юзером (ssh username@vds)

поставить mongodb — https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-debian/

поставить pritunl — https://docs.pritunl.com/docs/repo

включить сервисы — systemctl enable mongod, systemctl enable pritunl

диагностика проблем:

systemctl status

pritunl logs

зайти браузером на свой хост — в панель управления prinunl, действовать по инструкциям от pritunl

после начальной настройки pritunl в панели управления создать «организацию», создать «сервер», привязать сервер к организации, запустить сервер и можно создавать пользователей. Для каждого пользователя скачивается свой .ovpn файл, который отдается OpenVPN клиенту на телефоне или PC

Если нужно настроить VPN через squid — чтобы только браузер шел через VPN — в .ovpn файле пишется route-nopull, в браузере я использую расширение LightProxy для быстрого переключения.

squid ставится как обычно — apt install squid, так же управляется через systemctl. В /etc/squid/squid.conf для можно закомментировать все строчки «acl localnet src», кроме нужной локальной сети для VPN. И нужно раскомментировать строку «http_access allow localnet»

https://yorool-gui.livejournal.com/269389.html


2048 on Rust/WinRT

Вторник, 21 Июля 2020 г. 22:21 + в цитатник

Микрософт выкатила библиотеку для работы с Windows Runtime для Rust — Rust/WinRT. И, похоже, будет ее поддерживать. Сделана она так же, как и C++/WinRT — автоматически генерируемая библиотека для C++, скрывающая детали работы с COM, делает ее Kenny Kerr, автор C++/WinRT.

Так что я эту штуку стал смотреть и даже кое-что у меня на ней получилось: https://github.com/milyin/game2048-rs/

Чего пока не хватает — это поддержки xaml, т.е. всяких интерфейсных элементов, полей ввода, комбобоксов и прочего. По идее оно все есть в WinRT API, но примеров пока нет и понять, как это делать самому довольно сложно. Но, думаю, скоро и это будет.

https://yorool-gui.livejournal.com/269301.html


GUI на Rust - есть прогресс

Понедельник, 19 Августа 2019 г. 19:59 + в цитатник

Приобрело работающий вид. Сейчас есть кнопки — две штуки внизу, чекбоксы и радиокнопки — наверху. Чекбоксы и радиокнопки — одно и то же, чтобы сделать радиокнопки — чекбоксы подключаются к группе, которая ими управляет.

По сравнению с исходным вариантом переделано было почти все. Пришлось перейти на подсчет ссылок и динамический borrow checker — Rc>. От рассылки и обработки сообщений отказался. Теперь архитектура такая:
1. Виджеты собраны в дерево. Сообщения от ggez (нажатия кнопок, резайз окна, запрос на отрисовку и т.д.) пересылаются вниз по дереву.
2. Виждеты могут иметь обработчики событий. Обработчики вызываются не в момент обхода дерева (тогда бы были проблемы с borrow checker), а собираются в массив и вызываются после
3. Виджеты могут реализовывать интерфейсы. Например Checkbox реализует ICheckbox с методами get_state/set_state. А RadioGroup позволяет объединить в группу радиокнопок любые объекты, которые предоставляют ICheckbox. Аналогично будут сделаны методы типа enable/disable, set_text/get_text и т.д.

Код выглядит вот так. borrow_mut() и clone() в глазах рябят конечно, но привыкнуть можно.


        let radio_a = CheckboxBuilder::new().build();
        let radio_b = CheckboxBuilder::new().build();
        let radio_c = CheckboxBuilder::new().build();

        let radio_group = RadioGroupBuilder::new()
            .add_widget(radio_a.clone())
            .add_widget(radio_b.clone())
            .add_widget(radio_c.clone())
            .build();

        let radio_ribbon = RibbonBuilder::new()
            .set_horizontal(true)
            .add_widget(radio_a)
            .add_widget(radio_b)
            .add_widget(radio_c)
            .build();

        let add_radio = {
            let radio_group = radio_group.clone();
            let radio_ribbon = radio_ribbon.clone();
            move |_| {
                let radio = CheckboxBuilder::new().build();
                radio_group.borrow_mut().add_widget(radio.clone());
                radio_ribbon.borrow_mut().add_widget(radio.clone());
            }
        };

        let remove_radio = {
            let radio_group = radio_group.clone();
            let radio_ribbon = radio_ribbon.clone();
            move |_| {
                let radio = radio_group.borrow().radios().last().map(|r| r.clone());
                if let Some(radio) = radio {
                    radio_group.borrow_mut().remove_widget(radio.clone());
                    radio_ribbon.borrow_mut().remove_widget(radio.clone());
                }
            }
        };

        let panel = PanelBuilder::new()
            .add_widget(
                RibbonBuilder::new()
                    .set_horizontal(false)
                    .add_widget(radio_ribbon.clone())
                    .add_widget(
                        RibbonBuilder::new()
                            .set_horizontal(true)
                            .add_widget(ButtonBuilder::new().on_click(add_radio).build())
                            .add_widget(ButtonBuilder::new().on_click(remove_radio).build())
                            .build(),
                    )
                    .build(),
            )
            .build();

        wm.add_window(panel, Rect::zero(), true);


Репозиторий - https://github.com/milyin/yorool_gui

https://yorool-gui.livejournal.com/268842.html


GUI на Rust - мой подход к снаряду

Четверг, 23 Мая 2019 г. 01:33 + в цитатник

Выложил прототип GUI на Rust'e. Назвал, разумееется, yorool_gui :-)

Пока умеет рисовать кнопки, нажимать кнопки и передавать сообщения между кнопками. Прототип рисует три кнопки и имитирует поведение radio buttons на них.

Сейчас популярный подход к GUI — делать в стиле Model-View-Controller. В такой архитектуре сделан Elm, на Расте сейчас развивается Azul. Оно конечно неплохо, но мне не нравится — я уже покусан MFC и хочу объекты с внутренним состоянием и чтобы между ними сообщения бегали.

Так что сейчас архитектура получилась такой:

  1. Виждет может владеть другими виджетами, так что получается дерево из них
  2. Все виждеты в дереве — это trait object типа Widget
  3. MSG — это тип, из которого каждый виджет может извлечь сообщение, адресованное ему и завернуть в него свои сообщения
  4. MSG обрабатываются вот в таком примерно порядке:
    — собрать и обработать от всех виждетов сообщения (например о том, что у них что-то изменилось)
    —разослать им запросы на дополнительную информацию
    — собрать и обработать ответы и разослать команды на изменения

Для отрисовки и ввода я взял ggez — по прочтению вот этого обзора. Ну автор обзора (и он же основной автор ggez) предвзят наверное — но все нужное в ggez есть и пишется на нем легко.

https://yorool-gui.livejournal.com/268618.html


Почему Visual Studio иногда постоянно перекомпилирует проект целиком

Четверг, 17 Мая 2018 г. 03:52 + в цитатник

Vsiual Studio в очередной раз сошел с ума и начал все время считать, что проект был изменен и надо его целиком пересобрать, хотя ничего не менялось. На stack overflow есть советы, что с этим делать, но все не работающие. Ну например одна из возможных причин — в проект включен .h файл, которого нет на диске. Чтобы это выяснить надо всего то пройти по всему проекту и кликнуть в каждый .h файл. Ага, конечно. Во все 2000 файлов. Кликнуть.

Еще один совет — проверить, нет ли в проекте файла с датой большей текущей. Это проверить просто, но не помогло тоже.

Короче я с этим бился часа 4 наверное. До двух ночи. Не помогает ничего. И тут я подумал логически: когда эта хрень началась? А началась она после сегодняшней установки нового апдейта Windows — тут как раз что-то огромное приехало, долго очень обновляло. И вот я захожу в каталог виндовс и делаю в фаре поиск всех файлов и сортировку по дате. Бинго:

На часах 17 мая, 2 часа ночи (на тот момент, скриншот делал позже, когда пост писал). В каталоге Windows файлы с датой 17 мая, половина четвертого утра. Какого хрена? Гости из будущего, блин.

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


https://yorool-gui.livejournal.com/268536.html


Странные грабли в C++

Вторник, 06 Февраля 2018 г. 16:02 + в цитатник

Наблюдал сейчас такое:

Файл a.cpp:

struct Foo {
void foo() { cout << "A"; }
}

Файл b.cpp

struct Foo {
void foo() { cout << "B\n"; }
}

void f() {
Foo q;
q.foo();
}

При вызове f() выдается "A". Какого хрена?

Прямо в таком виде пока не проверял, это наблюдается на более сложном коде. Но суть такова.

Update: спасибо http://motorist-nn.livejournal.com/ и https://ilya-314.livejournal.com/ — лечится анонимным namespace вокруг каждого Foo. Но все равно жопа — если про такое не знать, можно много огрести.

https://yorool-gui.livejournal.com/268264.html


Странные грабли в C++

Вторник, 06 Февраля 2018 г. 16:02 + в цитатник

Наблюдал сейчас такое:

Файл a.cpp:

struct Foo {
void foo() { cout << "A"; }
}

Файл b.cpp

struct Foo {
void foo() { cout << "B\n"; }
}

void f() {
Foo q;
q.foo();
}

При вызове f() выдается "A". Какого хрена?

Прямо в таком виде пока не проверял, это наблюдается на более сложном коде. Но суть такова.

Update: спасибо http://motorist-nn.livejournal.com/ и https://ilya-314.livejournal.com/ — лечится анонимным namespace вокруг каждого Foo. Но все равно жопа — если про такое не знать, можно много огрести.

https://yorool-gui.livejournal.com/268264.html


Еще про WebAssembly

Вторник, 05 Декабря 2017 г. 15:25 + в цитатник

Вот образец, как связывать JS и Rust — https://getpocket.com/a/read/1980795937. Причем без emscripten — нужен только rust nightly.

https://yorool-gui.livejournal.com/267973.html


Rust и WebAssembly

Среда, 15 Ноября 2017 г. 11:17 + в цитатник

Я тут неторопливо пилю веб сайт на Rust. Пока архитектура получается такая — сервер на Rust отдает и принимает Json, клиент на Elm рисует формочки и общается с сервером. Получается со стороны клиента тяжеловесно, мне не нравится. К тому же контролировать соответствие Json-а, который шлет / принимает клиент и текущего API сервера надо или вручную или какой-то генератор кода писать.

Так что последнее время я все прикидывал, а нужно ли мне смотреть в сторону WebAssembly (в который Rust компилируется), а если нужно, то зачем?

И сегодня до индейца Джо дошло, что в сарае нет стены. Если мы можем строить из Rust-а код, исполняемый в браузере, а этот код может выставлять интерфейс в Js, то нам вообще не надо делать какое-то API сайта. Клиентское приложение на Js (хоть на Elm, хоть на б-гомерзких реактах с ангулярами) скачивает с сервера WebAssembly библиотеку, собранную из тех же исходников, что и сам сервер, а значит гарантированно совместимую с сервером по всем интерфейсам и структурам данных. Библиотека эта общается с сервером как захочет сама, скорее всего через web socket, бинарными данными. Любые изменения в протокол обмена можно вносить не трогая фронтенд. И вместо дрочения Json-а клиентское приложение просто вызывает обычные функции через js api.

Это, например, полностью решает проблему валидации данных — один и тот же код валидации, написанный на Rust, выполняется и на клиенте перед посылкой данных и на сервере при приеме данных.

https://yorool-gui.livejournal.com/267418.html


загадочная вакансия

Четверг, 02 Ноября 2017 г. 18:36 + в цитатник

https://hh.ru/vacancy/23321746

Интересные у людей требования к C++ разработчикам :-)

https://yorool-gui.livejournal.com/267028.html


Что общего между Motif и продавцами на рынке

Четверг, 31 Августа 2017 г. 22:16 + в цитатник

Если кто помнит, в юниксах оболочки для X-window имели такой режим: переводить фокус на то окно, над которым сейчас мышка. Режим на мой вкус довольно раздражающий, я его всегда выключал.
Так вот сегодня наблюдал этот эффект в RL, когда  покупал цветы детям на первое сентября. Стоит посмотреть в сторону любого продавца, как она тут же возбуждается, начинает зазывать , расхваливать свой товар и сразу хочется как-то эту активность прекратить, а можно это сделать только отвернувшись, ну или по таймауту.
В итоге, чтобы спокойно выбрать, я ходил от них на безопасном расстоянии - метра два-три, тогда они не так сильно реагировали.

https://yorool-gui.livejournal.com/266948.html


Что общего между Motif и продавцами на рынке

Четверг, 31 Августа 2017 г. 22:16 + в цитатник

Если кто помнит, в юниксах оболочки для X-window имели такой режим: переводить фокус на то окно, над которым сейчас мышка. Режим на мой вкус довольно раздражающий, я его всегда выключал.
Так вот сегодня наблюдал этот эффект в RL, когда  покупал цветы детям на первое сентября. Стоит посмотреть в сторону любого продавца, как она тут же возбуждается, начинает зазывать , расхваливать свой товар и сразу хочется как-то эту активность прекратить, а можно это сделать только отвернувшись, ну или по таймауту.
В итоге, чтобы спокойно выбрать, я ходил от них на безопасном расстоянии - метра два-три, тогда они не так сильно реагировали.

https://yorool-gui.livejournal.com/266948.html


А это наше хорошее, демократическое двоемыслие

Понедельник, 07 Августа 2017 г. 06:18 + в цитатник

А это наше хорошее, демократическое двоемыслие

Понедельник, 07 Августа 2017 г. 06:18 + в цитатник

как писать на javascript, чтобы не тошнило

Среда, 02 Августа 2017 г. 14:23 + в цитатник
В поиске, на чем делать морду для моего сайта на Rust-е наткнулся на такую вот штуку - язык Elm - http://elm-lang.org/ - это такой урезанный по максимуму Хаскель, компилирующийся в js. И запал - всю последнюю неделю в свободное время с ним развлекался. Результат развлечений вот: https://milyin.pro/2048/, https://github.com/milyin/elm2048

Узнал в процессе несколько интересных вещей:
- в CSS есть возможность указывать размер в долях от высоты, ширины или минимального/максимального размера окна - единицы vw, hw, vmin, vmax
- при этом в CSS нет никакого (то есть вообще) способа задать размер шрифта в зависимости от размера внешнего блока
- в CSS есть встроенная анимация и очень крутая
- при этом нет никакой вменяемой возможности управлять этой анимацией из js
- в CSS появился тип контейнера "flex" с которым верстка на div-ах перестала быть подвигом

https://yorool-gui.livejournal.com/266445.html


как писать на javascript, чтобы не тошнило

Среда, 02 Августа 2017 г. 14:23 + в цитатник
В поиске, на чем делать морду для моего сайта на Rust-е наткнулся на такую вот штуку - язык Elm - http://elm-lang.org/ - это такой урезанный по максимуму Хаскель, компилирующийся в js. И запал - всю последнюю неделю в свободное время с ним развлекался. Результат развлечений вот: https://milyin.pro/2048/, https://github.com/milyin/elm2048

Узнал в процессе несколько интересных вещей:
- в CSS есть возможность указывать размер в долях от высоты, ширины или минимального/максимального размера окна - единицы vw, hw, vmin, vmax
- при этом в CSS нет никакого (то есть вообще) способа задать размер шрифта в зависимости от размера внешнего блока
- в CSS есть встроенная анимация и очень крутая
- при этом нет никакой вменяемой возможности управлять этой анимацией из js
- в CSS появился тип контейнера "flex" с которым верстка на div-ах перестала быть подвигом

https://yorool-gui.livejournal.com/266445.html


Первый юбилей УАЗдао!

Вторник, 11 Июля 2017 г. 16:04 + в цитатник
И да пребудет с автором Болгарка, Сварка и Свалка!
Кстати, для ознакомления с автором еще очень советую рассказ "Зомбопривод":-)

Оригинал взят у semiurg в Первый юбилей УАЗдао!

Магазину УАЗдао исполнился год. Первый юбилей.


skrinshot-2017-07-11-15-14-02


Это оказался очень интересный эксперимент, в ходе которого мы многое поняли про интернет-магазины вообще, про книжные магазины в частности, и о продаже собственных книг автором — в особенности. В последнем аспекте наш опыт уникален — кажется, еще никто не делал настоящий взрослый магазин под одного автора  (личные странички с номером яндекс-кошелька не считаются).


Для меня это стало важным источником информации о том, кто читает мои книги и зачем, а также подтвердило правильность принятого год назад сложного решения — оказаться от посредников в виде издателя. Любой читатель может получить мою книгу, не кормя при этом цепочку нахлебников, а я могу писать так, как считаю нужным, и используя именно те слова, которые считаю подходящими.


Не все идеи, которые мы пробовали, оказались удачными. В коммерческом отношении мы не озолотились и не разбогатели — да и не ставили  такой задачи. (Так, например, одна моя книга, фактически, написана в пользу ФНС — все заработанные на ней деньги ушли на онлайн-кассу и связанные с ней расходы. Спасибо читателям, которые были готовы поддержать ее авансом). По счастью, литература не является для меня источником дохода, и это тоже дает определённую степень свободы — я не должен подстраиваться и под читателя.


Впрочем, даже оставшиеся на выходе скромные суммы все равно В РАЗЫ больше того, что готовы предложить малоизвестному писателю издательства, так что эта форма книжной дистрибуции тоже имеет право на жизнь. А значит, магазину УАЗдао предстоит работать и дальше.


Внимание!


В честь годовщины, мы начинаем новый интересный эксперимент. Его цель — исследование спроса на аудиоверсии книг серии. Для пробы были озвучены притчи УАЗдао — вы можете найти их (и пробный бесплатный отрывок) по ссылке. Аудиокнига предлагается за символические деньги — это будет своеобразное голосование за озвучку других книг. Голосование единственно честное и объективное — рублем!


audiocd-koany-1-300x300


Внимание — 2!


В честь годовщины, очень большие скидки на все книги магазина! В ближайшие дни вы сможете приобрести их почти даром!


Спасибо всем, кто меня читает! Следующая книга пишется и будет скорее, чем вы думаете!


Оригинал этой записи на https://semiurg.ru/2017-07-11/pervyiy-yubiley-uazdao/


https://yorool-gui.livejournal.com/266165.html


Первый юбилей УАЗдао!

Вторник, 11 Июля 2017 г. 16:04 + в цитатник
И да пребудет с автором Болгарка, Сварка и Свалка!
Кстати, для ознакомления с автором еще очень советую рассказ "Зомбопривод":-)

Оригинал взят у semiurg в Первый юбилей УАЗдао!

Магазину УАЗдао исполнился год. Первый юбилей.


skrinshot-2017-07-11-15-14-02


Это оказался очень интересный эксперимент, в ходе которого мы многое поняли про интернет-магазины вообще, про книжные магазины в частности, и о продаже собственных книг автором — в особенности. В последнем аспекте наш опыт уникален — кажется, еще никто не делал настоящий взрослый магазин под одного автора  (личные странички с номером яндекс-кошелька не считаются).


Для меня это стало важным источником информации о том, кто читает мои книги и зачем, а также подтвердило правильность принятого год назад сложного решения — оказаться от посредников в виде издателя. Любой читатель может получить мою книгу, не кормя при этом цепочку нахлебников, а я могу писать так, как считаю нужным, и используя именно те слова, которые считаю подходящими.


Не все идеи, которые мы пробовали, оказались удачными. В коммерческом отношении мы не озолотились и не разбогатели — да и не ставили  такой задачи. (Так, например, одна моя книга, фактически, написана в пользу ФНС — все заработанные на ней деньги ушли на онлайн-кассу и связанные с ней расходы. Спасибо читателям, которые были готовы поддержать ее авансом). По счастью, литература не является для меня источником дохода, и это тоже дает определённую степень свободы — я не должен подстраиваться и под читателя.


Впрочем, даже оставшиеся на выходе скромные суммы все равно В РАЗЫ больше того, что готовы предложить малоизвестному писателю издательства, так что эта форма книжной дистрибуции тоже имеет право на жизнь. А значит, магазину УАЗдао предстоит работать и дальше.


Внимание!


В честь годовщины, мы начинаем новый интересный эксперимент. Его цель — исследование спроса на аудиоверсии книг серии. Для пробы были озвучены притчи УАЗдао — вы можете найти их (и пробный бесплатный отрывок) по ссылке. Аудиокнига предлагается за символические деньги — это будет своеобразное голосование за озвучку других книг. Голосование единственно честное и объективное — рублем!


audiocd-koany-1-300x300


Внимание — 2!


В честь годовщины, очень большие скидки на все книги магазина! В ближайшие дни вы сможете приобрести их почти даром!


Спасибо всем, кто меня читает! Следующая книга пишется и будет скорее, чем вы думаете!


Оригинал этой записи на https://semiurg.ru/2017-07-11/pervyiy-yubiley-uazdao/


https://yorool-gui.livejournal.com/266165.html


diesel.rs на windows

Воскресенье, 09 Июля 2017 г. 13:07 + в цитатник

все вот отсюда: https://www.reddit.com/r/rust/comments/65fo0q/installing_diesel_cli_on_windows_10_woes/

  • если не нужны mysql и postgres, то можно их не включать:
    cargo install diesel_cli --no-default-features --features sqlite
  • sqlite3 под msvc проще всего поставить через vcpkg — микрософтовский(!) экспериментальный тул для установки библиотек, фактически cargo для msvc
  • просто dpkg install sqlite3 не сработало - sqlite3.lib не находился все равно. Сработало вот так (взято отсюда):

    vcpkg install sqlite3:x64-windows-static
    set RUSTFLAGS=-Ctarget-feature=+crt-static
    cargo install diesel_cli --no-default-features --features sqlite


https://yorool-gui.livejournal.com/265807.html


конфигурация сервера - заметки, чтобы не забыть

Пятница, 07 Июля 2017 г. 23:30 + в цитатник

1. squid — первая строка в конфиге 'dns_v4_first on'. Без этого тупо не работает, хз почему, что-то с ipv6

2. vpn — на клиенте в .ovpn файле прописать 'route-nopull' — чтобы роутинг по дефолту не шел в vpn сеть. Если же наоборот — нужно, чтобы все шло в vpn, а оно само не идет — смотреть опцию ' redirect-gateway' (не пробовал)

3. vpn само по себе нифига не помогает от подмены провайдером dns. И даже прописывание 8.8.8.8 не помогает — провайдер подменяет ответы от 8.8.8.8. Я поставил https://simplednscrypt.org/

4. https кошерно подключается через https://certbot.eff.org/. Оно делает вообще все, от получения сертификата до редактирования nginx.conf

Ссылки на инструкции:

https://habrahabr.ru/company/infobox/blog/248445/ — настройка openvpn через панель управления pritunl

Выбор proxy в хроме по регулярным выражениям — расширение FoxyProxy

https://yorool-gui.livejournal.com/265597.html


конфигурация сервера - заметки, чтобы не забыть

Пятница, 07 Июля 2017 г. 23:30 + в цитатник

1. squid — первая строка в конфиге 'dns_v4_first on'. Без этого тупо не работает, хз почему, что-то с ipv6

2. vpn — на клиенте в .ovpn файле прописать 'route-nopull' — чтобы роутинг по дефолту не шел в vpn сеть. Если же наоборот — нужно, чтобы все шло в vpn, а оно само не идет — смотреть опцию ' redirect-gateway' (не пробовал)

3. vpn само по себе нифига не помогает от подмены провайдером dns. И даже прописывание 8.8.8.8 не помогает — провайдер подменяет ответы от 8.8.8.8. Я поставил https://simplednscrypt.org/

4. https кошерно подключается через https://certbot.eff.org/. Оно делает вообще все, от получения сертификата до редактирования nginx.conf

Ссылки на инструкции:

https://habrahabr.ru/company/infobox/blog/248445/ — настройка openvpn через панель управления pritunl

Выбор proxy в хроме по регулярным выражениям — расширение FoxyProxy

https://yorool-gui.livejournal.com/265597.html


конфигурация сервера - заметки, чтобы не забыть

Пятница, 07 Июля 2017 г. 23:30 + в цитатник

1. squid — первая строка в конфиге 'dns_v4_first on'. Без этого тупо не работает, хз почему, что-то с ipv6

2. vpn — на клиенте в .ovpn файле прописать 'route-nopull' — чтобы роутинг по дефолту не шел в vpn сеть. Если же наоборот — нужно, чтобы все шло в vpn, а оно само не идет — смотреть опцию ' redirect-gateway' (не пробовал)

3. vpn само по себе нифига не помогает от подмены провайдером dns. И даже прописывание 8.8.8.8 не помогает — провайдер подменяет ответы от 8.8.8.8. Я поставил https://simplednscrypt.org/

4. https кошерно подключается через https://certbot.eff.org/. Оно делает вообще все, от получения сертификата до редактирования nginx.conf

Ссылки на инструкции:

https://habrahabr.ru/company/infobox/blog/248445/ — настройка openvpn через панель управления pritunl

Выбор proxy в хроме по регулярным выражениям — расширение FoxyProxy

https://yorool-gui.livejournal.com/265597.html



Поиск сообщений в lj_yorool_gui
Страницы: [5] 4 3 2 1 Календарь