рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП RPM рдкреИрдХреЗрдЬ рдХрд╛ рдирд┐рд░реНрдорд╛рдг

рдпрджрд┐ рдЖрдк рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рд▓рд┐рдирдХреНрд╕ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рднреА рдЬрд╛рдирддреЗ рд╣реИрдВ, рддреЛ рдЬрд▓реНрджреА рдпрд╛ рдмрд╛рдж рдореЗрдВ рдЖрдкрдХреЛ рд╕реНрд░реЛрдд рдХреЛрдб рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рд╢рд╛рдпрдж рд╡рд╛рдВрдЫрд┐рдд рдХрд╛рд░реНрдпрдХреНрд░рдо рд╡рд┐рддрд░рдг рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдЗрди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдПрдХ рдкреБрд░рд╛рдирд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдирд╡реАрдирддрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдирд╛рдпрд╛ рд╣реЛ рдФрд░ рдЗрд╕реЗ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реЛрдВред


рдмреЗрд╢рдХ, рдЖрдк рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд╕рд╛рде рдЖрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдлрд┐рд░ рдЖрдкрдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ рдмрдирд╛рдирд╛ рдФрд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореИрдиреЗрдЬрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред


рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рд▓реЗрдЦ рдЖрдкрдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдП рдпрд╛ рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ (рдореИрдВрдбреНрд░рд┐рд╡рд╛, рд░реЗрдбрд╣реИрдЯ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдФрд░ рд╡рд┐рддрд░рдгред рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдореБрдЭреЗ рдмрддрд╛рдУ рдЬрд╣рд╛рдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЛред


рдпрд╣рд╛рдБ рдореИрдВ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ RPM рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рдКрдВрдЧрд╛ред рд╣рдо рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ xkb- рд╕реНрд╡рд┐рдЪ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдирд╛рдПрдВрдЧреЗред рд╣рдо рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб GitHub рд╕реЗ рд▓реЗрдВрдЧреЗред





рд▓реЗрдЦ рдХрдИ рдЫреЛрдЯреЗ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рдХреА рддрд╛рд▓рд┐рдХрд╛ рд╕реНрдкреЙрдЗрд▓рд░ рдХреЗ рдиреАрдЪреЗ рд╣реИ

рд╕рд╛рдордЧреНрд░реА рдХреА рддрд╛рд▓рд┐рдХрд╛






рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛


рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рд░реВрд╕реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдФрд░ рд╕рдорд░реНрдерд┐рдд рдПрдХ рд╡рд┐рддрд░рдг рд╣реИ ред рдпрд╣ рдореИрдирдбреНрд░рд┐рд╡ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рдеред рдореИрдВ рд░реЛрдЬрд╛ рдлреНрд░реЗрд╢ рдЖрд░ 8 рдХреЗ 32-рдмрд┐рдЯ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬреЛ 2014 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЕрдм R8 рд╕рдВрд╕реНрдХрд░рдг рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ (рдЗрд╕рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реИрдВ), рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реЗ рд▓реИрдкрдЯреЙрдк рдкрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ред


рд░реЛрдЬрд╛ рддрд╛рдЬрд╛ рдЖрд░ 8 рдХреЗрдбреАрдИ 4 рдбреЗрд╕реНрдХрдЯреЙрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╡рд┐рддрд░рдг рдкреИрдХреЗрдЬ рдХреЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдг рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП rpm рдФрд░ urpm рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдХрдорд╛рдВрдб rpm , urpmi , urpme , urpmq , urpmq ред


рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдкреИрдХреЗрдЬ рдирд┐рд░реНрдорд╛рдг рд╕рд┐рджреНрдзрд╛рдВрдд рдЖрдорддреМрд░ рдкрд░ рд╕рдорд╛рди рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдг рдкрд░рд┐рд╡рд╛рд░ рдХреЗ рднреАрддрд░ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдмрджрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЬреЛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рд╡рд╣ рд░реЛрдЬрд╛ рд╡рд┐рддрд░рдг рдХреЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред


рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдкреИрдХреЗрдЬ рдХреБрдЫ рдЕрдиреНрдп рдЖрд░рдкреАрдПрдо рдЖрдзрд╛рд░рд┐рдд рд╡рд┐рддрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд░рд▓ рд╣реИред рдХреБрдЫ рдмрд┐рдВрджреБ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред




Xkb- рд╕реНрд╡рд┐рдЪ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛


рдореБрдЭреЗ рд╡рд┐рдо рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд░ - xkbswitch рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╕рдВрдж рдЖрдпрд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИрдмреЗ рдкрд░ рдПрдХ рд▓реЗрдЦ рд╣реИ ред рдЬрдм рдЖрдк рдЗрдирдкреБрдЯ рдореЛрдб рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдкрд╛рда рдХреЛ рдкрд┐рдЫрд▓реА рдмрд╛рд░ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ - рдпрджрд┐ рдЖрдк рдЗрдирдкреБрдЯ рдореЛрдб рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХреАрдмреЛрд░реНрдб рд▓реЗрдЖрдЙрдЯ рдХреЛ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд▓рдЧрдЗрди рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ xkb- рд╕реНрд╡рд┐рдЪ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ рдХреАрдмреЛрд░реНрдб рд▓реЗрдЖрдЙрдЯ рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рд╡рд┐рдо рд╕рдВрдкрд╛рджрдХ рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрдиреНрд╕ рд╕реЗред рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдЖрд░ 8 рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдирд╣реАрдВ рдерд╛ (рдФрд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рднреА рдЗрд╕реЗ рдирд╣реАрдВ рдЬреЛрдбрд╝реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рддрд░рдг рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреБрд░рд╛рдирд╛ рд╣реИ, рдФрд░ рдПрдХреНрд╕рдмреАрдПрдХреНрд╕-рд╕реНрд╡рд┐рдЪ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реИ)ред




рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛, рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдирд╛


рдЕрдХреНрд╕рд░ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╡рд┐рддрд░рдг рдореЗрдВ рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рдВрдХрд▓рди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдпрд╛ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрд╛ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдХреЙрдкреА рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рдЬрд╛рдВрдЪ рд▓реЗрдВ рдХрд┐ рд╕рдВрдХрд▓рд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред


рдпрджрд┐ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рдореВрд▓ рд╕реНрд░реЛрдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рддреБрд░рдВрдд рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЛ рд╕рдВрдХрд▓рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдорддреМрд░ рдкрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрд░реЛрдд рдлрд╝реЛрд▓реНрдбрд░ (рддрдерд╛рдХрдерд┐рдд рдореЗрдХрдлрд╛рдЗрд▓ ) рдореЗрдВ рдмрджрд▓рдирд╛ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИ, рдлрд┐рд░ рд╕рдВрдХрд▓рди рдХрдорд╛рдВрдб рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдФрд░ рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдЖрдВрддрд░рд┐рдХ рдореИрдХреНрд░реЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╕рд╛рде рд╕реМрджрд╛ рдХрд░рдирд╛ред




GitHub рдкрд░ рдЖрдкрдХреА рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд┐рдирд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛


рдпрджрд┐ рдЖрдк рд╕реНрд░реЛрдд рдХреЛрдб рдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рдВрдХрд▓рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рдкрд╛рд╕ GitHub рдкрд░ рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИ рдпрд╛ рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдмрд╕ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдЕрдирдЬрд╝рд┐рдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ (рдореИрдВ рд╕реА + + рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд▓рд┐рдП ~/Projects/cpp рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ):



 cd ~/Projects/cpp git clone https://github.com/ierton/xkb-switch.git 


рдпрд╣ ~/Projects/cpp/xkb-switch рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб рд╣реЛрдЧрд╛ред рдмреЗрд╢рдХ, git рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп git рдЖрдк рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕рд╛рде рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЕрдирдЬрд╝рд┐рдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ README.md рдлрд╝рд╛рдЗрд▓ рд╕реЗ, рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП cmake рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреЛ рд╕рдВрдХрд▓рди рд╕реЗрдЯрд┐рдВрдЧ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╡реЗ CMakeLists.txt рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИрдВред рдФрд░ рд╣рдо рдмрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХрд┐рди рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдореЗрдВ рдЙрд╕реА README.md рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред



 cd xkb-switch mkdir build && cd build cmake .. make ./xkb-switch #         ./xkb-switch -l #       ./xkb-switch -s ru #       (  ) 


рдЙрд╕рдХреЗ рдмрд╛рдж, рдмрджрд▓реЗ рд╣реБрдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ build рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдпрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдкреИрдХ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдЗрд╕ рддрд░рд╣ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ:



 cd ~/Projects/cpp/xkb-switch rm -rf ./build cd ~/Projects/cpp zip -r xkb-switch.zip xkb-switch 


рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП xkb-switch.zip рдлрд╝рд╛рдЗрд▓ xkb-switch.zip рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред




рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЖрдкрдХреЗ GitHub рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрдиреЗ рдХрд╛ рд╕рддреНрдпрд╛рдкрди


рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬреЛ рдХреЛрдИ рднреА рдЗрд╕ рдЕрдиреБрднрд╛рдЧ рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ, рд╡рд╣ рдХрдо рд╕реЗ рдХрдо рдЧрд┐рдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░рд┐рдЪрд┐рдд рд╣реИ рдФрд░ рдкрд╣рд▓реЗ рд╣реА рдЧрд┐рдЯрд╣рдм рдкрд░ рдПрдХ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рдЪреБрдХрд╛ рд╣реИ ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рдзрд┐ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмрд╛рдХреА рд▓реЗрдЦ рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдм рддрдХ рдХрд┐ рдЕрдиреНрдпрдерд╛ рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред


рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдЕрдкрдиреЗ GitHub рдореЗрдВ рдореВрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдХрд╛рдВрдЯрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЙрд╕рдХреЗ рдмрд╛рдж, рдкрд┐рдЫрд▓реА рдкрджреНрдзрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА (рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо alexandersolovyov рд╣реИ ):



 cd ~/Projects/cpp git clone https://github.com/alexandersolovyov/xkb-switch.git 


рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдирдИ рд╢рд╛рдЦрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдлрд┐рд░, рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред рдФрд░ рдкреБрд▓-рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓реЗрдЦрдХ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк CMakeLists.txt рдлрд╝рд╛рдЗрд▓ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ CMakeLists.txt рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдПрдХ рдирдИ рд╢рд╛рдЦрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:



 git branch cmake_corrections 


рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЬрд╛рдБрдЪ рдХреА рдЧрдИ рдФрд░ рд╢рд╛рдЦрд╛ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ ( git commit -am " " рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ), рдЖрдк рдЕрдкрдиреЗ GitHub рдореЗрдВ рдПрдХ рдирдИ рд╢рд╛рдЦрд╛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:



 git push origin cmake_corrections 


рдЙрд╕рдХреЗ рдмрд╛рдж, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдЖрдк рдПрдХ рдкреБрд▓-рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдЖрдк рдореВрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХрд╛ рд▓рд┐рдВрдХ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:



 git remote add ierton https://github.com/ierton/xkb-switch.git 


рдФрд░ рдлрд┐рд░ рдЕрдкрдиреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдореБрдЦреНрдп рд╢рд╛рдЦрд╛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдпрд╣ рдореВрд▓ рд╕реЗ рдореЗрд▓ рдЦрд╛рдП:



 git pull ierton master 


рдЖрд░рдкреАрдПрдо рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп рд╕рд╣реА рд╢рд╛рдЦрд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдкрддрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:



 Source0: https://github.com/-/-/archive/---.zip 


рд▓реЗрдХрд┐рди, рдЬреИрд╕рд╛ рдХрд┐ рд╕реНрдкрдмреНрдмреНрд▓ рдпреВрдЬрд░ рдиреЗ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рд╣реИ , рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдкреИрдЪ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдЪ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдФрд░ рдкреИрдХреЗрдЬ ( ~/rpmbuild/SOURCES/ ) рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╕реНрд░реЛрдд рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдлрд┐рд░ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╣рдо рдЗрд╕ рдкрд░ рдереЛрдбрд╝рд╛ рдмрд╛рдж рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдБ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ ред рдпрджрд┐ рдЖрдк рдкреИрдЪ рдмрдирд╛рдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕реНрдкреЙрдЗрд▓рд░ рдХреЗ рдиреАрдЪреЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред




рдЧрд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреИрдЪ рдХреИрд╕реЗ рдмрдирд╛рдПрдВ

рдкреИрдЪ рдмрдирд╛рдирд╛


рдкреИрдЪ , рд╡реЗ рдкреИрдЪ рд╣реИрдВ - рдпреЗ рдРрд╕реА рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рджрд░реНрдЬ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╡реЗ рд╕реНрдерд╛рдиреАрдп рдХреЛрдб рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рдмреАрдЪ рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП git pull рдФрд░ git push рдХрдорд╛рдВрдб рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдпрджрд┐ рдпрд╣ рд░рд┐рдореЛрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ "рдкреБрд▓" рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реИ, рдпрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдЗрддрд┐рд╣рд╛рд╕ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдРрд╕реЗ рд╣реИрдВ рдХрд┐ рдкреИрдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред



рдЖрдЗрдП рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рд╣рдореЗрдВ CMakeLists.txt рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреА CMakeLists.txt рд╣реИред рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдКрдкрд░ рдмрддрд╛рдП рдЕрдиреБрд╕рд╛рд░ рд╕рдм рдХреБрдЫ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рд╣рдорд╛рд░реЗ рдЧрд┐рдЯрд╣рдм рднрдВрдбрд╛рд░ рдореЗрдВ рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рдХреЛ рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдореБрдЦреНрдп рд╢рд╛рдЦрд╛ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЖрдкрдХреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ cmake_corrections рд╢рд╛рдЦрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдлрд┐рд░ рдЖрдкрдХреЛ рдЗрд╕ рд╢рд╛рдЦрд╛ рдореЗрдВ рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░реЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХрдорд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд┐рдЯ рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВред


рдЕрдм рдЖрдкрдХреЛ ~/rpmbuild/SOURCES рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкреИрдЪ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдпрджрд┐ рдЖрдк рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ SOURCES рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдкрде рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ (рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИрдВ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, ~/Projects/cpp/xkb-switch cmake_corrections ~/Projects/cpp/xkb-switch - рдФрд░ cmake_corrections рд╢рд╛рдЦрд╛ рдкрд░):


 git format-patch -o ~/rpmbuild/SOURCES origin/master 

git format-patch рдХрдорд╛рдВрдб рдкреНрд░рддреНрдпреЗрдХ рдХрдорд┐рдЯ рдХреЗ рд▓рд┐рдП рдПрдХ git format-patch рдлрд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИред рдЗрд╕ рд░реВрдк рдореЗрдВ, рдпрд╣ рдЕрдВрддрд┐рдо рддрд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рддрд┐рдмрджреНрдз рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдкреИрдЪ рдХреЛ рдЪрд╛рд▓реВ рдХрд░ рджреЗрдЧрд╛, рдФрд░ рд╡рд░реНрддрдорд╛рди рд╢рд╛рдЦрд╛ рдХреЗ рдЕрдВрддрд┐рдо рдкреНрд░рддрд┐рдмрджреНрдз рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдЧрд╛ред рдЖрдк рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдПрдХ рдкреНрд░рддрд┐рдмрджреНрдз рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рд╣реИрд╢ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, HEAD рдкреЙрдЗрдВрдЯрд░ рдпрд╛ рд╢рд╛рдЦрд╛ рдХреЗ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЬреЛ рдЕрдм рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рддрд┐рдмрджреНрдз рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ git log рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рдХрдорд┐рдЯреНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдПрдХ рд╢реБрд░реБрдЖрдд рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рд╢рд╛рдЦрд╛ рдореЗрдВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдХрдорд┐рдЯ рд╕реЗ рдкреИрдЪ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред


рдФрд░ рдЖрдк рдпрд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдпрд╛ рджреЗрдЦреЗрдВ) рдХрд┐ рд╣рдо рдХрд┐рддрдиреЗ рд╡рд╛рдкрд╕ рдЖрддреЗ рд╣реИрдВ, рд╣рдо рдореБрдЦреНрдп рд╢рд╛рдЦрд╛ рд╕реЗ рд╢рд╛рдЦрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд╛рдкрд╕ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдЪ рдмрдирд╛рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╣рдордиреЗ рджреЛ рдХрдорд┐рдЯ рдХрд┐рдП рд╣реИрдВ, рддреЛ рдХрдорд╛рдВрдб рд╣реЛрдЧреА:


 git format-patch -o ~/rpmbuild/SOURCES -2 

