Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Пт сен 21, 2018 7:50 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 126 сообщений ]  На страницу Пред. 1 2 3 4 59 След.
Автор Сообщение
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Вс апр 01, 2018 1:57 pm 
Не в сети

Зарегистрирован: Ср мар 26, 2008 12:44 pm
Сообщения: 189
0CodErr писал(а):
Можно сравнить как сделано в KlbrInWin.

Во первых, у меня нет исходников KlbrInWin, а во-вторых, знать бы что сравнивать...


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Вс апр 01, 2018 3:55 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4548
JohnXenox
Все дело в регистрозависимости файловых систем в линупсе.
/sys/settings/ не находит, т.к. у тебя /sys/SETTINGS/

Попробуй последнюю сборку.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Вс апр 01, 2018 7:30 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 18, 2017 2:29 am
Сообщения: 148
tsdima писал(а):
Да, забыл сказать, есть такая проблема. Однако если не копировать файлы из образа, а прямо смонтировать его в ~/.kex/root/RD/1, то этой проблемы не заметно (я кстати не знал, что если смонтировать образ c FAT, то обращение к файлам станет регистронезависимым).
Спасибо, тоже не знал.
tsdima писал(а):
Я открываю образы "Disk Image Mounter"-ом, они монтируются в /media, а в каталоге ~/.kex/root/RD/ я сделал линк на каталог в /media (1 -> /media/user/KOLIBRI). Образы монтируются только для чтения, но это вроде не проблема, можно создать каталог /RD/2 и там файлы сохранять.
Тоже пользуюсь этой программой. Ей можно и на запись монтировать. Я себе уже сделал.
tsdima писал(а):
Проблема с иконками и game center скорее всего тоже из-за чувствительности к регистру.
Да, так и есть.
tsdima писал(а):
На данный момент короткие имена приводятся к верхнему регистру, а длинные, типа RasterWorks.obj оставляю как есть. Но по-хорошему, надо бы считывать каталог и искать имя без учёта регистра и потом использовать то, что найдено. Только мне кажется, это будет замедлять работу.
Да, возможно.
tsdima писал(а):
С fNav да, какая-то непонятная хрень, вроде бы используются только реализованные функции, и вроде бы я их полностью реализовал. Но не работает. Жаль исходников fNav нет.
Не работают программы, которые используют fs: (в основном Си-шные) и gs: (три игрушки от codemaster-а). Пока не знаю, решаемо ли. Использовать rdfsbase/wrfsbase можно, но что будет на практике - пока не знаю.
Ясно.

_________________
The Glass is Always Half Full! :mrgreen:


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Вс апр 01, 2018 7:35 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 18, 2017 2:29 am
Сообщения: 148
tsdima писал(а):
По поводу растягивания окон, хотелось бы узнать версию Линукса и тип оконного менеджера.
Linux Mint 18.2 Sonya XFCE + Compton

_________________
The Glass is Always Half Full! :mrgreen:


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Вс апр 01, 2018 9:18 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 18, 2017 2:29 am
Сообщения: 148
Leency писал(а):
JohnXenox
Все дело в регистрозависимости файловых систем в линупсе.
/sys/settings/ не находит, т.к. у тебя /sys/SETTINGS/

Попробуй последнюю сборку.
Попробовал. По совету tsdima, создал ссылку. Со ссылкой работает правильно. Без ссылки всё также.

_________________
The Glass is Always Half Full! :mrgreen:


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Вс апр 01, 2018 9:37 pm 
Не в сети

Зарегистрирован: Ср мар 26, 2008 12:44 pm
Сообщения: 189
Leency писал(а):
Попробуй последнюю сборку.

Не надо ничего менять исключительно для эмулятора. Наоборот, надо менять эмулятор, чтобы он соответствовал ядру.


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Вс апр 01, 2018 9:49 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 18, 2017 2:29 am
Сообщения: 148
Для удобства работы с эмулятором, набросал небольшой скрипт.
Скрипт сначала проверяет, есть ли в папке образ kolibri.img, если нет, то скачивает по сети, а затем монтирует образ, и создаёт ссылку, если её нет, на смонтированный образ.
Образ монтируется с правами на запись.

Вот скрипт, mount.sh:
Спойлер: Показать
Код:
#!/bin/bash

