|
|
|
@ -0,0 +1,371 @@
|
|
|
|
|
diff --git data/handbook-en.html data/handbook-en.html
|
|
|
|
|
index d1b78c5..1e414eb 100644
|
|
|
|
|
--- data/handbook-en.html
|
|
|
|
|
+++ data/handbook-en.html
|
|
|
|
|
@@ -62,7 +62,7 @@ pre {font-size:133% }
|
|
|
|
|
<p>Before installing, you may need to change the partitions on your hard disk. To install CLD, CLDG or CLDX, we recommend that you use the partition of at least 10 GB. More detailed hardware requirements can be found <a href="http://www.calculate-linux.org/main/en/hardware_requirements" class="external">here</a>. The swap partition (swap) will normally be twice the size of RAM. If the swap partition already exists, the system will use it. It is wise to have a separate partition for your personal files (/home). See more detailed recommendations on partitioning <a href="http://www.calculate-linux.org/main/en/disk_partitioning" class="external">here</a>.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p>The CLD distro uses <em>Partitionmanager</em> to change the disk partitioning, while CLDG and CLDX use <em>Gparted</em>. You can also partition the disk with the graphical installer, using the <em>cfdisk</em> tool. Note that CLS and CDS contain only the command line utilities: <em>fdisk</em> or <em>cfdisk</em>.</p>
|
|
|
|
|
+ <p>CLD, CLDG and CLDX distro use <em>Gparted</em> to change the disk partitioning. Note that CLS and CDS contain only the command line utilities: <em>fdisk</em>,<em>gdisk</em> or <em>cfdisk</em>.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<p>To view the list of all existing partitions, open the console as <em>root</em> and type:<br /><pre>
|
|
|
|
|
@@ -82,7 +82,7 @@ fdisk -l
|
|
|
|
|
<p><h2 id="Installation">Installation<a href="#Installation" class="wiki-anchor">¶</a></h2>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p>Since Calculate Linux 10.9, we use the <code>cl-install</code> utility for installation. A graphical front-end is provided for CLD, CLDG, CLDX and CLS versions: <code>cl-install-gui</code>. To run this program, click on the icon "Calculate Linux Install" on your desktop.</p>
|
|
|
|
|
+ <p>Since Calculate Linux 10.9, we use the <code>cl-install</code> utility for installation. A graphical front-end is provided for CLD, CLDG, CLDX and CLS versions: <code>cl-console-gui</code>. To run this program, click on the icon "Calculate Linux Install" on your desktop.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<p>To install the system on the second partition of your hard disk with <code>cl-install</code>, run the following in the terminal with <em>root</em> privileges:<br /><pre>
|
|
|
|
|
diff --git data/handbook-ru.html data/handbook-ru.html
|
|
|
|
|
index 16796db..27ad80f 100644
|
|
|
|
|
--- data/handbook-ru.html
|
|
|
|
|
+++ data/handbook-ru.html
|
|
|
|
|
@@ -1,4 +1,4 @@
|
|
|
|
|
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
|
|
|
|
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
|
|
|
|
<head>
|
|
|
|
|
<title>handbook</title>
|
|
|
|
|
@@ -15,9 +15,8 @@ a.wiki-anchor:hover { color: #aaa !important; text-decoration: none; }
|
|
|
|
|
h1:hover a.wiki-anchor, h2:hover a.wiki-anchor, h3:hover a.wiki-anchor { display: inline; color: #ddd; }
|
|
|
|
|
pre {font-size:133% }
|
|
|
|
|
</style>
|
|
|
|
|
-</head>
|
|
|
|
|
<body>
|
|
|
|
|
-<h1 id="Краткое-руководство-по-установке">Краткое руководство по установке<a href="#Краткое-руководство-по-установке" class="wiki-anchor">¶</a></h1>
|
|
|
|
|
+ <h1 id="Краткое-руководство-по-установке">Краткое руководство по установке<a href="#Краткое-руководство-по-установке" class="wiki-anchor">¶</a></h1>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h2 id="Благодарим-за-использование-Calculate-Linux">Благодарим за использование Calculate Linux!<a href="#Благодарим-за-использование-Calculate-Linux" class="wiki-anchor">¶</a></h2>
|
|
|
|
|
@@ -44,12 +43,15 @@ pre {font-size:133% }
|
|
|
|
|
<h2 id="Настройка-сети">Настройка сети<a href="#Настройка-сети" class="wiki-anchor">¶</a></h2>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p>Настройку сети в CLD, CLDG и CLDX выполняет <em>Networkmanager</em>. Программа имеет графический интерфейс, при помощи которого можно настроить как проводную, так и беспроводную сеть. При загрузке программа попытается настроить сетевой интерфейс и получить IP-адрес от DHCP-сервера. Доступ к программе можно получить, кликнув по иконке в правом верхнем углу экрана.</p>
|
|
|
|
|
+Настройка сети в Calculate Linux осуществляется с помощью сервера утилит Calculate. Как и все действия сервера утилит, настройку сети можно выполнить несколькими способами.
|
|
|
|
|
+ <ul>
|
|
|
|
|
+ <li>используя графический клиент;</li>
|
|
|
|
|
+ <li>используя консольный клиент;</li>
|
|
|
|
|
+ <li>используя сервер утилит.</li>
|
|
|
|
|
+ </ul>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p>Настройка сети в CLS, CDS и CSS осуществляется путем редактирования конфигурационного файла <code>/etc/conf.d/net</code>. Справку по настройке сети можно найти в файле <code>/usr/share/doc/openrc-0.6.x/net.example</code>. После изменения настроек нужно перезапустить сетевой интерфейс (как правило, eth0 для проводной сети):<br /><pre>
|
|
|
|
|
-/etc/init.d/net.eth0 restart
|
|
|
|
|
-</pre></p>
|
|
|
|
|
+ <p>Подробнее в разделе <a href="/main/ru/setup_network" class="wiki-page">Настройка сети</a>.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h2 id="Разбивка-диска">Разбивка диска<a href="#Разбивка-диска" class="wiki-anchor">¶</a></h2>
|
|
|
|
|
@@ -58,7 +60,7 @@ pre {font-size:133% }
|
|
|
|
|
<p>Перед установкой вам может понадобиться изменить разделы жесткого диска. Для установки CLD, CLDG и CLDX мы рекомендуем использовать раздел не менее 10 Гб. Более подробно аппаратные требования можно узнать <a href="http://www.calculate-linux.ru/main/ru/hardware_requirements" class="external">здесь</a>. Раздел подкачки (swap), как правило, выделяется вдвое большим размера оперативной памяти. Если раздел под swap уже существует, система будет использовать его. Полезно иметь отдельный раздел для личных файлов (<code>/home</code>). Наши рекомендации по разбиению диска описаны <a href="http://www.calculate-linux.ru/main/ru/disk_partitioning" class="external">здесь</a>.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p>В CLD для изменения разделов диска используется программа <em>Partitionmanager</em>, в CLDG и CLDX - <em>Gparted</em>. Вы также можете выполнить разбиение диска в графическом установщике, средствами утилиты <em>cfdisk</em>. В CDS, CSS и CLS входят только консольные утилиты: <em>fdisk</em> или <em>cfdisk</em>.</p>
|
|
|
|
|
+ <p>В CLD, CLDG и CLDX для изменения разделов диска используется программа <em>Gparted</em>. В CDS, CSS и CLS входят только консольные утилиты: <em>fdisk</em>,<em>gdisk</em> или <em>cfdisk</em>.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<p>Чтобы просмотреть список существующих разделов, откройте консоль с правами пользователя <em>root</em> и наберите:<br /><pre>
|
|
|
|
|
@@ -75,42 +77,29 @@ fdisk -l
|
|
|
|
|
<p>Вы также можете воспользоваться уже готовым разделом либо создать его из <em>Windows</em>. Чтобы правильно определить выбранный раздел в Linux, запомните очередность его расположения и размер. Как правило, диску C:\ соответствует sda1, диску D:\ - sda2.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p><h2 id="Установка">Установка<a href="#Установка" class="wiki-anchor">¶</a></h2>
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
- <p>Установка Calculate Linux 10.9 и выше выполняется программой <code>cl-install</code>. В дистрибутивах CLD, CLDG и CLDX есть графический установщик <code>cl-install-gui</code>. Программу можно запустить, кликнув по иконке "Установка Calculate Linux" на рабочем столе.</p>
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
- <p>Для установки утилитой <code>cl-install</code> во второй раздел жесткого диска, выполните из консоли с правами <em>root</em>:<br /><pre>
|
|
|
|
|
-cl-install -d /dev/sda2
|
|
|
|
|
-</pre></p>
|
|
|
|
|
+ <p><h2 id="Варианты-установки">Варианты установки<a href="#Варианты-установки" class="wiki-anchor">¶</a></h2>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-Список наиболее часто используемых параметров:
|
|
|
|
|
+Установить систему Calculate Linux вы можете одним из перечисленных способов:
|
|
|
|
|
<ul>
|
|
|
|
|
- <li><strong>--hostname HOSTNAME</strong> - установить короткое или полное имя хоста;</li>
|
|
|
|
|
- <li><strong>-l</strong> - язык системы, поддерживаются: ru_RU - русский, uk_UA - украинский, en_US - американский английский, bg_BG - болгарский, de_DE - немецкий, es_ES - испанский, it_IT - итальянский, pl_PL - польский, pt_BR - португальский и fr_FR - французский;</li>
|
|
|
|
|
- <li><strong>--mbr DEVICE</strong> - диск с главной загрузочной записью, значение 'off' отключает изменение.</li>
|
|
|
|
|
+ <li>графическим клиентом <a href="/main/ru/calculate-console-gui" class="wiki-page">cl-console-gui</a>;</li>
|
|
|
|
|
+ <li>консольным клиентом <a href="/main/ru/calculate-console" class="wiki-page">cl-console</a>;</li>
|
|
|
|
|
+ <li>напрямую сервером утилит <a href="/main/ru/calculate-core" class="wiki-page">cl-core</a>.</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p>Во время установки программа извлечёт полный образ системы (stage4) и выполнит первичную настройку с помощью шаблонов.</p></p>
|
|
|
|
|
+ <p>Система может быть установлена из squashfs-образа, если Вы загрузились с liveCD или USB Flash, либо из ISO-файла, размещенного в директории <code>/var/calculate/linux</code> или <code>/var/calculate/remote/linux</code>. Во втором случае Вы можете установить любую версию дистрибутива поддерживаемой архитектуры.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <h3 id="Установка-на-USB-Flash">Установка на USB-Flash<a href="#Установка-на-USB-Flash" class="wiki-anchor">¶</a></h3>
|
|
|
|
|
+ <p>Сервер утилит, консольный и графический клиенты входят в состав Calculate Linux, но могут быть установлены из оверлея Calculate в любом Gentoo-совместимом дистрибутиве.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p><em>Прежде чем приступить к установке, сделайте резервную копию своих данных на флешке.</em></p>
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
- <p>Для инсталляции системы на USB-Flash используется консольная утилита <code>cl-install</code>. Подключите флешку к вашему компьютеру. Для определения имени устройства вашей флешки выполните в консоли с правами <em>root</em>:<br /><pre>
|
|
|
|
|
-fdisk -l
|
|
|
|
|
-</pre></p>
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
- <p>Например, если ваш флеш-диск определился как устройство <code>/dev/sdb</code>, установка системы на него производится командой:<br /><pre>
|
|
|
|
|
-cl-install -d /dev/sdb1
|
|
|
|
|
-</pre></p>
|
|
|
|
|
+Подробное описание установки смотрите в соответствующих разделах:
|
|
|
|
|
+ <ul>
|
|
|
|
|
+ <li><a href="/main/ru/calculate_install" class="wiki-page">Установка на жёсткий диск</a>;</li>
|
|
|
|
|
+ <li><a href="/main/ru/calculate_install_flash" class="wiki-page">Установка на Flash</a>;</li>
|
|
|
|
|
+ <li><a href="/main/ru/calculate_install_pxe" class="wiki-page new">Установка PXE</a>.</li>
|
|
|
|
|
+ </ul></p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h2 id="Первый-запуск">Первый запуск<a href="#Первый-запуск" class="wiki-anchor">¶</a></h2>
|
|
|
|
|
@@ -152,7 +141,7 @@ emerge -uDNa world
|
|
|
|
|
<p>Если установка системы вызвала сложности или вы хотите поделиться своим впечатлением, зайдите на <em>IRC</em> канал <em>#calculate-ru</em> (сервер FreeNode) сообщества пользователей Calculate Linux. Для этого достаточно воспользоваться иконкой <em>Xchat</em> на вашем рабочем столе.</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- <p>Сайт проекта: <a class="external" href="http://www.calculate-linux.ru">http://www.calculate-linux.ru</a><br />Рассылка: <a class="external" href="http://www.calculate-linux.ru/main/ru/maillist">http://www.calculate-linux.ru/main/ru/maillist</a><br />IRC чат: <a class="external" href="http://www.calculate-linux.ru/irc">http://www.calculate-linux.ru/irc</a></p>
|
|
|
|
|
+ <p>Сайт проекта: <noindex><a class="external" href="http://www.calculate-linux.ru" ref="nofollow">http://www.calculate-linux.ru</a></noindex><br />Рассылка: <noindex><a class="external" href="http://www.calculate-linux.ru/main/ru/maillist" ref="nofollow">http://www.calculate-linux.ru/main/ru/maillist</a></noindex><br />IRC чат: <noindex><a class="external" href="http://www.calculate-linux.ru/irc" ref="nofollow">http://www.calculate-linux.ru/irc</a></noindex></p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<p><em>Приятной работы!<br />Команда разработчиков Calculate Linux.</em></p>
|
|
|
|
|
diff --git install/cl_install.py install/cl_install.py
|
|
|
|
|
index ce4c5f6..c8a69b3 100644
|
|
|
|
|
--- install/cl_install.py
|
|
|
|
|
+++ install/cl_install.py
|
|
|
|
|
@@ -744,7 +744,8 @@ class Install(color_print):
|
|
|
|
|
self.startTask(_("Preparing the system for reboot"))
|
|
|
|
|
self.prepareBoot(self.targetDistr)
|
|
|
|
|
self.endTask()
|
|
|
|
|
- if self.askConfirm(_("Would you like to reboot your computer "
|
|
|
|
|
+ if self.clVars.Get('os_install_pxe') == "off" and \
|
|
|
|
|
+ self.askConfirm(_("Would you like to reboot your computer "
|
|
|
|
|
"now to complete the installation?"),
|
|
|
|
|
default="no") == "yes":
|
|
|
|
|
os.system("/sbin/reboot")
|
|
|
|
|
diff --git install/cl_wsdl_install.py install/cl_wsdl_install.py
|
|
|
|
|
index c5e61bd..68eb984 100644
|
|
|
|
|
--- install/cl_wsdl_install.py
|
|
|
|
|
+++ install/cl_wsdl_install.py
|
|
|
|
|
@@ -75,6 +75,7 @@ class InstallInfo(CommonInfo):
|
|
|
|
|
os_install_x11_composite = Boolean
|
|
|
|
|
os_install_fb_resolution = String
|
|
|
|
|
os_install_grub_terminal = String
|
|
|
|
|
+ os_audio_default = String
|
|
|
|
|
|
|
|
|
|
cl_autopartition_device = Array(String)
|
|
|
|
|
cl_autopartition_scheme = Array(String)
|
|
|
|
|
@@ -141,6 +142,8 @@ class Wsdl:
|
|
|
|
|
normal=('cl_migrate_root_pwd','cl_migrate_data','cl_autologin'),
|
|
|
|
|
hide=('cl_migrate_data',),
|
|
|
|
|
brief=('cl_migrate_user',))
|
|
|
|
|
+ dv.addGroup(_("Audio"),
|
|
|
|
|
+ normal=('os_audio_default',))
|
|
|
|
|
dv.addGroup(_("Video"),
|
|
|
|
|
normal=('os_install_x11_video_drv','os_install_x11_composite',
|
|
|
|
|
'os_install_x11_resolution','os_install_fb_resolution',
|
|
|
|
|
@@ -399,3 +402,33 @@ class Wsdl:
|
|
|
|
|
@installCatchExcept
|
|
|
|
|
def setup_system_view (self, sid, params):
|
|
|
|
|
return commonView(self,sid,params,"setup_system")
|
|
|
|
|
+
|
|
|
|
|
+ def setup_audio_vars(self):
|
|
|
|
|
+ dv = cl_install.DataVarsInstall()
|
|
|
|
|
+ dv.importInstall()
|
|
|
|
|
+ dv.flIniFile()
|
|
|
|
|
+ dv.Set('cl_action','merge',True)
|
|
|
|
|
+ dv.Set('cl_merge_pkg',[None],True)
|
|
|
|
|
+ dv.Set('cl_merge_set',"on",True)
|
|
|
|
|
+ dv.Set('cl_setup','audio',True)
|
|
|
|
|
+ dv.addGroup(None,
|
|
|
|
|
+ normal=('os_audio_default',),
|
|
|
|
|
+ expert=('cl_templates_locate',"cl_dispatch_conf","cl_verbose_set"),
|
|
|
|
|
+ next_label=_("Save"))
|
|
|
|
|
+ return dv
|
|
|
|
|
+
|
|
|
|
|
+ @rpc(Integer, InstallInfo, _returns = Array(ReturnedMessage))
|
|
|
|
|
+ @core_method(category=__('Configuration'),title=__('Audio'),
|
|
|
|
|
+ image='audio-card',command="cl-setup-audio",
|
|
|
|
|
+ gui=True, rights=['setup'])
|
|
|
|
|
+ def setup_audio ( self, sid, info):
|
|
|
|
|
+ """
|
|
|
|
|
+ Setup locale
|
|
|
|
|
+ """
|
|
|
|
|
+ return self.callMethod(sid,info,logicClass=cl_install.Install,
|
|
|
|
|
+ method="setupSystem",method_name="setup_audio")
|
|
|
|
|
+
|
|
|
|
|
+ @rpc(Integer, ViewParams,_returns = ViewInfo)
|
|
|
|
|
+ @installCatchExcept
|
|
|
|
|
+ def setup_audio_view (self, sid, params):
|
|
|
|
|
+ return commonView(self,sid,params,"setup_audio")
|
|
|
|
|
diff --git install/variables/autopartition.py install/variables/autopartition.py
|
|
|
|
|
index 7c9c4da..52ca7a9 100644
|
|
|
|
|
--- install/variables/autopartition.py
|
|
|
|
|
+++ install/variables/autopartition.py
|
|
|
|
|
@@ -869,7 +869,7 @@ class VariableClAutopartitionDeviceSize(ReadonlyVariable):
|
|
|
|
|
_in=devices))
|
|
|
|
|
# TODO: remove set 10G
|
|
|
|
|
#return str(1024*1024*1024*10)
|
|
|
|
|
- return str(reduce(operator.add,sizeDevice))
|
|
|
|
|
+ return str(reduce(operator.add,sizeDevice,0))
|
|
|
|
|
|
|
|
|
|
class VariableClAutopartitionFreeSize(ReadonlyVariable):
|
|
|
|
|
"""
|
|
|
|
|
diff --git install/variables/disk.py install/variables/disk.py
|
|
|
|
|
index 639aa85..5988067 100644
|
|
|
|
|
--- install/variables/disk.py
|
|
|
|
|
+++ install/variables/disk.py
|
|
|
|
|
@@ -1680,6 +1680,8 @@ class VariableOsInstallMbr(LocationHelper,Variable):
|
|
|
|
|
if len(value) > 1:
|
|
|
|
|
raise VariableError(
|
|
|
|
|
_("For Flash install, you need only one disk"))
|
|
|
|
|
+ if self.Get('os_install_uefi_set') == 'on':
|
|
|
|
|
+ return
|
|
|
|
|
for mbrDisk in value:
|
|
|
|
|
if self.Get('cl_autopartition_set') == 'on':
|
|
|
|
|
tableOnBootDisk = self.Get('cl_autopartition_table')
|
|
|
|
|
diff --git install/variables/system.py install/variables/system.py
|
|
|
|
|
index 184f651..3b70237 100644
|
|
|
|
|
--- install/variables/system.py
|
|
|
|
|
+++ install/variables/system.py
|
|
|
|
|
@@ -19,7 +19,8 @@ import sys
|
|
|
|
|
import re
|
|
|
|
|
from os import path
|
|
|
|
|
from calculate.lib.datavars import Variable,VariableError,ReadonlyVariable, \
|
|
|
|
|
- TableVariable,PasswordError
|
|
|
|
|
+ TableVariable,PasswordError, \
|
|
|
|
|
+ ReadonlyTableVariable,FieldValue
|
|
|
|
|
from calculate.install.fs_manager import FileSystemManager
|
|
|
|
|
from calculate.lib.utils.files import (readFile,getProgPath,process,
|
|
|
|
|
readLinesFile)
|
|
|
|
|
@@ -509,13 +510,14 @@ class VariableClSetup(Variable):
|
|
|
|
|
value = ""
|
|
|
|
|
|
|
|
|
|
def choice(self):
|
|
|
|
|
- return ["network","locale","video","boot","users",""]
|
|
|
|
|
+ return ["audio","network","locale","video","boot","users",""]
|
|
|
|
|
|
|
|
|
|
def humanReadable(self):
|
|
|
|
|
mapType = {'network':_("network settings"),
|
|
|
|
|
'locale':_("localization and time options"),
|
|
|
|
|
'video':_("video settings"),
|
|
|
|
|
'boot':_("boot parameters"),
|
|
|
|
|
+ 'audio':_("audio parameters"),
|
|
|
|
|
'users':_("user settings") }
|
|
|
|
|
return mapType.get(self.Get(),"")
|
|
|
|
|
|
|
|
|
|
@@ -650,3 +652,95 @@ class VariableOsInstallGrubTerminal(Variable):
|
|
|
|
|
|
|
|
|
|
def choice(self):
|
|
|
|
|
return ['gfxterm','console']
|
|
|
|
|
+
|
|
|
|
|
+ def uncompatible(self):
|
|
|
|
|
+ """
|
|
|
|
|
+ Grub setting up unavailable for flash installation
|
|
|
|
|
+ """
|
|
|
|
|
+ if self.Get('os_install_root_type') == 'flash':
|
|
|
|
|
+ return _("Grub configuration unavailable for Flash install")
|
|
|
|
|
+ return ""
|
|
|
|
|
+
|
|
|
|
|
+class VariableOsAudioData(ReadonlyTableVariable):
|
|
|
|
|
+ """
|
|
|
|
|
+ Information about audio cards
|
|
|
|
|
+ """
|
|
|
|
|
+ source = ['os_audio_id',
|
|
|
|
|
+ 'os_audio_name']
|
|
|
|
|
+
|
|
|
|
|
+ def get(self,hr=False):
|
|
|
|
|
+ """LVM hash"""
|
|
|
|
|
+ aplay = getProgPath('/usr/bin/aplay')
|
|
|
|
|
+ if not aplay:
|
|
|
|
|
+ return [[]]
|
|
|
|
|
+ entry = re.compile('^card (\d+): ([^,]+)')
|
|
|
|
|
+ return tuple(map(lambda x:x.groups(),
|
|
|
|
|
+ filter(None,map(entry.search,
|
|
|
|
|
+ process(aplay,'-l')))))
|
|
|
|
|
+
|
|
|
|
|
+ setValue = Variable.setValue
|
|
|
|
|
+
|
|
|
|
|
+class VariableOsAudioId(FieldValue,ReadonlyVariable):
|
|
|
|
|
+ """
|
|
|
|
|
+ Order Id of audio card
|
|
|
|
|
+ """
|
|
|
|
|
+ type = "list"
|
|
|
|
|
+ source_variable = "os_audio_data"
|
|
|
|
|
+ column = 0
|
|
|
|
|
+
|
|
|
|
|
+class VariableOsAudioName(FieldValue,ReadonlyVariable):
|
|
|
|
|
+ """
|
|
|
|
|
+ Name of audio card
|
|
|
|
|
+ """
|
|
|
|
|
+ type = "list"
|
|
|
|
|
+ source_variable = "os_audio_data"
|
|
|
|
|
+ column = 1
|
|
|
|
|
+
|
|
|
|
|
+class VariableOsAudioDefaultSet(ReadonlyVariable):
|
|
|
|
|
+ """
|
|
|
|
|
+ Force write in config 0
|
|
|
|
|
+ """
|
|
|
|
|
+ type = "bool"
|
|
|
|
|
+
|
|
|
|
|
+ def get(self):
|
|
|
|
|
+ res = self.Select('os_audio_id',where='os_audio_name',
|
|
|
|
|
+ notlike='HDMI',limit=1)
|
|
|
|
|
+ audioDefault = self.Get('os_audio_default')
|
|
|
|
|
+ if audioDefault != '0' or \
|
|
|
|
|
+ res and res != "0" and audioDefault == '0':
|
|
|
|
|
+ return 'on'
|
|
|
|
|
+ return 'off'
|
|
|
|
|
+
|
|
|
|
|
+class VariableOsAudioDefault(Variable):
|
|
|
|
|
+ """
|
|
|
|
|
+ Current default audio card
|
|
|
|
|
+ """
|
|
|
|
|
+ type = "choice"
|
|
|
|
|
+ opt = ['--audio']
|
|
|
|
|
+
|
|
|
|
|
+ def init(self):
|
|
|
|
|
+ self.label = _("Default audio card")
|
|
|
|
|
+ self.help = _("set default audio card")
|
|
|
|
|
+
|
|
|
|
|
+ def get(self):
|
|
|
|
|
+ defaultCardRe = re.compile('defaults.ctl.card\s+(\d+)')
|
|
|
|
|
+ entry = defaultCardRe.search(readFile('/etc/asound.conf'))
|
|
|
|
|
+ if entry and entry.groups()[0] in self.Get('os_audio_id'):
|
|
|
|
|
+ return entry.groups()[0]
|
|
|
|
|
+ res = self.Select('os_audio_id',where='os_audio_name',
|
|
|
|
|
+ notlike='HDMI',limit=1)
|
|
|
|
|
+ return res or '0'
|
|
|
|
|
+
|
|
|
|
|
+ def choice(self):
|
|
|
|
|
+ data = self.Get('os_audio_data')
|
|
|
|
|
+ if data and data[0]:
|
|
|
|
|
+ return self.Get('os_audio_data')
|
|
|
|
|
+ return []
|
|
|
|
|
+
|
|
|
|
|
+ def uncompatible(self):
|
|
|
|
|
+ """
|
|
|
|
|
+ Audio setting up unavailable for flash installation
|
|
|
|
|
+ """
|
|
|
|
|
+ if self.Get('os_install_root_type') == 'flash':
|
|
|
|
|
+ return _("Audio configuration unavailable for Flash install")
|
|
|
|
|
+ return ""
|
|
|
|
|
diff --git setup.py setup.py
|
|
|
|
|
index 2b1c339..d99772d 100755
|
|
|
|
|
--- setup.py
|
|
|
|
|
+++ setup.py
|
|
|
|
|
@@ -169,7 +169,7 @@ class build( distutils.command.build.build ) :
|
|
|
|
|
|
|
|
|
|
setup(
|
|
|
|
|
name = 'calculate-install',
|
|
|
|
|
- version = "3.0.2",
|
|
|
|
|
+ version = "3.1.5",
|
|
|
|
|
description = "Calculate Linux installer",
|
|
|
|
|
author = "Calculate Ltd.",
|
|
|
|
|
author_email = "support@calculate.ru",
|