рдпрд╣рд╛рдВ -2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рд╛рдЧрдорди рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЧрдИ рд╣реИред рдЖрдк рдЗрд╕ рдЖрдВрдХрдбрд╝реЗ рдХреЗ рдмрдЬрд╛рдп рдЙрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдЖрдк рдХрдорд┐рдЯ рдХреА рд╕реАрдорд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдФрд░ рдЕрдВрддрд┐рдо рдХрдорд┐рдЯ рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рдмреАрдЪ рджреЛ рдмрд┐рдВрджреБ рд▓рдЧрд╛рдХрд░ рдкреИрдЪ рдмрдирд╛рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП:


 git format-patch -o ~/rpmbuild/SOURCES master..cmake_corrections 

рдкреНрд░рддреНрдпреЗрдХ рдкреИрдЪ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдПрдХ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рдФрд░ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдмрджрд▓рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ рддрд╛рдХрд┐ рдкреИрдЪ рдХрд╛ рд╡рд┐рд╡рд░рдг рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХреЗ рд╕рд╛рд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рддрд░рд╣:


 mv 0001-Return-memory-allocated-by-XkbRf-getNamesProp()-for-tmp.patch 001-Fix-memory-leak.patch 

рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рдЖрд▓реЗрдЦ рдореЗрдВ рдкреИрдЪ рдХреЗ рд▓рд┐рдП рдирд╛рдордХрд░рдг рд╕рдореНрдореЗрд▓рди рдкреНрд░рддреНрдпреЗрдХ рдкреИрдЪ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╡рд┐рд╡рд░рдг рд╕реЗ рдкрд╣рд▓реЗ package_name-version-rosa- рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рд╣реИ рдпрджрд┐ рдЖрдк рдИрдореЗрд▓ рджреНрд╡рд╛рд░рд╛ рдкреИрдЪ рднреЗрдЬрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред рд╣рдо рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдкреИрдХреЗрдЬ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдо рдпрд╛ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ ~/rpmbuild/SOURCES рд╕реЗ рдкрд╣рд▓реЗ рд╣рд░ рдмрд╛рд░ ~/rpmbuild/SOURCES рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдЦрд╛рд▓реА рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИред


рдЕрдм рдЕрдЧрд░ рдЖрдкрдХреЛ рдореВрд▓ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╢рд╛рдЦрд╛ ( рдорд╛рд╕реНрдЯрд░ ) рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЙрд╕рдХреЗ рдмрд╛рдж рдкрд░рд┐рд╡рд░реНрддрди рд╢рд╛рдЦрд╛ ( cmake_corrections ) рдХреЛ git rebase рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЖрдк рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ ред рдЙрд╕рдХреЗ рдмрд╛рдж, рдкреИрдЪ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред





рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП "рдХрд╛рд░реНрдпрд╕реНрдерд▓" рддреИрдпрд╛рд░ рдХрд░реЗрдВ


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕рднреА рдЕрд╕реЗрдВрдмрд▓реА rpmbuild рдХреЗ rpmbuild рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ rpmbuild рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реЛрддреА рд╣реИред рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдПрдВ рдФрд░ рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВ:



 mkdir -p ~/rpmbuild/SPECS && cd ~/rpmbuild/SPECS 


рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ: рд╢реЗрд╖ рдлрд╝реЛрд▓реНрдбрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрдирд╛рдП рдЬрд╛рдПрдВрдЧреЗред


рдПрдХ рдФрд░ рд╡рд┐рддрд░рдг рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рд╢рд╛рдпрдж рдЖрдкрдХреЛ рд╕рдВрдкреВрд░реНрдг рдлрд╝реЛрд▓реНрдбрд░ рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдЖрдк рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЕрдкрдиреЗ рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦреЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ Red Hat рдореЗрдВ рдРрд╕рд╛ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ ред


рдпрджрд┐ рдкреИрдХреЗрдЬ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ rpmbuild рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ рд╣рдЯрд╛ рдирд╣реАрдВ рджреА рдЬрд╛рддреА рд╣реИрдВ - рдПрдХ рд╕рдлрд▓ рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рдеред рд╣рдо рдХрдИ рдмрд╛рд░ рдкреИрдХреЗрдЬ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдЕрдВрддрд┐рдо рд╕рдордп рдХреЗ рдмрд╛рдж рдмрдЪреА рд╣реБрдИ рдлрд╛рдЗрд▓реЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░реЗрдЧреАред рдЗрд╕рд▓рд┐рдП, рдПрдХ рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ рдЬреЛ рдЙрдиреНрд╣реЗрдВ рдЬрд▓реНрджреА рд╕реЗ рд╣рдЯрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рдПрдХ Cleanup.sh рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ рдФрд░ рдЗрд╕реЗ ~/rpmbuild/SPECS ред рдпрд╣рд╛рдБ рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рд╣реИрдВ:



 !#/bin/sh rm -rf ~/rpmbuild/BUILD/* rm -rf ~/rpmbuild/BUILDROOT/* rm -rf ~/rpmbuild/RPMS/* rm -rf ~/rpmbuild/SRPMS/* 


рдмреЗрд╢рдХ, рдпрд╣ chmod u+x cleanup.sh рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрди рдЕрдзрд┐рдХрд╛рд░ рдЬреЛрдбрд╝рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред


рдпрджрд┐ рдЖрдк рд╕реНрдерд╛рдиреАрдп рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдореМрдЬреВрдж рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдПрдХ рдкреИрдХреЗрдЬ рдПрдХрддреНрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рдпрджрд┐ рдЖрдк GitHub рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдП рд╣реИрдВ, рдпрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗ рдПрдХ рдкреИрдХреЗрдЬ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИ - рддреЛ рдЖрдкрдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдкреИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ( рдЙрджрд╛ред .zip , .tar рдпрд╛ .tar.gz ) рдФрд░ рдЗрд╕реЗ SOURCES рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбрд╛рд▓реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рддрд░рд╣:



 cd ~/Projects/cpp/ zip -r xkb-switch.zip xkb-switch mkdir -p ~/rpmbuild/SOURCES cp xkb-switch.zip ~/rpmbuild/SOURCES/ 


рдпрджрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж рдЖрдк рджреВрд╕рд░рд╛ рдпрд╛ рд╕рдорд╛рди рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрд╕реНрдХрд░рдг рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ ~/rpmbuild/SOURCES рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдЕрдкрдиреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рд╡рд╣рд╛рдВ рдХреЙрдкреА рдХрд░реЗрдВ (рдпрджрд┐ рдЖрдк рдЗрд╕реЗ ~/rpmbuild/SOURCES рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ) рдФрд░ рдкреИрдЪ рдлрд╝рд╛рдЗрд▓реЗрдВ (рдпрджрд┐ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИрдВ)ред рдЕрдиреНрдпрдерд╛, рд╕рдВрдЧреНрд░рд╣ рдлрд╝рд╛рдЗрд▓ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ GitHub рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреА (рдХреНрдпреЛрдВ - рдмрд╛рдж рдореЗрдВ рджреЗрдЦреЗрдВ), рдФрд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рднреА рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ рдХрд┐ рдХреМрди рд╕реА рдкреИрдЪ рдлрд╝рд╛рдЗрд▓ рдХрд┐рд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рд╣реИред




рдЪрд▓реЛ рдПрдХ рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ


RPM рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХрд╛ рдЖрдзрд╛рд░ рддрдерд╛рдХрдерд┐рдд рд╕реНрдкреЗрдХ рдлрд╝рд╛рдЗрд▓ рд╣реИ ред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреИрдХреЗрдЬ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ rpmbuild рдкреНрд░реЛрдЧреНрд░рд╛рдо (рдпрд╛ рдмрд▓реНрдХрд┐ rpm ) рдХреЗ рдирд┐рд░реНрджреЗрд╢ рд╣реИрдВред


~/rpmbuild/SPECS/ рдореЗрдВ xkb-switch.spec рдлрд╝рд╛рдЗрд▓ ~/rpmbuild/SPECS/ ред рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд╕рд╛рде рд╣реИ рдЬреЛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реНрдкреЗрдХ рдлрд╛рдЗрд▓ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдПрдХреНрд╕рдПрдмреАрдПрдХреНрд╕-рд╕реНрд╡рд┐рдЪ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреГрд╖реНрда рдкрд░ cmake README рд╕реЗ, рдпрд╣ рдЬреНрдЮрд╛рдд рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ cmake рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо CMake рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдП рдЧрдП рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВрдЧреЗ рдФрд░ рдкреВрд░реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рд╣рдорд╛рд░реА рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдкреА рдХрд░реЗрдВрдЧреЗред рдмреЗрд╢рдХ, рд╣рдорд╛рд░реЗ рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдХреЛ рдареАрдХ рд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рд╣рдо рдХрд░реЗрдВрдЧреЗред