# =============================================================================== #
# Description:                                                                    #
# mount.sh - bash script, that downloads the kolibri.img, mounts it and creates   #
#            a link to the mounted image.                                         #
# Usage:                                                                          #
# ./mount.sh - to mount the image.                                                #
# =============================================================================== #
# ----------------------------------------------                                  #
# Bash script mount.sh was written by JohnXenox.                                  #
# ----------------------------------------------                                  #
# GNU GPLv2.                                                                      #
# =============================================================================== #

## definition of a package manager.
if which apt-get &> /dev/null; then
  echo 'Package manager is apt-get!'
  install_the_package='apt-get -y install'
elif which pacman &> /dev/null; then
  echo 'Package manager is pacman!'
  install_the_package='pacman -S --noconfirm'
elif which yum &> /dev/null; then
  echo 'Package manager is yum!'
  install_the_package='yum -y install'
elif which zypper &> /dev/null; then
  echo 'Package manager is zypper!'
  install_the_package='zypper -n install -y -l'
elif which emerge &> /dev/null; then
  echo 'Package manager is emerge!'
  install_the_package='emerge'
else
  echo "I can't find your package manager!"
  exit 1
fi


## installing the archiver.
function install_the_archiver {
  if ! which 7z &> /dev/null; then
    echo -n 'Installing the archiver: '
    install_the_package p7zip-full &> /dev/null
    if test $? -eq 0; then
      echo -e 'successfully!'
    else
      echo -e 'unsuccessfully!'
      exit 1
    fi
  fi
}


### installing the gnome-disk-image-mounter.
function install_the_mounter {
  if ! which gnome-disk-image-mounter &> /dev/null; then
    echo -n 'Installing the gnome-disk-image-mounter: '
    install_the_package gnome-disk-utility &> /dev/null
    if test $? -eq 0; then
      echo -e 'successfully!'
    else
      echo -e 'unsuccessfully!'
      exit 1
    fi
  fi
}


## installing the wget.
function install_the_wget {
  if ! which wget &> /dev/null; then
    echo -n 'Installing the wget: '
    install_the_package wget &> /dev/null
    if test $? -eq 0; then
      echo -e 'successfully!'
    else
      echo -e 'unsuccessfully!'
      exit 1
    fi
  fi
}


## installing the image.
function install_the_image {
    echo -n 'Downloading the image: '
    wget http://builds.kolibrios.org/eng/latest-img.7z &> /dev/null && 7z x latest-img.7z &> /dev/null && rm latest-img.7z &> /dev/null
    if test $? -eq 0; then
      echo -e 'successfully!'
    else
      echo -e 'unsuccessfully!'
      exit 1
    fi
}


## installing the kolibri.img.
if ! test -e kolibri.img &> /dev/null; then
  sudo apt-get &> /dev/null
  echo -n 'Checking the internet connection: '
  if ping -c 1 8.8.8.8 &> /dev/null; then
    echo -e 'established!'
    install_the_archiver
    install_the_mounter
    install_the_wget
    install_the_image
  else
    echo -e 'not established!'
    exit 1
  fi
fi


## mounting the image.
export NO_AT_BRIDGE=1 # disables dbus is accessibility feature.
echo -n 'Mounting the image: '
gnome-disk-image-mounter --writable kolibri.img
export NO_AT_BRIDGE=0 # enables dbus is accessibility feature.
if test $? -eq 0; then
  echo -e 'successfully!'
else
  echo -e 'unsuccessfully!'
  exit 1
fi


## removing the derictory, if it present.
#if test -d ~/.kex/root/RD/1; then
#  rm -r ~/.kex/root/RD/1
#fi


## creating a link.
if ! test -L ~/.kex/root/RD/1; then
  echo -n 'Creating a link: '
  ln -s /media/${USER}/KOLIBRI/ ~/.kex/root/RD/1
  if test $? -eq 0; then
    echo -e 'successfully!'
  else
    echo -e 'unsuccessfully!'
    exit 1
  fi 
fi

exit
mount.sh надо бросить в папку .kex.
Выставить права на исполнение:
Код:
chmod u+x mount.sh
Запускать можно двойным кликом по скрипту, либо введя в терминал ./mount.sh.

_________________
The Glass is Always Half Full! :mrgreen:


Последний раз редактировалось JohnXenox Вс апр 15, 2018 3:38 am, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 1:19 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4548
tsdima
Да, но иногда файлы Колибри лежат на линукс разделах.

