LINUX.ORG.RU

Сообщения xaTa

 

Прикрутить форму к админ-панели

Форум — Development

Доброго времени суток! Прошу помощи прикрутить форму загрузки медиаконтента в админ-панели. Дано:

Модель контента

class MediaItem(models.Model):
    video = VideoField( upload_to = upload_to,
                        width_field = 'video_width', height_field = 'video_height',
                        rotation_field = 'video_rotation',
                        mimetype_field = 'video_mimetype',
                        duration_field = 'video_duration',
                        thumbnail_field = 'video_thumbnail')
    video_width = models.IntegerField(null = True, blank = True)
    video_height = models.IntegerField(null = True, blank = True)
    video_rotation = models.FloatField(null = True, blank = True)
    video_mimetype = models.CharField(max_length = 32, null = True, blank = True)
    video_duration = models.IntegerField(null = True, blank = True)
    video_thumbnail = models.ImageField(null = True, blank = True)
    video_mp4 = VideoSpecField(source = 'video', format = 'mp4')
    video_ogg = VideoSpecField(source = 'video', format = 'ogg')
    video_webm = VideoSpecField(source='video', format='webm')
 
    def __unicode__(self):
        return self.video.name
 
    def video_specs_generated(self):
        if self.video_mp4.generated() and self.video_ogg.generated():
            return True
 
        return False

Форма

from videokit.forms import VideoField
 
class MediaItemCreateForm(forms.Form):
    video = VideoField()

Представление

def item_create(request):
    template = 'app/item_create.html'
 
    item_create_form = MediaItemCreateForm()
 
    if request.method == 'POST':
        item_create_form = MediaItemCreateForm(request.POST, request.FILES)
 
        if item_create_form.is_valid():
            video = request.FILES.get('video', None)
 
            if video:
                media_item = MediaItem(video = video)
                media_item.save()
 
                media_item.video_webm.generate()
 
                return HttpResponseRedirect(reverse('list'))
 
    context = {
        'item_create_form' : item_create_form,
    }
 
    return render(request, template, context)

Ну и дефолтный класс в admin.py

class MediaItemAdmin(admin.ModelAdmin):
    pass
 
admin.site.register(MediaItem, MediaItemAdmin)

Вопрос заключается в следующем: что написать в дефолтном классе админки чтоб работала загрузка файла через админку а не с сайта.

 ,

xaTa
()

Настройка screenlock в kde plasma

Форум — Desktop

Добрый вечер ЛОР. Накатил генту с плазмой, заметил отсутствие в systemsettings настройки блокировки экрана (хочу сменить оформление). Вангую явно что то не доустановил. Подскажите какой пакет отвечает за этот пункт?

 , ,

xaTa
()

Локализация alpine lxc контейнера.

Форум — General

Доброго вермени суток ЛОР. Я только начал познавать alpine в контернерах. Вопрос в следующем: прикрутил локализацию от товарища @Athor.

В /etc/profile.d/locale.sh следующее:

export MUSL_LOCPATH="/usr/share/i18n/locales/musl"
export CHARSET=UTF-8
export LANG=ru_RU.UTF8
export LC_COLLATE=ru_RU

locale -a показывает только:

C
C.UTF-8

Что я делаю не так?

 ,

xaTa
()

Вопрос по display порту и докстанции

Форум — Talks

Привет ЛОР. Вопрос следующий: у меня имеется док-станция Lenovo ThinkPad 4337, и ноут thinkpad t430.

У ноута нет diplay порта у док-станции есть. Будет ли работать внешний монитор подключенный через display порт к достанции?

 

xaTa
()

Хост не видит lxc контейнеры

Форум — General

Добрый вечер ЛОР. Имеется машина с несколькими контейнерами, конфигурилось все через lxd.

Кинфигурация одного из контейнеров:

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Gentoo current amd64 (20201222_16:07)
  image.os: Gentoo
  image.release: current
  image.serial: "20201222_16:07"
  image.type: squashfs
  volatile.base_image: 2e50c6c71a2e86ab385f667655ed4e8918d460acdd1ac23ff8c0908f7db139ea
  volatile.eth0.host_name: veth68a1816d
  volatile.eth0.hwaddr: 00:16:3e:27:49:02
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.power: RUNNING
devices:
  eth0:
    ipv4.address: 192.168.10.1
    name: eth0
    nictype: bridged
    parent: lxdbr0
    type: nic
ephemeral: false
profiles:
- default
- hostfs
stateful: false
description: ""

Конфигурация бриджа:

config:
  ipv4.address: 198.168.10.14/28
  ipv4.nat: "true"
  ipv6.address: none
description: ""
name: lxdbr0
type: bridge
used_by:
- /1.0/instances/srv-mail
- /1.0/instances/srv-db
- /1.0/profiles/default
managed: true
status: Created
locations:
- none

Конфигурация дефолтного профиля:

config: {}
description: Default LXD profile
devices:
  eth0:
    name: eth0
    network: lxdbr0
    type: nic
  root:
    path: /
    pool: default
    type: disk
name: default
used_by:
- /1.0/instances/srv-mail
- /1.0/instances/srv-db

Форвардинг пакетов включен. Что я делаю не так?

 , ,

xaTa
()

Как systemd-boot загрузчику указать на другой загрузчик, если он лежит на другом диске.

Форум — General

Доброе утро ЛОР. Сабж.
Имею рабочую машину с 2 дисками. На первом стоит арч, на втором windows. Нужно показать systemd загрузчику где лежит виндовый загрузчик.

 , ,

xaTa
()

Поделитесь опытом удачной настройки systemd-boot, luks, plymouth

Форум — General

Привет ЛОР. Сабж. Имею arch с криптоконтейнером внутри которого lvm. Все работало до того как поменял загрузчик с grub на systemd-boot.
Сейчас плимут пропал и осталась текстовая консолька.

title Arch Linux
linux /vmlinuz-linux
initrd  /intel-ucode.img
initrd /initramfs-linux.img
options cryptdevice=UUID=f920e5fa-59b4-47b3-8fb3-f37e59d27db2:cryptlvm root=/dev/mapper/t430-root rw quiet spalsh

В loader.conf написал console-mode keep

В хуках ничего не менял.

HOOKS=(base udev plymouth autodetect modconf block plymouth-encrypt lvm2 filesystems keyboard fsck keymap)

 , ,

xaTa
()

Не могу соединить наушники по bluetooth с ноутом

Форум — General

Привет ЛОР. Сабж. При соеденинии в лог сыпется:

сен 24 10:12:51 t430 systemd[1]: Started Bluetooth service.
сен 24 10:12:51 t430 bluetoothd[452]: Starting SDP server
сен 24 10:12:51 t430 bluetoothd[452]: Bluetooth management interface 1.17 initialized
сен 24 10:12:58 t430 bluetoothd[452]: Endpoint registered: sender=:1.41 path=/MediaEndpoint/A2DPSink/sbc
сен 24 10:12:58 t430 bluetoothd[452]: Endpoint registered: sender=:1.41 path=/MediaEndpoint/A2DPSource/sbc
сен 24 10:14:00 t430 bluetoothd[452]: src/profile.c:ext_connect() Headset Voice gateway failed connect to 10:4F:A8:E2:F7:EF: Connection refused (111)
сен 24 10:14:00 t430 bluetoothd[452]: profiles/audio/avdtp.c:avdtp_connect_cb() connect to 10:4F:A8:E2:F7:EF: Connection refused (111)
сен 24 10:14:03 t430 bluetoothd[452]: profiles/audio/avdtp.c:avdtp_connect_cb() connect to 10:4F:A8:E2:F7:EF: Connection refused (111)

Модуль bluetooth загружен, pulseaudio-bluetooth установлен. Соединяюсь через KDE-шный bluez.

bluetooth             720896  43 btrtl,btintel,btbcm,bnep,btusb,rfcomm
ecdh_generic           16384  2 bluetooth
rfkill                 28672  10 bluetooth,thinkpad_acpi,cfg80211
crc16                  16384  2 bluetooth,ext4

 , , , ,

xaTa
()

@module-rebuild собирает модули для другой версии ядра

Форум — General

Привет ЛОР. Сабж.
Linux t430 4.19.141-gentoo #2 SMP Tue Sep 22 15:13:39
Загружено ядро 4.19.141 но @module-rebuild собирает модули для 4.19.113. Как сделать так чтоб модули собирались для загруженой версии ядра?

 ,

xaTa
()

Wireguard клиенты не видят друг друга

Форум — General

Добрый вечер ЛОР.

Сабж. Поднял wireguard сервер на роутере с openwrt, клиенты подключаются но не видят друг друга. Где я натупил? Подскажите.

 ,

xaTa
()

Пересборка модулей при обновлении ядра

Форум — General