рдпреБрдХреНрддрд┐ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛


  • рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЖрдкрдХреЛ рдмреИрд╢-рд╢реИрд▓реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
  • рдЖрдк рд╕рдорд╛рди рд╕реНрддрдВрднреЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдкрдВрдХреНрддрд┐ рдХреЗ рдорд╛рдиреЛрдВ рдХреЗ рдмреАрдЪ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдПрдХ рдЯреИрдм рд╡рд░реНрдг (рд╕реНрддрдВрднреЛрдВ рдХреЛ рд╕рдорд╛рди рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЖрд╡рд╢реНрдпрдХ рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд▓реЗрдЦрди рджреГрдврд╝рддрд╛ рд╕реЗ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИред рдиреЛрдЯ: рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╕рднреА рдХреЛрдб рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ, рдХреЗрд╡рд▓ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рд╕реЗ рд╕рднреА рдкрд╛рдареЛрдВ рдХреЛ рдЕрдкрдиреА рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдкреА рди рдХрд░реЗрдВ, рдмрд▓реНрдХрд┐ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред
  • рд╡рд┐рдХрд▓реНрдк рдлрд╝реАрд▓реНрдб рдореЗрдВ рдПрдХ рдмреГрд╣рджрд╛рдиреНрддреНрд░ рдФрд░ рдЯреИрдм (рдпрд╛ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдЧрд▓реЗ рдорд╛рди рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╡рд┐рдХрд▓реНрдк рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИред рдХреНрд╖реЗрддреНрд░ рдХреЗ рдирд╛рдореЛрдВ рдХреЗ рдкрд╛рддреНрд░реЛрдВ рдХрд╛ рдорд╛рдорд▓рд╛ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
      Name: xkb-switch 

  • рдпрджрд┐ рд╢рдмреНрдж % рдкреНрд░рддреАрдХ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, %description ) рд╕реЗ рдкрд╣рд▓реЗ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХреАрд╡рд░реНрдб рд╣реИред рдпрд╣ рдПрдХ рдХрдорд╛рдВрдб, рдореИрдХреНрд░реЛ рдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЙрд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдлрд┐рд░ рдЗрд╕рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдРрд╕реЗ рдХреАрд╡рд░реНрдб рд╣реИрдВ рдЬреЛ рдХрдорд╛рдВрдб рдпрд╛ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдмреНрд▓реЙрдХ рдХреА рд╢реБрд░реБрдЖрдд рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВред рдлрд┐рд░, рдЗрд╕рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдкрд░ рдХрдорд╛рдВрдб рдпрд╛ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдЬреЛ рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХреА рдереАред рдЗрд╕ рддрд░рд╣ рдХреЗ рдмреНрд▓реЙрдХ рдХреЗ рдмрд╛рдж, рдПрдХ рдЦрд╛рд▓реА рд░реЗрдЦрд╛ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдХрд┐рд╕реА рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ %{_} рдлрд╝реЙрд░реНрдо %{_} рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдореВрд▓реНрдп рдХреЛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдЗрд╕реЗ рдПрдХ рд╡рд┐рдХрд▓реНрдк (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Name: xkb-switch ) рдпрд╛ рдЦреЛрдЬрд╢рдмреНрдж %define рд╢рдмреНрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ %define ред рдЗрди рд╕рднреА рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рдореИрдХреНрд░реЛ рднреА рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдиреАрдЪреЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред



рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рд╢реАрд░реНрд╖ рд▓реЗрдЦ


рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рд╣реЗрдбрд░ рд╣рдореЗрд╢рд╛ рдкрд╣рд▓реЗ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ рдЬреЛ рдореБрдЦреНрдп рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред рдЬрдм рдкреИрдХреЗрдЬ рддреИрдпрд╛рд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рд╡рд┐рд╡рд░рдг рджреЗрдЦрддреЗ рд╕рдордп рд▓рдЧрднрдЧ рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рдПрдЧреАред рдпрд╣рд╛рдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:



рд╕рд╛рд░рд╛рдВрд╢:
рдкреИрдХреЗрдЬ рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдгред рдореИрдВрдиреЗ README.md рд╕реНрд╡рд┐рдЪ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ README.md рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд┐рд╡рд░рдг рдХреА рдЬрд╛рд╕реВрд╕реА рдХреА: Query and change XKB layout state ред

рдирд╛рдо:
рдкреИрдХреЗрдЬ рдХрд╛ рдирд╛рдоред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ xkb-switch ред

рд╕рдВрд╕реНрдХрд░рдг:
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рд╕рдВрд╕реНрдХрд░рдгред рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ CMakeLists.txt рдлрд╝рд╛рдЗрд▓ рдХреЛ рджреЗрдЦрдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИред рдмреЗрд╢рдХ, рдЖрдкрдХреЛ рдЙрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╕реЗ рдлрд╝рд╛рдЗрд▓ рд▓реЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдПрдЧреАред рдпрджрд┐ рдЖрдк рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реАрдзреЗ рдЙрд╕рдХреЗ GitHub рдкреГрд╖реНрда рдкрд░ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ ред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рдВрд╕реНрдХрд░рдг MAJOR_VERSION , MINOR_VERSION рдФрд░ RELEASE_VERSION ред рдореИрдВрдиреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рдВрд╕реНрдХрд░рдг 1.6.0 рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рд░рд┐рд▓реАрдЬ:
рдкреИрдХреЗрдЬ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рд╣реАред рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕ рд╕рдордп рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рдПрдХ рдкреИрдХреЗрдЬ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ "1" рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рдиреЗ рдХрднреА рднреА рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдЗрдХрдЯреНрдард╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рдЖрджрд░реНрд╢ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрджрд┐ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдереА рдФрд░ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдЕрдВрдд рддрдХ рдкрд╣реБрдВрдЪ рдЧрдИ рдереА (рднрд▓реЗ рд╣реА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдереАрдВ), рддреЛ рдкреНрд░рддреНрдпреЗрдХ рдирдП рдкреНрд░рдпрд╛рд╕ рдХреЗ рдмрд╛рдж рдЖрдкрдХреЛ рдпрд╣ рд╕рдВрдЦреНрдпрд╛ 1 рд╕реЗ рдмрдврд╝рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рд╕рд╛рде рд╣реА рдкреБрд░рд╛рдиреЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдкреИрдХреЗрдЬреЛрдВ рдХреЛ rpmbuild/RPMS рдФрд░ rpmbuild/SRPMS : рдЕрдЧрд▓рд╛, рдПрдХ рдирдП рдмрд┐рд▓реНрдб рдирдВрдмрд░ рдХреЗ рд╕рд╛рде рдирдП рдкреИрдХреЗрдЬ рдмрдирд╛рдП рдЬрд╛рдПрдВрдЧреЗред рд╢рд╛рдпрдж рдпрд╣ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрджрд┐ рдЖрдк рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣рдо рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдХреЛ рд╕рд╛рдл рдХрд░реЗрдВрдЧреЗред рдпрджрд┐ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рдПрдХ рдкреИрдХреЗрдЬ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдг рдХреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЕрдиреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЙрд╕ рдкреИрдХреЗрдЬ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдирдВрдмрд░ 1 рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред

рд▓рд╛рдЗрд╕реЗрдВрд╕:
рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо рдЬрд┐рд╕рдХреЗ рддрд╣рдд рдХрд╛рд░реНрдпрдХреНрд░рдо рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдореБрдлреНрдд рд╡рд┐рддрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред README.md рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд▓рд╛рдЗрд╕реЗрдВрд╕ GNU GPLv3 рд╣реИ ред рдЗрд╕рд▓рд┐рдП рд╣рдо рд▓рд┐рдЦрддреЗ рд╣реИрдВ: GPLv3+ ред

рд╕рдореВрд╣:
рд╡рд╣ рд╕рдореВрд╣ рдпрд╛ рд╢реНрд░реЗрдгреА рдЬрд┐рд╕рдХрд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реЛрддрд╛ рд╣реИред рдЗрди рд╕рдореВрд╣реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдореЗрдиреВ рдФрд░ рд╡рд┐рдВрдбреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореИрдиреЗрдЬрд░ ("рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЬреЛрдбрд╝реЗрдВ рдпрд╛ рдирд┐рдХрд╛рд▓реЗрдВ") рдореЗрдВ рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдореВрд╣реЛрдВ рдХреА рд╕реВрдЪреА рдпрд╣рд╛рдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Development\X11 рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо X11 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдФрд░ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╡рд┐рдо рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдпреВрдЖрд░рдПрд▓:
рдЗрдВрдЯрд░рдиреЗрдЯ рдкрддрд╛ рдЬрд╣рд╛рдВ рдЖрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдореВрд▓ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдХреА рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦрддреЗ рд╕рдордп рдЗрд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдЖрдЗрдЯрдо рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВрдЧреЗ: https://github.com/ierton/xkb-switch

Source0:
рд╕реНрд░реЛрдд рдХреЛрдб, рдпрд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрддреЗ рд╡рд╛рд▓реА рд╕рдВрдЧреНрд░рд╣ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдЬрд╣рд╛рдВ рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдПрдХ рдкрддрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрд╣рд▓реЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рджреМрд░рд╛рди рдлрд╝рд╛рдЗрд▓ ~/rpmbuild/SOURCES/ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рдПрдЧреАред рдпрджрд┐ рдРрд╕реА рдлрд╝рд╛рдЗрд▓ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЗрд╕реЗ рдЕрдм рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЕрд░реНрдерд╛рдд, rpmbuild рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗрд╡рд▓ рдЗрд╕ URL рдХреЗ рдЕрдВрдд рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред рдЖрдк рдХреЗрд╡рд▓ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ ~/rpmbuild/SOURCES/ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ ~/rpmbuild/SOURCES/ ред GitHub рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЕрдкрдиреА рдкреНрд░рддрд┐ рдХрд╛ рдкрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдореИрдВрдиреЗ рдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ https://github.com/alexandersolovyov/xkb-switch/archive/master.zip ред рдЖрдк рдПрдХ рд╕реНрдкреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреА рдорджрдж рд╕реЗ рдХрдИ рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рд╕реЗ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдлрд┐рд░, рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рдж рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рдирд╛рдо рдкрд░, рд╕рдВрдЦреНрдпрд╛ Source1 рдЪрд╛рд╣рд┐рдП ( Source1 , Source2 , рдЖрджрд┐)ред RPM рдкреИрдХреЗрдЬ рдХреА рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦрддреЗ рд╕рдордп рдпреЗ рдлрд╝рд╛рдЗрд▓ рдкрддреЗ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред

Patch0:
рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдХрд╛рдо рдореЗрдВ рдЖ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЖрдк рдкреИрдЪ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрдкрдиреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВред Source0 рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рдЕрд▓рдЧ рд▓рд╛рдЗрди рдкрд░ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рд╡рд┐рдХрд▓реНрдк рдирд╛рдо рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╣рд░ рдмрд╛рд░ рдмрдврд╝рд╛рдирд╛ рд╣реЛрдЧрд╛ред рдкреИрдЪ рдлрд╝рд╛рдЗрд▓реЗрдВ ~/rpmbuild/SOURCES рдлрд╝реЛрд▓реНрдбрд░ (рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕реНрд░реЛрдд рд╕рдВрдЧреНрд░рд╣ рдХреЗ рдмрдЧрд▓ рдореЗрдВ) рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдЙрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкрде рдХреЗ рдмрд┐рдирд╛ рд▓рд┐рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣рд╛рдВ рд╕рднреА рдкреИрдЪ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ - рдХреЗрд╡рд▓ рд╡реЗ рдЬреЛ рдЖрдк рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

BuildRequires:
рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬред рдЯреЗрдореНрдкрд▓реЗрдЯ cmake ред CMakeLists.txt рдлрд╝рд╛рдЗрд▓ рдЗрдВрдЧрд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП CMake рдХрд╛ рдиреНрдпреВрдирддрдо рд╕рдВрд╕реНрдХрд░рдг 2.6 рд╕реЗ рдХрдо рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП cmake >= 2.6 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдЖрдк рдЕрдиреНрдп BuildRequires: рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдПрдХ рдЕрд▓рдЧ рд▓рд╛рдЗрди рдкрд░, рдЕрд▓рдЧ BuildRequires: рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ BuildRequires: рд╡рд┐рдХрд▓реНрдкред рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА README рдХреЛ CMakeLists.txt рдФрд░ CMakeLists.txt рдлрд╝рд╛рдЗрд▓ (рд╡рд┐рд╢реЗрд╖рдХрд░ FIND_PACKAGE , TARGET_LINK_LIBRARY , FIND_PROGRAM ) рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рджреЗрдЦ рдХрд░ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ CMakeLists.txt ред рдлрд┐рд░ рдЖрдкрдХреЛ рдХрдорд╛рдВрдб urpmq -a __ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╕рд╣реА рдкреИрдХреЗрдЬ рдирд╛рдо рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рдВрдХрд▓рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдлрд╝рд╛рдЗрд▓ ( CMakeLists.txt ) рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдХреБрд▓ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреА рд╣реИрдВред рд▓реЗрдХрд┐рди рдкреВрд░реА рд╕реВрдЪреА рдпрд╣рд╛рдБ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ:
 # CMake  2.6   BuildRequires: cmake >= 2.6 #  C/C++ BuildRequires: gcc #    libxkbfile BuildRequires: libxkbfile-devel #   X11   libxkbfile, #  libx11-devel   . #    man: BuildRequires: xz 


рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ: рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:
рдпреЗ рд╡рд┐рдХрд▓реНрдк рдирдореВрдиреЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рд╡реЗ рдХрд╛рдо рдореЗрдВ рдЖ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рд╕рдВрдХреБрд▓ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВредрд╡рд┐рдХрд▓реНрдк рдкреИрдХреЗрдЬ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдорд┐рдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛProvides рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ ред рдпрд╣ рднрд╛рд╖рд╛ рдлрд╝рд╛рдЗрд▓ рд╢реАрд░реНрд╖рдХ рдХреЗ рдирд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рд╕реА , рдпрд╛ рдЧрддрд┐рд╢реАрд▓ рд▓рд┐рдВрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдирд╛рдо, рдпрд╛ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рд╡рд┐рдХрд▓реНрдк RequiresрдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреИрдХреЗрдЬ рдХреА рдЕрдиреНрдп рдХреНрд╖рдорддрд╛рдУрдВ рдХреА рдХреМрди рд╕реА рдХреНрд╖рдорддрд╛ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ ( rpm, urpm, рдпрд╛ рдЕрдиреНрдп рдЬреЛ рдЕрдкрдиреА рд╡рд┐рддрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ), рдЬрдм рдЗрди рдХреА рдорд╛рдВрдЧ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдЕрд╡рд╕рд░реЛрдВ рдкреИрдХреЗрдЬ рдХреЗ рдирд╛рдо рдХреЗ рдмрдЬрд╛рдпред рдЗрд╕рд▓рд┐рдП, ProvidesрдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдЕрд╡рд╕рд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ , рдФрд░ Requires- рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдЕрд╡рд╕рд░реЛрдВ рдХреЗ рдХреМрди рд╕реЗ рд╕рдВрд╕реНрдХрд░рдг рдЙрдкрдпреБрдХреНрдд рд╣реИрдВред рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдХреЗрдд рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ >=,= , <= , . Requires , тАФ Provides , тАФ , BuildRequires: . Rosa Linux , .

AutoReq:, AutoProv:
, , rpm , , , ( AutoProv: no ) / ( AutoReq: no ).

%description
рдпрд╣ рдмреНрд▓реЙрдХ рд╣реЗрдбрд░ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рд╡рд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдкреВрд░рд╛ рд╡рд┐рд╡рд░рдг рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдореЗрдВ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред рдПрдХ рдЦрд╛рд▓реА рд▓рд╛рдЗрди рдХреЛ рдЙрд╕рдХреЗ рдмрд╛рдж рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд┐рд╡рд░рдг рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
 %description xkb-switch is a C++ program that allows to query and change the keyboard layout state for X11 Window System (XKB) via command line. It provides a command 'xkb-switch', and bindings for API of the Vim text editor via 'libxkbswitch.so'. It is mainly used by a plugin for Vim text editor, vim-xkbswitch. Originally ruby-based code written by J.Broomley. 




рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╢реБрд░реВ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ рд▓рд╛рдЗрдиреЗрдВ %filesрдФрд░ %find_langрдХреЗрд╡рд▓ рддрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ рдЬрдм рдЖрдк рдХрдИ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛ рджреЗрдВред


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд┐рднрд╛рдЬрди рд░реЗрдЦрд╛-рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдмрд╛рдж, рдХрдорд╛рдВрдб рдФрд░ рдореИрдХреНрд░реЛрдЬрд╝ рджреНрд╡рд╛рд░рд╛ рдкреАрдЫрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкреИрдХ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрди рд╕рднреА рдХрдорд╛рдВрдб рдХреЛ рд╡рд┐рд╢реЗрд╖ рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред




рд╕реНрд░реЛрдд рдХреА рддреИрдпрд╛рд░реА


рдкрд╣рд▓рд╛ рдПрдХ рдмреНрд▓реЙрдХ рд╣реИ %prepрдЬреЛ рд╕рдВрдХрд▓рди рдХреА рддреИрдпрд╛рд░реА рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдПрдХ рдореИрдХреНрд░реЛ рдХрдорд╛рдВрдб рд╣реИ %setupред рд╡рд╣ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рддрд╛ рд╣реИ рдЬреЛ рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ:



  • , SourceX: ( тАФ Source0: ). , .
  • ~/rpmbuild/SOURCES/ .
  • ~/rpmbuild/BUILD/ .
  • .


-q , .


, %prep :



 rpmbuild -bp ~/rpmbuild/SPECS/xkb-switch.spec 


rpmbuild . , rpm : rpmbuild , . ( root sudo ). rpmbuild , man rpmbuild . , , , тАФ , rpmbuild .


: xkb-switch-1.6.0: No such file or directory . , ~/rpmbuild/BUILD/xkb-switch-1.6.0 , .



 ls ~/rpmbuild/BUILD/ 


, xkb-switch-master . %setup -n . %prep - :



 %prep %setup -q -n xkb-switch-master 


~/rpmbuild/SPECS/cleanup.sh , BUILD , , %prep . , exit 0 . , .


, . %prep . , , :


 %apply_patches 

rpmbuild -bp xkb-switch.spec . тАФ .


Maximum RPM .


.





%build . README , cmake .. make , - . : , . , %build :



 ~/rpmbuild/SPECS/cleanup.sh rpmbuild -bc ~/rpmbuild/SPECS/xkb-switch.spec 


exit 0 : .


, . shell ( bash zsh, ). rpmbuild , . shell - тАФ . ( .)


- , , , %build shell .


, , . cmake , , , %cmake - , , . ( тАФ CMakeLists.txt ). , .




рд╕реНрдерд╛рдкрдирд╛


, . %install , , , ~/rpmbuild/BUILDROOT/__-buildroot/ .


__ , Name: -, ( Version: -), ( Release: -), , .


README , make install , build . - - %makeinstall_std -C build , . ( , ):



 ~/rpmbuild/SPECS/cleanup.sh rpmbuild -bi ~/rpmbuild/SPECS/xkb-switch.spec 


, RPM. - , .





, - . , ~/rpmbild/BUILDROOT/ . ( , , tree , - Linux.) , , .debug . , , : .


, , %files -. , , . .


%files -. , . Rosa Linux %prep ( - ). , , , , тАФ . - (, , ).


%files , RPM. , :



 %files %{_bindir}/%{name} %{_libdir}/libxkbswitch.so %{_libdir}/libxkbswitch.so.1 %{_libdir}/libxkbswitch.so.%{version} %{_mandir}/man1/%{name}.1.xz 


-. , , /usr/lib/rpm/macros . , %{_bindir} , %{_libdir} тАФ , %{_mandir} тАФ man. %{name} %{version} Name: Version: -.


:



 ~/rpmbuild/SPECS/cleanup.sh rpmbuild -ba ~/rpmbuild/SPECS/xkb-switch.spec 


тАж 2 1 . rpmlint , . , , Rpmlint Errors , :


`xkb-switch.i586: E: incoherent-version-in-name (Badness: 50) 1`
рддреНрд░реБрдЯрд┐: рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреИрдХреЗрдЬ рдирд╛рдо рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рд╕рд╣реА рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИред

`xkb-switch.i586: E: рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп-рдЗрди-рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреИрдХреЗрдЬ (рдЦрд╝рд░рд╛рдм: 1) / usr / bin / xkb-switch`
рддреНрд░реБрдЯрд┐: рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреИрдХреЗрдЬ рдореЗрдВ рдПрдХ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рд╣реЛрддреА рд╣реИред

`xkb-switch.i586: W: devel-file-in-non-devel-package / usr / lib / libxkbswitch.so`
рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдХрд┐ рдПрдХ рд╡рд┐рдХрд╛рд╕ рдкреИрдХреЗрдЬ рдлрд╝рд╛рдЗрд▓ ( -devel) рдПрдХ рдкреИрдХреЗрдЬ рдореЗрдВ рдорд┐рд▓реА рдереА рдЬреЛ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рдирд╣реАрдВ рдереАред



рдХреНрдпрд╛ рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИ? рдореБрдЭреЗ рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ред рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдкрд░ рдПрдХ рдХрд░реАрдм рд╕реЗ рджреЗрдЦреЛред




Rpmlint рдХреНрдпрд╛ рд╣реИ


Rosa Linux rpmbuild rpmlint , . rpmlint , , . , Rosa Linux ( , rpmlint ) .


, , . ~/rpmbuild/RPMS/_/ rpmlint -i __ .


, RPM - , , , , Rosa Linux, rpmlint -i __ .




RPM Rosa Linux


Rosa Linux 6 . , .


рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдкреИрдХреЗрдЬ
рдпрд╣ рдмрд╛рдЗрдирд░реА рд╣реИред рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓ рдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬреЛ рд╕реАрдзреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИред рдЗрди рдкреИрдХреЗрдЬреЛрдВ рдХреА рдлрд╛рдЗрд▓реЗрдВ рдЕрдХреНрд╕рд░ рдПрдХ рдлреЛрд▓реНрдбрд░ /bin/рдпрд╛ рдЗрдирд╕реНрдЯреЙрд▓ рд╣реЛрддреА рд╣реИрдВ /usr/binред рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд▓рд┐рдП - рд▓рд┐рдВрдХ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдкреИрдХреЗрдЬ рдХрд╛ рдирд╛рдо рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдРрд╕реЗ рдкреИрдХреЗрдЬ рдЕрдХреНрд╕рд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд░ рдирд┐рд░реНрднрд░ рд╣реЛрддреЗ рд╣реИрдВред

рд▓рд╛рдЗрдмреНрд░реЗрд░реА
рдХреЙрдиреНрдЯреЗрдХреНрдЯреНрд╕ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдореНрд╕ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдбрд╛рдпрдирд╛рдорд┐рдХрд▓реА рдХрдиреЗрдХреНрдЯреЗрдб ("рд╢реЗрдпрд░реНрдб", "рд╢реЗрдпрд░реНрдб") рд▓рд╛рдЗрдмреНрд░реЗрд░рд┐рдпреЛрдВ рдХреА рдлрд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЖрдорддреМрд░ рдкрд░ рдпрд╣ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдлрд╝рд╛рдЗрд▓ рд╣реА рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд▓рд┐рдВрдХ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓рд╛рдЗрдмреНрд░реЗрд░реА libxkbfileрд╕рдВрд╕реНрдХрд░рдг 1.0.2 рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдлрд╝рд╛рдЗрд▓ libxkbfile.so.1.0.2рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╣реЛрдЧрд╛,libxkbfile.so.1ред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреИрдХреЗрдЬ рдХрд╛ рдмрд╣реБрдд рдирд╛рдо, рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЗрд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдХреЗ рднрдВрдбрд╛рд░ рдореЗрдВ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ libред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ libxkbfileрд╕рд╣реА рдирд╛рдо рд╣реИ - libxkbfile1ред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЖрдорддреМрд░ рдкрд░ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рдХреЗрд╡рд▓ рдЕрд╕рдВрдЧрдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдмрджрд▓ рдЬрд╛рддреА рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рд╛рде рдХрдИ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ рдпрджрд┐ рдХреБрдЫ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреНрдп рдПрдХ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рдЙрди
рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЬреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рддреИрдпрд╛рд░ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╣реИрдВред рд╕рд░рд▓ рд╕реА / рд╕реА ++ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд▓рд┐рдП , рдпрд╣ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдирд╛рдо рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмрд┐рдирд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,)libxkbfile.so), рд╕рд╛рде рд╣реА рд╣реЗрдбрд░ рдлрд╛рдЗрд▓реЗрдВ (рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд╕рд╛рде .h)ред рдкреИрдХреЗрдЬ рдХрд╛ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ -devel, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: libxkbfile-develред рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рджреМрд░рд╛рди, рдпрд╣ рд╣рдореЗрд╢рд╛ рдЙрдкрдпреБрдХреНрдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреИрдХреЗрдЬ libxkbfile-develрдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ libxkbfile1ред