Есть такой баг в @open http://bugs.kolibri-n.org/?id=11
Он ждет своего ассемблерщика-линуксоида.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 1:57 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1380
Leency писал(а):
Есть такой баг в @open http://bugs.kolibri-n.org/?id=11
О регистрозависимости нужно договариваться на уровне системы.
Сейчас программы работают с файловой системой как с регистроНЕзависимой.
Потому что в FAT это так. И до относительно недавнего времени EXT вообще толком не поддерживался.


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 2:59 pm 
Не в сети

Зарегистрирован: Ср мар 26, 2008 12:44 pm
Сообщения: 189
Сделал в эмуляторе регистронезависимый поиск.

По поводу XFCE: JohnXenox, а если закомментировать в k_gui.c вызов SetNoBorder, то окна нормально растягиваются? Будет, конечно, лишний линуксовый заголовок, но мне интересно, от этого ли проблема.


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 5:06 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4548
> И до относительно недавнего времени EXT вообще толком не поддерживался.
Уже 100 лет как поддерживается, это запись недавно сделали, и то это было года 3 наверное назад.

Баг с @open есть баг. Пользователю пофиг о чем мы там договорились или нет, когда он в файловом менеджере не может открыть файл у него бомбит.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 5:16 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 18, 2017 2:29 am
Сообщения: 148
tsdima писал(а):
Сделал в эмуляторе регистронезависимый поиск.

По поводу XFCE: JohnXenox, а если закомментировать в k_gui.c вызов SetNoBorder, то окна нормально растягиваются? Будет, конечно, лишний линуксовый заголовок, но мне интересно, от этого ли проблема.
Скачал, закомментировал и скомпилировал свежий пакет.
Окна растягиваются и максимизируются только при взаимодействии с частями родной темы Linux (заголовок, боковые части).
При взаимодействии со скином Колибри, всё также, максимизация и растягивание не работает. При двойном клике по заголовку скина Колибри, окно опускается немного вниз, после чего, стрелка мыши оказывается на заголовке Linux.

Также заметил, что в окнах, где есть сколлбар, скроллинг колёсиком не работает. Или работает неправильно.

_________________
The Glass is Always Half Full! :mrgreen:


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 5:40 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1380
Leency писал(а):
Баг с @open есть баг. Пользователю пофиг о чем мы там договорились или нет, когда он в файловом менеджере не может открыть файл у него бомбит.
Вот я и говорю
0CodErr писал(а):
О регистрозависимости нужно договариваться на уровне системы.
Откуда твой @open может знать про CaseSensitive файловой системы раздела, с которым он работает?
Подумай для начала, как будут(и как должны) вести себя SysFn70.2 и SysFn70.3 в случае применения к файлам "MyFile" и "myfile", если искомый файл существует и если он не существует.


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 6:00 pm 
Не в сети

Зарегистрирован: Ср мар 26, 2008 12:44 pm
Сообщения: 189
JohnXenox писал(а):
Окна растягиваются и максимизируются только при взаимодействии с частями родной темы Linux

Ясно, будем копать хинты для XFCE. Хотя надежды мало.

JohnXenox писал(а):
При взаимодействии со скином Колибри, всё также, максимизация и растягивание не работает.

Я надеялся, что за изменение размера будет отвечать Linux. Не хотелось бы для разных оконных менеджеров свои костыли ставить.
А про двойной клик на заголовке - это я просмотрел, надо будет сделать максимизацию.

JohnXenox писал(а):
Также заметил, что в окнах, где есть сколлбар, скроллинг колёсиком не работает. Или работает неправильно.

Не работает, не сделано :)


Вернуться к началу
 Заголовок сообщения: Re: Эмулятор под Linux
СообщениеДобавлено: Пн апр 02, 2018 9:50 pm 
Не в сети

Зарегистрирован: Ср мар 26, 2008 12:44 pm
Сообщения: 189
Нашёл, что не устраивало fNav. Где-то в дебрях то-ли самого fNav, то-ли libimg, используется 68.20 (heap realloc), однако возвращаемый адрес игнорируется, полагаясь на то, что он не изменится. Понятно, что если размер блока уменьшился, то адрес может остаться тот-же. Но в описании этой функции не говорится, что адрес обязан остаться неизменным, если размер уменьшился. Даже если текущая реализация ядра и делает так.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 126 сообщений ]  На страницу Пред. 1 2 3 4 59 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB