This is my preamble:
\documentclass[11pt, a4paper]{scrartcl}
\usepackage{iftex}
\ifXeTeX
\usepackage{xunicode} %Если не ошибаюсь, то этот пакет уже загружает fontspec
\usepackage{xltxtra} %особой роли не должен вроде как играть и в будущем скорее всего не будет нужен
\usepackage{polyglossia}
\setdefaultlanguage{polish}
\setmainfont{Liberation Serif}
\else
\usepackage[utf8]{inputenc}
\usepackage[MeX,T1, plmath]{polski}
\usepackage{datetime}
\fi
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{graphicx}
\usepackage[super]{cite}
\usepackage[hyperfootnotes=false]{hyperref}
\usepackage{siunitx} %Для использоваия едениц измерений СИ, пример смотреть в тексте
\sisetup{
output-decimal-marker = {,}, %sisetup нужен, что бы вместо точки можно было использовать запятую.
per-mode = symbol %Это что бы \per давала косую черту
} %Для перечисления настроек обязательно нужна запятая между ними
% \DeclareTextCommandDefault{\nobreakspace}{\leavevmode\nobreak\ }
With this preamble i get
Command \nobreakspace unavailable in encoding EU1
If i uncomment \DeclareTextCommandDefault{\nobreakspace}{\leavevmode\nobreak\ } i get
Undefined control sequence