рд╕реЛрд░реНрд╕ рдХреЛрдб
рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдХреБрдЫ рдкреНрд░реЛрдЧреНрд░рд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рд╕реЛрд░реНрд╕ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИ - рдореВрд▓ рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдЙрдиреНрд╣реАрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ ред рдЗрди рдкреИрдХреЗрдЯреЛрдВ рдХреЗ рдирд╛рдо рдкрд░ рд╕рдорд╛рдкреНрдд -srcрдпрд╛ -source(рдЬреИрд╕реЗ, apache-source)ред rpmbuildрд╣рдореЗрд╢рд╛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЕрдВрджрд░ рдбрд╛рд▓рддрд╛ рд╣реИ ~/rpmbuild/SRPMS/ред

рдбрд┐рдмрдЧрд┐рдВрдЧ рд╕рд┐рдВрдмрд▓
рдпрд╣ рд╡рд╣ рдЬрд╛рдирдХрд╛рд░реА рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рд╕рдорд╛рдкреНрдд рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреИрдХреЗрдЬ rpmbuildрд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ , рдПрдХ рд╕рдорд╛рдкреНрддрд┐ рдЙрдирдХреЗ рдирд╛рдо рдХреЛ рд╕реМрдВрдкреА рдЬрд╛рддреА рд╣реИ -debuginfoред рдореБрдЭреЗ рд░реЛрдЬрд╛ рд▓рд┐рдирдХреНрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдРрд╕реЗ рдкреИрдХреЗрдЬ рдирд╣реАрдВ рдорд┐рд▓реЗред

