Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Projets publics
Ravada-Mirror
Commits
6aeecf5a
Commit
6aeecf5a
authored
Sep 20, 2021
by
Francesc Guasch
Browse files
Merge branch 'main' into refactor/grants2
parents
df7cbd9c
c5fdd43f
Changes
15
Hide whitespace changes
Inline
Side-by-side
CHANGELOG.md
View file @
6aeecf5a
...
...
@@ -4,7 +4,19 @@
-
Machine schedule reservation [
\#
1337]
-
Manage nodes and networks settings [
\#
1305]
-
User management part in ravada [
\#
1500]
-
Manage LDAP groups
-
Limit to start virtual machines [
\#
1490]
-
Add access filter to a machine with LDAP groups [
\#
1488]
-
Debian 11 (Bullesye) ISO support [
\#
1580]
**Refactor**
-
Confusing button placement in ports form [
\#
1469]
-
Clones number sequence coherency [
\#
1454]
-
Responsive grants form
**Bugfixes**
-
Linux Mint ISO Download fails [
\#
1576]
-
Machine in a node returns to KVMlocalhost when a machine option is modified [
\#
1440]
deb/debianize.pl
View file @
6aeecf5a
...
...
@@ -18,6 +18,7 @@ my $DEBIAN = "DEBIAN";
my
%COPY_RELEASES
=
(
'
ubuntu-19.04
'
=>
['
ubuntu-18.10
','
ubuntu-19.10
']
,'
debian-10
'
=>
['
debian-11
']
);
my
%DIR
=
(
templates
=>
'
/usr/share/ravada
'
...
...
lib/Ravada.pm
View file @
6aeecf5a
...
...
@@ -567,7 +567,7 @@ sub _update_isos {
,
debian_buster_64
=>
{
name
=>
'
Debian Buster 64 bits
'
,
description
=>
'
Debian 10 Buster 64 bits (XFCE desktop)
'
,
url
=>
'
https://cdimage.debian.org/
debian-cd
/^10\..*\d$/amd64/iso-cd/
'
,
url
=>
'
https://cdimage.debian.org/
cdimage/archive
/^10\..*\d$/amd64/iso-cd/
'
,
file_re
=>
'
debian-10.[\d\.]+-amd64-xfce-CD-1.iso
'
,
md5_url
=>
'
$url/MD5SUMS
'
,
xml
=>
'
jessie-amd64.xml
'
...
...
@@ -577,13 +577,34 @@ sub _update_isos {
,
debian_buster_32
=>
{
name
=>
'
Debian Buster 32 bits
'
,
description
=>
'
Debian 10 Buster 32 bits (XFCE desktop)
'
,
url
=>
'
https://cdimage.debian.org/
debian-cd
/^10\..*\d$/i386/iso-cd/
'
,
url
=>
'
https://cdimage.debian.org/
cdimage/archive
/^10\..*\d$/i386/iso-cd/
'
,
file_re
=>
'
debian-10.[\d\.]+-i386-(netinst|xfce-CD-1).iso
'
,
md5_url
=>
'
$url/MD5SUMS
'
,
xml
=>
'
jessie-i386.xml
'
,
xml_volume
=>
'
jessie-volume.xml
'
,
min_disk_size
=>
'
10
'
}
,
debian_bullseye_64
=>
{
name
=>
'
Debian Bullseye 64 bits
'
,
description
=>
'
Debian 11 Bullseye 64 bits (netinst)
'
,
url
=>
'
https://cdimage.debian.org/debian-cd/^11\..*\d$/amd64/iso-cd/
'
,
file_re
=>
'
debian-11.[\d\.]+-amd64-netinst.iso
'
,
sha256_url
=>
'
$url/SHA256SUMS
'
,
xml
=>
'
jessie-amd64.xml
'
,
xml_volume
=>
'
jessie-volume.xml
'
,
min_disk_size
=>
'
10
'
}
,
debian_bullseye_32
=>
{
name
=>
'
Debian Bullseye 32 bits
'
,
description
=>
'
Debian 10 Bullseye 32 bits (netinst)
'
,
url
=>
'
https://cdimage.debian.org/debian-cd/^11\..*\d$/i386/iso-cd/
'
,
file_re
=>
'
debian-11.[\d\.]+-i386-netinst.iso
'
,
sha256_url
=>
'
$url/SHA256SUMS
'
,
xml
=>
'
jessie-i386.xml
'
,
xml_volume
=>
'
jessie-volume.xml
'
,
min_disk_size
=>
'
10
'
}
,
kali_64
=>
{
name
=>
'
Kali Linux 2020
'
,
description
=>
'
Kali Linux 2020 64 Bits
'
...
...
@@ -663,9 +684,29 @@ sub _update_isos {
);
$self
->
_scheduled_fedora_releases
(
\
%data
)
if
$
0
!~
/\.t$/
;
$self
->
_update_table
(
$table
,
$field
,
\
%data
);
$self
->
_update_table_isos_url
(
\
%data
);
}
sub
_update_table_isos_url
($self, $data) {
my
$sth
=
$CONNECTOR
->
dbh
->
prepare
("
SELECT * FROM iso_images WHERE name=?
");
for
my
$release
(
sort
keys
%$data
)
{
my
$entry
=
$data
->
{
$release
};
$sth
->
execute
(
$entry
->
{
name
});
my
$row
=
$sth
->
fetchrow_hashref
();
for
my
$field
(
keys
%$entry
)
{
next
if
defined
$row
->
{
$field
}
&&
$row
->
{
$field
}
eq
$entry
->
{
$field
};
my
$sth_update
=
$CONNECTOR
->
dbh
->
prepare
(
"
UPDATE iso_images SET
$field
=?
"
.
"
WHERE id=?
"
);
$sth_update
->
execute
(
$entry
->
{
$field
},
$row
->
{
id
});
warn
("
INFO: updating
$release
$field
'
"
.
(
$row
->
{
$field
}
or
'')
.
"
' -> '
$entry
->{
$field
}'
\n
")
if
!
$FIRST_TIME_RUN
&&
$
0
!~
/\.t$/
;
}
}
}
sub
_scheduled_fedora_releases
($self,$data) {
return
if
!
exists
$VALID_VM
{
KVM
}
||!
$VALID_VM
{
KVM
}
||
$>
;
...
...
@@ -1175,6 +1216,7 @@ sub _add_indexes_generic($self) {
"
unique(id_domain,n_order)
"
,"
unique(id_domain,driver)
"
,"
unique(id_vm,port)
"
,"
index(id_domain)
"
]
,
domain_ports
=>
[
"
unique (id_domain,internal_port):domain_port
"
...
...
@@ -1183,6 +1225,7 @@ sub _add_indexes_generic($self) {
]
,
group_access
=>
[
"
unique (id_domain,name)
"
,"
index(id_domain)
"
]
,
requests
=>
[
"
index(status,at_time)
"
...
...
@@ -1213,17 +1256,23 @@ sub _add_indexes_generic($self) {
]
,
booking_entry_ldap_groups
=>
[
"
index(id_booking_entry,ldap_group)
"
,"
index(id_booking_entry)
"
]
,
booking_entry_users
=>
[
"
index(id_booking_entry,id_user)
"
,"
index(id_booking_entry)
"
,"
index(id_user)
"
]
,
booking_entry_bases
=>
[
"
index(id_booking_entry,id_base)
"
,"
index(id_base)
"
,"
index(id_booking_entry)
"
]
,
volumes
=>
[
'
UNIQUE (id_domain,name):id_domain
',
'
UNIQUE (id_domain,n_order):id_domain2
'
"
index(id_domain)
"
,'
UNIQUE (id_domain,name):id_domain_name
'
,'
UNIQUE (id_domain,n_order):id_domain2
'
]
,
vms
=>
[
...
...
@@ -3109,14 +3158,17 @@ sub process_requests {
next
if
$request_type
ne
'
all
'
&&
$req
->
type
ne
$request_type
;
next
if
$duplicated
{
$id_request
}
++
;
next
if
$duplicated
{
"
id_req.
$id_request
"
}
++
;
next
if
$req
->
command
!~
/shutdown/i
&&
$self
->
_domain_working
(
$id_domain
,
$id_request
);
my
$domain
=
'';
$domain
=
$id_domain
if
$id_domain
;
$domain
.=
(
$req
->
defined_arg
('
name
')
or
'');
next
if
$duplicated
{
$req
->
command
.
"
:
$domain
"}
++
;
next
if
$domain
&&
$duplicated
{
$domain
};
my
$id_base
=
$req
->
defined_arg
('
id_base
');
next
if
$id_base
&&
$duplicated
{
$id_base
};
$duplicated
{"
domain.
$domain
"}
++
;
push
@reqs
,(
$req
);
}
$sth
->
finish
;
...
...
@@ -3279,6 +3331,7 @@ sub _kill_stale_process($self) {
.
"
WHERE start_time<?
"
.
"
AND ( command = 'refresh_vms' or command = 'screenshot' or command = 'set_time'
"
.
"
OR command = 'open_exposed_ports' OR command='remove'
"
.
"
OR command = 'refresh_machine_ports'
"
.
"
)
"
.
"
AND status <> 'done'
"
.
"
AND start_time IS NOT NULL
"
...
...
@@ -4442,7 +4495,7 @@ sub _cmd_refresh_machine($self, $request) {
$domain
->
client_status
(
1
)
if
$is_active
;
Ravada::
Request
->
refresh_machine_ports
(
id_domain
=>
$domain
->
id
,
uid
=>
$user
->
id
,
retry
=>
20
)
,
timeout
=>
60
,
retry
=>
20
)
if
$is_active
&&
$domain
->
ip
;
}
...
...
@@ -4841,7 +4894,11 @@ sub _check_duplicated_iptable($self, $request = undef ) {
my
$rule
=
join
("
",
map
{
$_
.
"
"
.
$args
{
$_
}
}
sort
keys
%args
);
if
(
$dupe
{
$rule
})
{
warn
"
clean duplicated iptables rule
"
.
Dumper
(
$line
);
my
%args2
;
while
(
my
(
$key
,
$value
)
=
each
%args
)
{
$args2
{"
-
$key
"}
=
$value
;
}
warn
"
clean duplicated iptables rule
"
.
join
("
",
%args2
)
.
"
\n
";
$self
->
_delete_iptables_rule
(
$vm
,'
filter
',
\
%args
);
}
$dupe
{
$rule
}
++
;
...
...
lib/Ravada/Auth/SQL.pm
View file @
6aeecf5a
...
...
@@ -878,10 +878,12 @@ sub grant($self,$user,$permission,$value=1) {
.
Dumper
(
\
@perms
);
}
if
(
$value
eq
'
false
'
||
!
$value
)
{
$value
=
0
;
}
else
{
$value
=
1
;
if
(
$self
->
grant_type
(
$permission
)
eq
'
boolean
'
)
{
if
(
$value
eq
'
false
'
||
!
$value
)
{
$value
=
0
;
}
else
{
$value
=
1
;
}
}
return
0
if
!
$value
&&
!
$user
->
can_do
(
$permission
);
...
...
@@ -955,6 +957,7 @@ sub list_all_permissions($self) {
}
sub
grant_type
($self, $permission) {
return
'
boolean
'
if
!
exists
$self
->
{
_grant_type
}
->
{
$permission
};
return
$self
->
{
_grant_type
}
->
{
$permission
};
}
...
...
lib/Ravada/I18N/tr.po
View file @
6aeecf5a
...
...
@@ -7,8 +7,8 @@ msgstr ""
"Project-Id-Version: 0.1.0-alpha\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-01-03 10:12+0300\n"
"PO-Revision-Date: 2021-0
5-26 10:57
+0000\n"
"Last-Translator:
Barış Güvenkaya
<
b
gu
venkaya@tutanota.de
>\n"
"PO-Revision-Date: 2021-0
8-17 21:34
+0000\n"
"Last-Translator:
Oğuz Ersen
<
o
gu
zersen@protonmail.com
>\n"
"Language-Team: Turkish <https://hosted.weblate.org/projects/ravada/"
"translation/tr/>\n"
"Language: tr\n"
...
...
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.
7
-dev\n"
"X-Generator: Weblate 4.
8
-dev\n"
msgid "Ravada broker"
msgstr "Ravada Aracı"
...
...
@@ -58,7 +58,7 @@ msgid "Log Out"
msgstr "Oturumu Kapat"
msgid "Available Machines"
msgstr "
Hazı
r Makineler"
msgstr "
Kullanılabili
r Makineler"
msgid "Help"
msgstr "Yardım"
...
...
@@ -79,13 +79,13 @@ msgid "New Machine"
msgstr "Yeni Makine"
msgid "I want to change my password"
msgstr "
Şifremi
değiştirmek istiyorum"
msgstr "
Parolamı
değiştirmek istiyorum"
msgid "I want to change my language"
msgstr "
Lisanımı
değiştirmek istiyorum"
msgstr "
Dilimi
değiştirmek istiyorum"
msgid "Language:"
msgstr "
Lisan
"
msgstr "
Dil:
"
msgid "English"
msgstr "İngilizce"
...
...
@@ -118,10 +118,10 @@ msgid "German"
msgstr "Almanca"
msgid "New Password:"
msgstr "Yeni
Şifre
"
msgstr "Yeni
Parola:
"
msgid "Confirm Password:"
msgstr "
Şifreyi Onay
la"
msgstr "
Parolayı Doğru
la
:
"
msgid "Submit"
msgstr "Gönder"
...
...
@@ -130,16 +130,16 @@ msgid "Your language has been changed successfully"
msgstr "Diliniz başarılı bir şekilde değiştirildi"
msgid "Your password has been changed successfully"
msgstr "
Şifreni
z başarılı bir şekilde değiştrildi"
msgstr "
Parolanı
z başarılı bir şekilde değişt
i
rildi"
msgid "Password is too short"
msgstr "
Şifre
çok kısa"
msgstr "
Parola
çok kısa"
msgid "Password fields do not match"
msgstr "
Şifre
alanları eşleşmiyor"
msgstr "
Parola
alanları eşleşmiyor"
msgid "Some of the password fields are empty"
msgstr "
Şifre
alanlarından bazıları boş"
msgstr "
Parola
alanlarından bazıları boş"
msgid "Status"
msgstr "Durum"
...
...
@@ -190,7 +190,7 @@ msgid "Mark as read"
msgstr "Okundu olarak işaretle"
msgid "Mark as unread"
msgstr "Okunma
mış
olarak işaretle"
msgstr "Okunma
dı
olarak işaretle"
msgid "No messages to show"
msgstr "Gösterilecek mesaj yok"
...
...
@@ -223,7 +223,7 @@ msgid "Remove base"
msgstr "Tabanı kaldır"
msgid "Restore"
msgstr "
Yeniden Y
ükle"
msgstr "
Geri y
ükle"
msgid "Hibernate"
msgstr "Hazırda beklet"
...
...
@@ -244,7 +244,7 @@ msgid "Machine settings"
msgstr "Makine ayarları"
msgid "Cannot remove base, machine has clones"
msgstr "Taban kaldırılamıyor, makinede klonlar
mevcut
"
msgstr "Taban kaldırılamıyor, makinede klonlar
var
"
msgid "show clones"
msgstr "klonları göster"
...
...
@@ -253,19 +253,19 @@ msgid "hide clones"
msgstr "klonları gizle"
msgid "For Spice redirection you will need to install"
msgstr "Spice yönlendirmesi için
yüklemeni
z gerekecek"
msgstr "Spice yönlendirmesi için
kurmanı
z gerekecek"
msgid "in your computer."
msgstr "bilgisayarınızda"
msgstr "bilgisayarınızda
.
"
msgid "Search in your distro, e.g. in Debian/Ubuntu with"
msgstr "Dağıtımınızda arayın, örneğin Debian/Ubuntu"
msgid "You will need to install"
msgstr "
Yüklemeni
z gerekecek"
msgstr "
Kurmanı
z gerekecek"
msgid "and USB drivers ("
msgstr "ve USB sürücüleri("
msgstr "ve USB sürücüleri
("
msgid ""
"Be aware that in Windows, Spice redirection is not automatic. It is "
...
...
@@ -285,7 +285,7 @@ msgstr ""
"olarak kaydedin, ardından dosyayı çalıştırın."
msgid "Login"
msgstr "
Giriş
"
msgstr "
Oturum Aç
"
msgid "Welcome"
msgstr "Hoş Geldiniz"
...
...
@@ -303,40 +303,40 @@ msgid "User"
msgstr "Kullanıcı"
msgid "Password"
msgstr "
Şifre
"
msgstr "
Parola
"
msgid "Start session"
msgstr "
o
turumu başlat"
msgstr "
O
turumu başlat
\n
"
msgid "bits) in your computer."
msgstr "bit) bilgisayarınızda"
msgstr "bit) bilgisayarınızda
.
"
msgid "Permissions"
msgstr "İzinler"
msgid "can change the settings of owned virtual machines."
msgstr "
Kendi
sanal makinelerin ayarlarını değiştirebilir."
msgstr "
sahip olunan
sanal makinelerin ayarlarını değiştirebilir."
msgid "can change the settings of any virtual machines."
msgstr "
H
erhangi bir sanal makinenin ayarlarını değiştirebilir."
msgstr "
h
erhangi bir sanal makinenin ayarlarını değiştirebilir."
msgid "can change the settings of any virtual machines "
msgstr "Herhangi bir sanal makinenin ayarlarını değiştirebilir"
msgid "cloned from one base owned by the user."
msgstr "sahip ol
unan
bir tabandan k
lonlanmış
."
msgstr "
kullanıcının
sahip ol
duğu
bir tabandan k
opyalandı
."
msgid "can clone public virtual machines."
msgstr "genel sanal makineleri klonlayabilir."
msgid "can clone any virtual machine."
msgstr "herhangi bir sanal makineyi klonlayabilir"
msgstr "herhangi bir sanal makineyi klonlayabilir
.
"
msgid "can create bases."
msgstr "tabanlar oluşturabilir."
msgid "can create virtual machines."
msgstr "sanal makineler oluşturulabilir"
msgstr "sanal makineler oluşturulabilir
.
"
msgid "can grant permissions to other users"
msgstr "diğer kullanıcılara izin verebilir"
...
...
@@ -346,36 +346,36 @@ msgstr "herhangi bir sanal makineyi hazırda bekletebilir."
msgid "can hibernate clones from virtual machines owned by the user."
msgstr ""
"
Klonları,
kullanıcının sahip olduğu sanal makinelerden hazırda b
ıraka
bilir."
"kullanıcının sahip olduğu sanal makinelerden
klonları
hazırda b
eklete
bilir."
msgid "can hibernate any clone."
msgstr "herhangi bir klonu hazırda bekletebilir."
msgid "can remove any virtual machines owned by the user."
msgstr "
K
ullanıcının sahip olduğu herhangi bir sanal makineyi
sile
bilir."
msgstr "
k
ullanıcının sahip olduğu herhangi bir sanal makineyi
kaldıra
bilir."
msgid "can remove any virtual machine."
msgstr "herhangi bir sanal makineyi
sile
bilir."
msgstr "herhangi bir sanal makineyi
kaldıra
bilir."
msgid "can remove clones from virtual machines owned by the user."
msgstr "
K
ullanıcının sahip olduğu sanal makinelerden klonları
sile
bilir."
msgstr "
k
ullanıcının sahip olduğu sanal makinelerden klonları
kaldıra
bilir."
msgid "can remove any clone."
msgstr "
H
erhangi bir klonu kaldırabilir."
msgstr "
h
erhangi bir klonu kaldırabilir."
msgid "can take a screenshot of any virtual machine owned by the user."
msgstr ""
"
K
ullanıcının sahip olduğu herhangi bir sanal makinenin ekran görüntüsünü "
"
k
ullanıcının sahip olduğu herhangi bir sanal makinenin ekran görüntüsünü "
"alabilir."
msgid "can take a screenshot of any virtual machine."
msgstr "
H
erhangi bir sanal makinenin ekran görüntüsünü alabilir."
msgstr "
h
erhangi bir sanal makinenin ekran görüntüsünü alabilir."
msgid "can shutdown any virtual machine."
msgstr "
H
erhangi bir sanal makineyi kapatabilir."
msgstr "
h
erhangi bir sanal makineyi kapatabilir."
msgid "can shutdown clones from virtual machines owned by the user."
msgstr "
Klonları,
kullanıcının sahip olduğu sanal makinelerden kapatabilir."
msgstr "kullanıcının sahip olduğu sanal makinelerden
klonları
kapatabilir."
msgid "Submit Query"
msgstr "Sorguyu Gönder"
...
...
@@ -384,7 +384,7 @@ msgid "From Template"
msgstr "Şablondan"
msgid "From Machine"
msgstr "
m
akinesinden"
msgstr "
M
akinesinden"
msgid "Backend"
msgstr "Arka uç"
...
...
@@ -396,8 +396,8 @@ msgid ""
"This ISO image has not been downloaded yet. It may take some minutes, even "
"hours until the file is fetched from the Internet."
msgstr ""
"Bu ISO
imaj
ı henüz indirilmedi. Dosyanın indirilmesi birkaç
dakika, hatta
"
"saatler sürebilir."
"Bu ISO
kalıb
ı henüz indirilmedi. Dosyanın
internetten
indirilmesi birkaç "
"
dakika, hatta
saatler sürebilir."
msgid "Download now"
msgstr "Şimdi indir"
...
...
@@ -427,10 +427,10 @@ msgid "Backend selection is required."
msgstr "Arka uç seçimi gerekli."
msgid "ISO image selection is required."
msgstr "ISO
imaj
ı seçimi gerekli."
msgstr "ISO
kalıb
ı seçimi gerekli."
msgid "Template selection is required."
msgstr "Şablon seçimi gerekli
dir
."
msgstr "Şablon seçimi gerekli."
msgid "A machine with that name already exists."
msgstr "Bu ada sahip bir makine zaten var."
...
...
@@ -449,29 +449,29 @@ msgid ""
"can change the settings of all virtual machines cloned from one base owned "
"by the user."
msgstr ""
"
Klonlanan tüm sanal makinelerin ayarlarını kullanıcının sahip olduğu tek bir
"
"
tabandan
değiştirebilir."
"
kullanıcının sahip olduğu bir tabandan klonlanan tüm sanal makinelerin
"
"
ayarlarını
değiştirebilir."
msgid "monitoring"
msgstr "
İ
zleme"
msgstr "
i
zleme"
msgid "Are you sure you want to remove the Base of"
msgstr "Tabanı
çıka
rmak istediğiniz
e
emin misiniz
?
"
msgstr "Tabanı
nı kaldı
rmak istediğiniz
den
emin misiniz"
msgid "Are you sure you want to prepare the Base of"
msgstr "Tabanı hazırlamak istediğinden emin misin
?
"
msgstr "Tabanı
nı
hazırlamak istediğin
iz
den emin misin
iz
"
msgid "Are you sure you want to change the Public state of"
msgstr "Genel durumunu değiştirmek istediğiniz
e
emin misiniz
?
"
msgstr "Genel durumunu değiştirmek istediğiniz
den
emin misiniz"
msgid "Search"
msgstr "Ara
ma
"
msgstr "Ara"
msgid "There are no public bases available in this system."
msgstr "Bu sistemde
ortak bir
taban yok."
msgstr "Bu sistemde
kullanılabilir genel
taban yok."
msgid "There are no machines available in this system."
msgstr "Bu sistemde
hiç
makine yok."
msgstr "Bu sistemde
kullanılabilir
makine yok."
msgid "Create one."
msgstr "Bir tane oluştur."
...
...
@@ -501,7 +501,7 @@ msgid "It may take a couple of minutes."
msgstr "Birkaç dakika sürebilir."
msgid "Hybernating ..."
msgstr "Hazırda beklet
me moduna geç
iliyor…"
msgstr "Hazırda bekletiliyor…"
msgid "Description"
msgstr "Açıklama"
...
...
@@ -529,7 +529,7 @@ msgstr "Tehlikeli Alan"
msgid ""
"Once you delete the machine, there is no going back. Please be certain."
msgstr "Makineyi sildikten sonra geri dönüş
olmaz
. Lütfen emin ol."
msgstr "Makineyi sildikten sonra geri dönüş
yoktur
. Lütfen emin ol
un
."
msgid "Danger"
msgstr "Tehlike"
...
...
@@ -541,7 +541,7 @@ msgid "This action can't be undone"
msgstr "Bu işlem geri alınamaz"
msgid "Are you sure ?"
msgstr "Emin misin?"
msgstr "Emin misin
iz
?"
msgid "Yes, remove"
msgstr "Evet, kaldır"
...
...
@@ -550,19 +550,19 @@ msgid "Virtual Machine"
msgstr "Sanal Makine"
msgid "removed"
msgstr "
silindi
"
msgstr "
kaldırıldı
"
msgid "This will remove all the"
msgstr "Hepsi kaldırılacak"
msgid "clones of the machine"
msgstr "
M
akinenin klonları"
msgstr "
m
akinenin klonları"
msgid "Yes, remove all the clones"
msgstr "Evet, tüm klonları kaldır"
msgid "This virtual machine can't be removed because it has"
msgstr "Bu sanal makine kaldırılamıyor
.
çünkü
makine ...
"
msgstr "Bu sanal makine kaldırılamıyor çünkü"
msgid "clones"
msgstr "klonlar"
...
...
@@ -574,13 +574,13 @@ msgid "This machine has not Graphics parameters!"
msgstr "Bu makine Grafik parametrelerine sahip değil!"
msgid "recommended"
msgstr "
öner
ilen"
msgstr "
tavsiye ed
ilen"
msgid "to"
msgstr "karşı"
msgid "Changing Public State"
msgstr "Genel Durumu
d
eğiştir
me
"
msgstr "Genel Durumu
n D
eğiştir
ilmesi
"
msgid "Changing Base State"
msgstr "Temel Durumun Değiştirilmesi"
...
...
@@ -592,13 +592,13 @@ msgid "Grants"
msgstr "İzinler"
msgid "public"
msgstr "h
alka
açık"
msgstr "h
erkese
açık"
msgid "New Base"
msgstr "Yeni Taban"
msgid "Version"
msgstr "
Versiyon
"
msgstr "
Sürüm
"
msgid "Authors"
msgstr "Yazarlar"
...
...
@@ -619,7 +619,7 @@ msgid "License"
msgstr "Lisans"
msgid "Machine locked by"
msgstr "Makine
...
tarafından kilitlendi"
msgstr "Makine
şunun
tarafından kilitlendi"
msgid "This Machine is a base"
msgstr "Bu makine bir taban"
...
...
@@ -628,7 +628,7 @@ msgid "Cloned"
msgstr "Klonlandı"
msgid "is admin"
msgstr "
admin
"
msgstr "
yönetici
"
msgid "Add new user"
msgstr "Yeni kullanıcı ekle "
...
...
@@ -637,19 +637,19 @@ msgid "Register"
msgstr "Kaydet"
msgid "Current Password:"
msgstr "
Mevcut Şifre
:"
msgstr "
Geçerli Parola
:"
msgid "For more information, check"
msgstr "Daha fazla bilgi için
kontrol edi
n"
msgstr "Daha fazla bilgi için
bakı
n"
msgid "the Windows Clients documentation"
msgstr "Windows İstemcileri belgeleri"
msgid "It is programmed in"
msgstr "Programlan
mıştır
"
msgstr "Programlan
dı
"
msgid "with perl framework"
msgstr "perl ç
atılı
"
msgstr "perl ç
erçevesi ile
"
msgid "and"
msgstr "ve"
...
...
@@ -661,7 +661,7 @@ msgid "MB available"
msgstr "MB kullanılabilir"
msgid "The machine will shutdown after these minutes"
msgstr "Makine şu dakika
lar
dan sonra kapanacak"
msgstr "Makine şu dakikadan sonra kapanacak"
msgid "Cancel"
msgstr "İptal"
...
...
@@ -670,13 +670,13 @@ msgid "Please enter the following information to create the account"
msgstr "Hesap oluşturmak için lütfen aşağıdaki bilgileri girin"
msgid "Enter Username"
msgstr "Kullanıcı
a
dı
nı g
ir"
msgstr "Kullanıcı
A
dı
G
ir"