Добрый день ЛОР.
Есть ли какой способ автоматизации пересборки модулей после обновления ядра в archlinux. Меня интерсуют такие как nvidia из aur, bbswich, thinkpad_acpi итд.

 

xaTa
()

sftp chroot не могу подключится

Форум — General

Здравствуй ЛОР.
Пытаюсь настроить sftp c chroot для разных пользователей. Настраивал по арчевому wiki (т.к sshd крутится на арче). Подключится не могу, бесконечный запрос пароля.

Что сейчас имею:

Путь к пользователю с правами /mnt/storage/media

drwxr-xr-x   3 root root  4096 авг  9 08:16 mnt
drwxr-xr-x 13 root root 4096 авг 10 09:20 storage
drwxr-xr-x  4 root  root   4096 авг 10 17:51 media

Дальше уже уже внутри домашнего каталога все с правами media:media

Ну и сообственно кусок конфига:

# override default of no subsystems
Subsystem       sftp    /usr/lib/ssh/sftp-server

Match User media
        X11Forwarding no
        AllowTcpForwarding no
        ChrootDirectory %h
        ForceCommand internal-sftp
        PasswordAuthentication yes

 ,

xaTa
()

Посоветуйте аудиоплеер который может в webdav

Форум — Talks

Добрый день ЛОР. Собственно разыскиваю плеер могущий в webdav для интеграции с nextcloud, желательно на qt.

 , , ,

xaTa
()

thinkpad t430 и классическая клавиатура.

Форум — Talks

Добрый день ЛОР. Хотел спросить есть ли у кого удачный опыт установки классической клавиатуры на данный девайс?

 ,

xaTa
()

Обьясните по циклу.

Форум — Development

Добрый день ЛОР.

Есть данные в БД которые я временно переместил в словарь.

a = {
  'username': 'user1', 'level': '1',
  'username': 'user2', 'level': '2',
  'username': 'user3', 'level': '3',
  'username': 'user4', 'level': '4',
  'username': 'user5', 'level': '5',
}

users = {
    a['username']: a['level']
}

b = {
  'rangname': 'Рядовой', 'ranglevel': '1',
  'rangname': 'Ефрейтор', 'ranglevel': '2',
  'rangname': 'мл.Сержант', 'ranglevel': '3',
  'rangname': 'ст.Сержант', 'ranglevel': '4',
  'rangname': 'Старшина', 'ranglevel': '5',
}

rangs = {
    b['rangname']: b['ranglevel']
}

print(users)
print(rangs)

Мне нужно что? Мне нужно брать данные из словаря users level, сравнивать его с данными словаря rangs ranglevel, если числа совпадают то выводить username и соответсвующий ему rangname.

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

 ,

xaTa
()

Посоветуйте расширение для chrome

Форум — General

Добрый день ЛОР! Перерыл весь магазин приложений, не могу найти mail checker для стороннего imap, все подвязаны под свои почтовые сервера. Подскажите расширение. Заранее благодарен.

 , ,

xaTa
()

Проверка на отсутствие флага

Форум — General

Добрый день ЛОР. Пытаюсь реализовать в ebuild условие на проверку отсутствия флага, но все безуспешно сыпет ошибками.

допустим проверка на присутствие выглядит так:

if use myflag; then
    Выполнение условия если флаг присутствует
fi

Как сделать обратное? Вставка знака сравнения != не прокатывает.

 , ,

xaTa
()

Ограничить дисковый кеш vivaldi

Форум — Desktop

Привет ЛОР. Как ограничить дисковый кеш vivaldi? –disk-cache-size не работает.

 ,

xaTa
()

Прикрутить «thermal monitor»

Форум — General

Добрый день ЛОР. Решил обзавестись виджетом(плазмоидом) для просмотра показаний с датчиков. Хочу смотреть температуру ядер процессора, но в настройках виджета нет источника температуры cpu. Во всех бинарных дистрах этот плазмоид работает корректно.
Что подправить в моей генте что бы оно завелось?
Скриншот тех source что есть на данный момент.

 , ,

xaTa
()

Почему firefox дублирует данные пользователя на свой сервер?

Форум — General

Ситуация следующая: есть свой sync сервер. Завожу на новый аккаунт firefox, цепляю его на свой сервер и забиваю данными(приложения, закладки, история).
Закрываю браузер, удаляю данные пользователя руками, открываю браузер, авторизуюсь и синхронизируюсь с мозиловским sync сервером. И что я вижу?
Я вижу все свои данные. Почему так происходит?

 , ,

xaTa
()

RSS подписка на новые темы