рдкреНрд░рд▓реЗрдЦрди
рд░реЛрдЬрд╝рд╛ рд▓рд┐рдирдХреНрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди рдкреИрдХреЗрдЬ рд╣реИрдВред рдореИрдВ (рдЕрднреА рдХреЗ рд▓рд┐рдП) рдРрд╕реЗ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ред рдЙрдирдХреЗ рдирд╛рдо рдЖрдорддреМрд░ рдкрд░ рдореЗрдВ рдЦрддреНрдо рд╣реЛ docрдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: libx11-doc, java-1.7.0-openjdk-javadocред рд╡реИрд╕реЗ, рд▓рдЧрднрдЧ рд╕рднреА рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдХреА рд╢реИрд▓реА рдореЗрдВ рдмрдиреЗ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЦреЛрд▓рдирд╛, рдкрддреЗ рдкрд░ рдЬрд╛рдирд╛ file:///usr/share/doc/рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рдлрд╝реЛрд▓реНрдбрд░ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ ред




рд╣рдорд╛рд░рд╛ рдирддреАрдЬрд╛


рдЕрдм рд╕рдм рдХреБрдЫ рд╕рд╛рдл рд╣реЛ рдЧрдпрд╛ рд╣реИред



  • xkb-switch libxkbswitch.so , , , . , : xkb-switch.i586: W: devel-file-in-non-devel-package /usr/lib/libxkbswitch.so .
  • , /usr/lib/libxkbswitch.so.1 /usr/lib/libxkbswitch.so.1.6.0 . , . : xkb-switch.i586: E: executable-in-library-package (Badness: 1) /usr/bin/xkb-switch .
  • , (1). : xkb-switch.i586: E: incoherent-version-in-name (Badness: 50) 1 .


, rpmlint , . . xkb-switch , libxkbswitch.so.1.6.0 , Vim . xkb-switch , C C++ . RPM- .


-:



- xkb-switch
 Summary: Query and change XKB layout state Name: xkb-switch Version: 1.6.0 Release: 1 License: GPLv3+ Group: Development/X11 URL: https://github.com/ierton/xkb-switch Source0: https://github.com/alexandersolovyov/xkb-switch/archive/master.zip BuildRequires: cmake >= 2.6 BuildRequires: gcc BuildRequires: libxkbfile-devel BuildRequires: xz %description xkb-switch is a C++ program that allows to query and change the keyboard layout state for X11 Window System (XKB) via command line. It provides a command 'xkb-switch', and bindings for API of the Vim text editor via 'libxkbswitch.so'. It is mainly used by a plugin for Vim text editor, vim-xkbswitch. Originally ruby-based code written by J.Broomley. %files %{_bindir}/%{name} %{_libdir}/libxkbswitch.so %{_libdir}/libxkbswitch.so.1 %{_libdir}/libxkbswitch.so.%{version} %{_mandir}/man1/%{name}.1.xz #------------------------------------------------------------------ %prep %setup -q -n xkb-switch-master %build %cmake %make %install %makeinstall_std -C build 





тАФ , . , , xkb-switch 3 : , . :



  • /usr/bin/xkb-switch /usr/share/man/man1/xkb-switch.1.xz ,
  • тАФ /usr/lib/libxkbswitch.so.1 /usr/lib/libxkbswitch.so.1.6.0 ,
  • тАФ /usr/lib/libxkbswitch.so .


-. , ,
- Maximum RPM . - libxkbfile Rosa Linux .


.





тАФ - libxkbfile . - :



 %define major 1 %define libname %mklibname xkbswitch %{major} %define develname %mklibname -d xkbswitch 


%define . , ( ) тАФ , . , %{major} 1 , .


%mklibname ┬лlib┬╗, , тАФ ( ). %{libname} ┬лlib┬╗ + ┬лxkbswitch┬╗ + ( %{major}) = libxkbswitch1 тАФ .


-d %mklibname -devel . %{develname} libxkbswitch-devel тАФ .





Version:



 Version: %{major}.6.0 


, -.


- . . :


 Name: xkb-switch Version: %{major}.6.0 Release: 1 Summary: Query and change XKB layout state License: GPLv3+ Group: Development/X11 URL: https://github.com/alexandersolovyov/xkb-switch Source0: https://github.com/alexandersolovyov/xkb-switch/archive/master.zip BuildRequires: cmake >= 2.6 BuildRequires: gcc BuildRequires: libxkbfile-devel BuildRequires: xz %description xkb-switch is a C++ program that allows to query and change the keyboard layout state for X11 Window System (XKB) via command line. It provides a command 'xkb-switch', and bindings for API of the Vim text editor, a library 'libxkbswitch'. It is mainly used for some plugins for Vim text editor, such as vim-xkbswitch. Originally ruby-based code written by J.Broomley. 




- . - , - ( rpm ). %package . -. , -. Version , Summary , Group . Provides Requires , . Name : , %package .


. %description тАФ , %package .


Rosa Linux - %description -. libxkbswitch1 :


 %package -n %{libname} Version: %{version} Summary: A library for xkb-switch tool, provides API bindings for Vim text editor Group: Development/X11 %description -n %{libname} libxkbswitch library, required by xkb-switch tool. It provides bindings for API of the Vim text editor, which can be used via 'libxkbswitch.so.1'. 


-n %package %description , . - , xkb-switch-libxkbswitch1 . libxkbswitch1 . .


:


 %package -n %{develname} Version: %{version} Summary: Development library libxkbswitch, provides API bindings for Vim text editor Group: Development/X11 %description -n %{develname} Development files for libxkbswitch. Provides bindings for API of the Vim text editor via 'libxkbswitch.so'. 




, . %files .


, , %package , %description %files . , %description - . , , тАФ xkb-switch .


- Rosa Linux %files , %prep . :


 %files %{_bindir}/%{name} %{_mandir}/%{name}.1.xz %files -n %{libname} %{_libdir}/libxkbswitch.so.%{major} %{_libdir}/libxkbswitch.so.%{version} %files -n %{develname} %{_libdir}/libxkbswitch.so 


, :



  • xkb-switch ~/usr/bin/xkb-switch ~/usr/share/man/man1/xkb-switch.1 ,
  • libxkbswitch1 ~/usr/lib/libxkbswitch.so.1 ~/usr/lib/libxkbswitch.so.1.6.0 ,
  • libxkbswitch-devel ~/usr/lib/libxkbswitch.so .


cleanup.sh rpmbuild -ba ~/rpmbuild/SPECS/xkb-switch.spec . 3 :



 libxkbswitch1.i586: W: no-documentation libxkbswitch-devel.i586: W: no-documentation libxkbswitch-devel.i586: W: no-dependency-on libxkbswitch/libxkbswitch-libs/liblibxkbswitch 


, . , . . рдЖрдЗрдП рдЗрд╕реЗ рдЬрд╛рдирдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред





, , , README.md . %files тАФ %doc :



 %doc README.md 


. %doc тАФ . ~/rpmbuild/BUILD/xkb-switdh-master/README.md .


: libxkbswitch-devel.i586: W: no-dependency-on libxkbswitch/libxkbswitch-libs/liblibxkbswitch . , libxkbswitch-devel libxkbswitch .


rpm -qp -- . :


 [user@pc ~] $ cd ~/rpmbuild/RPMS/i586/ [user@pc ~/rpmbuild/RPMS/i586] $ ls libxkbswitch1-1.6.0-1-rosa2014.1.i586.rpm xkb-switch-1.6.0-1-rosa2014.1.i586.rpm libxkbswitch-devel-1.6.0-1-rosa2014.1.i586.rpm xkb-switch-debuginfo-1.6.0-1-rosa2014.1.i586.rpm [user@pc ~/rpmbuild/RPMS/i586] $ rpm -qp --provides libxkbswitch1-1.6.0-1-rosa2014.1.i586.rpm libxkbswitch.so.1 libxkbswitch1 = 1.6.0-1:2014.1 [user@pc ~/rpmbuild/RPMS/i586] $ rpm -qp --provides libxkbswitch-devel-1.6.0-1-rosa2014.1.i586.rpm devel(libxkbswitch) libxkbswitch-devel = 1.6.0-1:2014.1 [user@pc ~/rpmbuild/RPMS/i586] $ rpm -qp --requires libxkbswitch-devel-1.6.0-1-rosa2014.1.i586.rpm devel(libX11) devel(libgcc_s) devel(libstdc++) devel(libxkbfile) rpmlib(PayloadIsXz) <= 5.2-1 [user@pc ~/rpmbuild/RPMS/i586] $ rpm -qp --requires xkb-switch-1.6.0-1-rosa2014.1.i586.rpm libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1.3) libgcc_s.so.1 libgcc_s.so.1(GCC_3.0) libstdc++.so.6 libstdc++.so.6(CXXABI_1.3) libstdc++.so.6(GLIBCXX_3.4) libstdc++.so.6(GLIBCXX_3.4.11) libstdc++.so.6(GLIBCXX_3.4.20) libstdc++.so.6(GLIBCXX_3.4.9) libxkbswitch.so.1 rpmlib(PayloadIsXz) <= 5.2-1 


, libxkbswitch1 libxkbswitch.so.1 libxkbswitch1 . xkb-switch libxkbswitch.so.1 , libxkbswitch-devel libxkbswitch1 . , %package libxkbswitch-devel . :



 %package -n %{develname} Version: %{version} Summary: Development library libxkbswitch, provides API bindings for Vim text editor Group: Development/X11 Requires: %{libname} >= %{version} 


, тАж . libxkbswitch-devel , , . , , rpmbuild .


-, ( README.md ), тАФ :



-
 %define major 1 %define libname %mklibname xkbswitch %{major} %define develname %mklibname -d xkbswitch # Main package. Automaticaly requires libxkbswitch and libxkbswitch-devel Name: xkb-switch Version: %{major}.6.0 Release: 1 Summary: Query and change XKB layout state License: GPLv3+ Group: Development/X11 URL: https://github.com/alexandersolovyov/xkb-switch Source0: https://github.com/alexandersolovyov/xkb-switch/archive/master.zip BuildRequires: cmake >= 2.6 BuildRequires: gcc BuildRequires: libxkbfile-devel BuildRequires: xz %description xkb-switch is a C++ program that allows to query and change the keyboard layout state for X11 Window System (XKB) via command line. It provides a command 'xkb-switch', and bindings for API of the Vim text editor, a library 'libxkbswitch'. It is mainly used for some plugins for Vim text editor, such as vim-xkbswitch. Originally ruby-based code written by J.Broomley. # libxkbswitch %package -n %{libname} Version: %{version} Summary: A library for xkb-switch tool, provides API bindings for Vim text editor Group: Development/X11 %description -n %{libname} libxkbswitch library, required by xkb-switch tool. It provides bindings for API of the Vim text editor, which can be used via 'libxkbswitch.so.1'. # libxkbswitch-devel %package -n %{develname} Version: %{version} Summary: Development library libxkbswitch, provides API bindings for Vim text editor Group: Development/X11 Requires: %{libname} >= %{version} %description -n %{develname} Development files for libxkbswitch. Provides bindings for API of the Vim text editor via 'libxkbswitch.so'. # xkb-switch %files %{_bindir}/%{name} %{_mandir}/man1/%{name}.1.xz # libxkbswitch1 %files -n %{libname} %{_libdir}/libxkbswitch.so.%{major} %{_libdir}/libxkbswitch.so.%{version} %doc README.md # libxkbswitch-devel %files -n %{develname} %{_libdir}/libxkbswitch.so %doc README.md #------------------------------------------------------------------ %prep %setup -q -n xkb-switch-master %build %cmake %make %install %makeinstall_std -C build 




рдирд┐рд╖реНрдХрд░реНрд╖


, RPM Rosa Linux ( ). , -. , тАФ , , rpmrc , ABF , тАФ .


тАФ , -, - , тАФ .








rpmbuild -bp specfile.spec
рд░рди рддреИрдпрд╛рд░реА (% рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХрд╛)ред

rpmbuild -bc specfile.spec
рднрд╛рдЧреЛ рд╕рдВрдХрд▓рди (% рдХрд╛ рдирд┐рд░реНрдорд╛рдг) рдФрд░ рд╕рднреА рдкрд┐рдЫрд▓реЗ рдХрд╛рд░реНрдпреЛрдВред

rpmbuild -bi specfile.spec
рдПрдХ рдЫрджреНрдо рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ (% рд╕реНрдерд╛рдкрд┐рдд) рдФрд░ рд╕рднреА рдкрд┐рдЫрд▓реЗ рдЪрд░рдгред

rpmbuild -ba specfile.spec
рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреИрдХреЗрдЬ рдмрдирд╛рдПрдБред




рддреИрдпрд╛рд░ рдкреИрдХреЗрдЬ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛


rpmlint -i package_file_name.rpm
рд╕рд╛рдорд╛рдиреНрдп рдЬрд╛рдВрдЪ - рдкреИрдХреЗрдЬ рдХрд┐рддрдиреА рдЕрдЪреНрдЫреА рддрд░рд╣ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред

rpm -qp --provides package_filename.rpm
рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдХрд┐ рдХреМрди рд╕реА "рд╕реБрд╡рд┐рдзрд╛рдПрдБ" рдкреИрдХреЗрдЬ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рд╣реИрдВред

rpm -qp --requires package_filename.rpm
рдЕрдиреНрдп рдкреИрдХреЗрдЬреЛрдВ рдХреА "рдХреНрд╖рдорддрд╛рдПрдВ" рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдпрд╣ рдкреИрдХреЗрдЬ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

rpm -qpl package_file_name.rpm
рдкреИрдХреЗрдЬ рдореЗрдВ рдирд┐рд╣рд┐рдд рдлрд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреАред

rpm -qpi package-file-name.rpm
рдкреИрдХреЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА (рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ "рд╣реЗрдбрд░" рдпрд╛ % рдкреИрдХреЗрдЬ рдмреНрд▓реЙрдХ рд╕реЗ )ред



, p . , Rosa Linux, . urpmq , rpm -q . , urpmq -l _ , urpmq --requires _ .




( )


  1. Building RPMs тАФ Quick Start тАФ RPM Rosa Linux.
  2. RPM тАФ , , . .
  3. RPM: spec тАФ - Rosa Linux.
  4. Maximum RPM тАФ rpm RPM- RedHat Linux. , Rosa Linux. .
  5. Template Spec Files тАФ .spec . , -.
  6. Automatic Build Farm (ABF) тАФ Rosa Linux. , , , .spec . -.
  7. Rpmlint Errors тАФ , rpmlint .
  8. Packaging Group тАФ Rosa Linux.
  9. Rosa Linux .
  10. Git тАФ тАФ Git .

Source: https://habr.com/ru/post/hi464993/


All Articles